Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
SDL_LockSurface的文档不是很清楚地表明,某些表面的像素格式可能会在其生命周期内发生变化,因此访问表面像素格式的正确方法是首先检查表面是否需要锁定SDL_MUSTLOCK,如果需要,锁定它使用SDL_LockSurface.
SDL_LockSurface
SDL_MUSTLOCK
但是,许多在线代码示例在没有执行任何检查的情况下访问该格式。
锁定表面是否真的需要访问像素格式?格式可以在表面寿命期间更改以需要锁定吗?
我正在使用 SDL 1.2 以防版本之间存在任何差异。
像素格式不太可能发生更改,如果发生更改,则不会在您访问它的过程中发生,因为格式驻留在客户端内存中(仅由您和 SDL 接触)。如果您仍然担心这种可能性,请始终使用 SDL_SWSURFACE 标志创建表面或在访问格式之前锁定表面。