Chipmunk/Pymumk 是否剔除了屏幕边界外的对象?
Does Chipmunk/Pymumk have culling of objects that are outside screen boundary?
我发现只有 under spatial hashing 会因碰撞而剔除。我指的是 3D 图形库执行的那种背面剔除,其中任何不需要可见的东西都不会呈现。
Chipmunk2D/Pymunk是否有任何规定不绘制不在屏幕边界内的对象,或者用户是否必须自己实施?
例如:
红色矩形是屏幕边界。所有蓝色对象都应该被绘制,因为它们在屏幕内。不应绘制绿色对象。
我希望 debug_draw()
有剔除功能。
ps: 顺便说一句,如果我不使用 debug_draw()
进行绘图,那么另一种绘图方式是什么?我没有看到 draw()
或 release_draw()
函数。那么用户是否必须编写代码来单独迭代所有对象并绘制它们?我猜这会很好用,因为这样用户就可以进行矩形相交测试并决定剔除哪些对象。 Perhaps debug_draw
可以重命名为 drawAll()
.
调试绘制方法主要用于调试和快速原型制作,因此剔除等更高级的功能不在其实现范围内。
如果您觉得自己受到调试绘图的限制,可能是时候过渡到您自己的绘图代码了,在那里您可以完全控制。自己模拟调试绘图应该很容易,一些示例代码执行自定义绘图。
我发现只有 under spatial hashing 会因碰撞而剔除。我指的是 3D 图形库执行的那种背面剔除,其中任何不需要可见的东西都不会呈现。
Chipmunk2D/Pymunk是否有任何规定不绘制不在屏幕边界内的对象,或者用户是否必须自己实施?
例如:
红色矩形是屏幕边界。所有蓝色对象都应该被绘制,因为它们在屏幕内。不应绘制绿色对象。
我希望 debug_draw()
有剔除功能。
ps: 顺便说一句,如果我不使用 debug_draw()
进行绘图,那么另一种绘图方式是什么?我没有看到 draw()
或 release_draw()
函数。那么用户是否必须编写代码来单独迭代所有对象并绘制它们?我猜这会很好用,因为这样用户就可以进行矩形相交测试并决定剔除哪些对象。 Perhaps debug_draw
可以重命名为 drawAll()
.
调试绘制方法主要用于调试和快速原型制作,因此剔除等更高级的功能不在其实现范围内。
如果您觉得自己受到调试绘图的限制,可能是时候过渡到您自己的绘图代码了,在那里您可以完全控制。自己模拟调试绘图应该很容易,一些示例代码执行自定义绘图。