gpt4 book ai didi

c++ - 使用 SDL2 操作硬件纹理

转载 作者:行者123 更新时间:2023-11-30 01:36:50 24 4
gpt4 key购买 nike

为什么我必须使用 SDL_LockTexture 和 SDL_UnlockTexture 来使用 SDL2 操作硬件纹理?我知道“STATIC”纹理访问和“STREAMING”纹理访问之间的区别,但我想我很困惑,因为我似乎记得使用“SDL_SetTextureColorMod”来调整“STATIC”纹理的颜色。那么,为什么有时我们必须锁定像素而有时却不需要?

最佳答案

您必须锁定纹理才能修改其像素。 SDL_SetTextureColorMod 不执行此操作,它仅设置一种颜色,该颜色在纹理用于渲染时与像素的颜色相乘。

Why do I have to use SDL_LockTexture and SDL_UnlockTexture to manipulate hardware textures?

“硬件纹理”是指纹理的像素存储在 VRAM 中,在渲染时可以由 GPU 直接访问。您不能直接修改 VRAM 内存。 SDL_LockTexture 返回指向 CPU 可访问缓冲区的指针,而 SDL_UnlockTexture 将此(修改后的)缓冲区复制回 VRAM。

关于c++ - 使用 SDL2 操作硬件纹理,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51182926/

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