1
這怎麼會正常工作:Box2D的libgdx多邊形
Vector2[] vertexArray = new Vector2[3];
vertexArray[0] = new Vector2(0f, 0f);
vertexArray[1] = new Vector2(1f, 1f);
vertexArray[2] = new Vector2(2f, 5f);
polygonShape.set(vertexArray);
,這給出了一個運行時錯誤
Vector2[] vertexArray = new Vector2[3];
vertexArray[0] = new Vector2(0f, 0f);
vertexArray[1] = new Vector2(1f, 1f);
vertexArray[2] = new Vector2(2f, 2f);
polygonShape.set(vertexArray);
錯誤:
AL lib: (EE) alc_cleanup: 1 device not closed
Assertion failed!
Program: C:\Program Files\Java\jre1.8.0_25\bin\javaw.exe
File: /var/lib/jenkins/workspace/libgdx/extensions/gdx-box2d/gdx-box2d/jni/Box2D/Collision/Shapes/b2PolygonShape.cpp, Line 223
Expression: false
它沒有任何意義。第一個代碼工作正常,三角形繪製,但第二個代碼沒有。有人可以解釋我做錯了什麼...
此錯誤是在所有程序運行中發生,還是一次性異常? – dreamsComeTrue 2014-11-23 18:35:59
你已經使用過那個多邊形了嗎? – 2014-11-23 18:39:36
代碼工作的機率是50%,而我正在改變的唯一東西就是座標。例如,[(0,0),(1,1),(2,5)]確實有效,但[(0,0),(1,1),(2,3)]不會。 – user1176999 2014-11-23 23:56:26