如何在p5.js中访问OBJ模型的顶点坐标?
在p5.js中访问并修改OBJ模型的独立顶点坐标
完全可行,关键是加载模型时要启用可编辑的顶点数据,以下是具体操作步骤:
正确加载OBJ模型
使用loadModel()时,第二个参数设为true,这样模型的顶点数据会以可编辑的形式存储:let myModel; function preload() { // 第二个参数为true,开启顶点可编辑模式 myModel = loadModel('your-model.obj', true); }访问并修改顶点坐标
模型的vertices数组包含所有顶点,每个元素是p5.Vector对象,直接访问其x、y、z属性即可读取或修改:function draw() { background(220); push(); translate(width/2, height/2); // 遍历所有顶点,修改坐标并打印 for (const vertex of myModel.vertices) { // 示例:让顶点沿Y轴缓慢移动 vertex.y += 0.05; // 控制台输出当前顶点坐标 console.log(`顶点坐标:x=${vertex.x}, y=${vertex.y}, z=${vertex.z}`); } model(myModel); pop(); }注意事项
- 如果加载时未设置第二个参数为
true,vertices会是只读状态,无法修改 - 复杂模型可能包含法线、面索引等额外数据,但顶点坐标始终存储在
vertices数组中 - 修改顶点后,直接调用
model()即可渲染更新后的模型
- 如果加载时未设置第二个参数为
内容的提问来源于stack exchange,提问作者Nishchal Bhat
相关产品推荐
相关产品推荐

