gpt4 book ai didi

textures - 如何将两个 SDL2 纹理混合为一个纹理?

转载 作者:行者123 更新时间:2023-12-02 19:35:42 27 4
gpt4 key购买 nike

SDL_RenderClear(g_ren);

SDL_Texture *tex_bk = SDL_CreateTextureFromSurface(g_ren, bk);

SDL_Texture *tex_des = SDL_CreateTextureFromSurface(g_ren, widget);
SDL_RenderCopy(g_ren, tex_bk, NULL, NULL);
SDL_SetTextureBlendMode(tex_des,blendMode);
SDL_SetRenderDrawBlendMode(g_ren,blendMode);

SDL_RenderCopy(g_ren, tex_des, NULL, NULL);

SDL_RenderPresent(g_ren);
SDL_DestroyTexture(tex_des);
SDL_DestroyTexture(tex_bk);

我想使用 SDL_RenderCopy 复制 tex_bk,第二次使用 SDL_RenderCopy 混合 tex_des 。但应用程序总是显示 tex_des 图像。tex_bk 图像总是消失。

最佳答案

您混淆了这些功能。

SDL_SetTextureBlendMode 更改对指定纹理应用 Alpha 混合的方式。

SDL_SetRenderDrawBlendMode 更改了渲染图元(如点、线和矩形)的 Alpha 混合的方式。

<小时/>

您正在寻找的函数可能是SDL_SetTextureAlphaMod

关于textures - 如何将两个 SDL2 纹理混合为一个纹理?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20836021/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com