有谁知道如何在opengl es 2.0中获取线和对象的交点(x,y,z)。我需要基本的算法或链接。我一直在寻找这个答案 2 天,但我不知道该怎么做。
问问题
506 次
1 回答
1
为了在嵌入式设备上更快地渲染,请避免使用对象的所有顶点。
最终你必须使用技巧:
1)检测碰撞时,根据您的方便方法开发来近似对象
2)用单点表示物体,检查是否
foreach(LINEPOINTS)
if (MVP * LINEPOINTS).x or .y or .z equals (MVP * objectCentre).x or .y or .z
3)使用单独的方式(你知道的任何其他语言,比如我使用 Perl)来寻找中心,就像
count = numofvertices
foreach vertices
sumx += x;
sumy += y;
sumz += z;
centreofmass = {sumx/count, sumy/count, sumz/count}
直接使用这个值作为 private float[] final objectCentre = centerofmass
4)当这可行时,使用更多的顶点(如边缘中心或形状的角),在其他语言中预先计算过,然后如前所述在java应用程序中使用,因为对象将具有大量顶点并且近似并不意味着它看起来不不错,看起来不错,但要花更多时间寻找适合您应用的方式
于 2012-08-05T16:50:16.023 回答