我想通过从纹理中剪切透明区域来创建多边形。 我写了一个程序来检测2个对象之间的碰撞。 但是在碰撞之前检测到碰撞。 这就是它的外观:http://imgur.com/a/dFmXI
这是代码:https://hastebin.com/bebusadiku.java 我想切割纹理并根据切割纹理创建多边形,然后使用Intersector方法检测碰撞,但我不知道如何指定多边形的顶点。
我试图遵循这个但是没有解释如何检测顶点: https://gamedev.stackexchange.com/questions/114228/how-to-detect-collision-only-in-non-transparent-texture
感谢您的帮助
答案 0 :(得分:0)
我使用this polygonal shape editor创建更复杂的形状来检查碰撞。我相信Box2D它可以在“盒子”之外工作,但Box2D占用了大量空间,如果你不使用实际物理,这是不必要的。但是,此工具会生成JSON
格式化的多边形坐标,并且很难将其反序列化回Polygon个对象并与Intersector implementation进行冲突。所以在步骤中你:
Polygon
Intersector
进行更详细的碰撞检测。该工具会导出大量冗余数据,如果您熟悉它导出的格式,您可以删除除多边形/顶点数据之外的所有数据。