在Direct3D 9中,我正在尝试修改表面:
给定一个矩形,对于矩形边界内给定曲面中的每个像素,每个通道(R,G,B,A)将乘以某个(浮点)值,使其变暗或变亮
我该怎么做呢?我最好避免使用LockRect(特别是因为它似乎不适用于默认池)。
答案 0 :(得分:1)
如果您想直接更新Surfaces像素,可以使用“Device.UpdateTexture”。这会将在Pool.SystemMemory中创建的纹理更新为在Pool.Default中创建的纹理。
但这听起来并不像你想做的那样。使用效果硬件加速这一点。如果你想知道我怎么能告诉你。