我正在尝试渲染立方体来代表 AABB。为了做到这一点,我需要立方体的顶点和“单元格”或三角形。我的 AABB 结构看起来像[vec3Min, vec3Max]. 我能够使用以下方法获得立方体的 8 个顶点export function vertsFromAABB(aabb){ const min = aabb[0]; const max = aabb[1]; return [ // min Y axis verts min, [max[0],min[1],min[2]], [max[0],min[1],max[2]], [min[1],min[1],max[2]], // max Y axis verts max, [min[0],max[1],max[2]], [min[0],max[1],min[0]], [max[0],max[1],min[0]] ];}我现在需要从这组顶点中获取三角形索引。单元格应该是一组顶点索引,例如[[0,1,2],[1,2,3], ...]编辑更新我已经对评论中建议的最后 2 个 verts 进行了修复。我有一个看起来像的单元格的功能进行中export function cellsFromAABBVerts(aabbVerts){ return [ // Top quad triangles [0,1,2], [1,2,3], // Side? [2,3,4], [3,4,5], // Bottom quad triangles [4,5,6], [5,6,7], ];}
1 回答
莫回无
TA贡献1865条经验 获得超7个赞
如果你想象你的长方体,像这样:
那么导出三角形索引非常简单:
[
[ 0, 1, 2 ],
[ 0, 2, 3 ],
[ 6, 5, 4 ],
[ 6, 4, 7 ],
[ 1, 7, 4 ],
[ 1, 4, 2 ],
[ 0, 3, 5 ],
[ 0, 5, 6 ],
[ 0, 6, 7 ],
[ 0, 7, 1 ],
[ 2, 4, 5 ],
[ 2, 5, 3 ]
]
添加回答
举报
0/150
提交
取消