纹理框架对象
Texture Aframe Object
我正在加载波前格式的 Aframe 对象,但纹理仍然不可见,这意味着该对象显示为全黑:
<!doctype html>
<head>
<meta charset="utf-8">
<script src="https://aframe.io/releases/0.3.2/aframe.min.js"></script>
</head>
<body>
<a-scene>
<a-assets>
<a-asset-item id="test-obj" src="test.obj"></a-asset-item>
<a-asset-item id="test-mtl" src="test.mtl"></a-asset-item>
</a-assets>
<a-entity position="1.75 0 1.2" rotation="0 28 0">
<a-camera near="0.1" user-height="0"></a-camera>
</a-entity>
<a-obj-model src="#test-obj" mtl="#test-mtl" scale="0.1 0.1 0.1"></a-obj-model>
<a-plane position="0 0 -4" rotation="-90 0 0" width="4" height="4" color="#7BC8A4"></a-plane>
<a-sky color="#ECECEC"></a-sky>
</a-scene>
</body>
</html>
如何让这个模型的纹理可见?
如果对象是在 Magica Voxel 或类似的编辑器中创建的,那么这里有一个可能有效的解决方案。
在文本编辑器中打开您的 .mtl 文件,查找以 map_Kd
开头的行。紧随其后的是另一个文件的名称,例如 "test.png".
该文件还必须与您的 .mtl 和 .obj 文件位于同一目录中,因此请确保包含它。它是将颜色映射到对象位置的纹理贴图。
可在此处找到有关 Wavefront .mtl 文件格式的更多信息:
https://people.cs.clemson.edu/~dhouse/courses/405/docs/brief-mtl-file-format.html
我正在加载波前格式的 Aframe 对象,但纹理仍然不可见,这意味着该对象显示为全黑:
<!doctype html>
<head>
<meta charset="utf-8">
<script src="https://aframe.io/releases/0.3.2/aframe.min.js"></script>
</head>
<body>
<a-scene>
<a-assets>
<a-asset-item id="test-obj" src="test.obj"></a-asset-item>
<a-asset-item id="test-mtl" src="test.mtl"></a-asset-item>
</a-assets>
<a-entity position="1.75 0 1.2" rotation="0 28 0">
<a-camera near="0.1" user-height="0"></a-camera>
</a-entity>
<a-obj-model src="#test-obj" mtl="#test-mtl" scale="0.1 0.1 0.1"></a-obj-model>
<a-plane position="0 0 -4" rotation="-90 0 0" width="4" height="4" color="#7BC8A4"></a-plane>
<a-sky color="#ECECEC"></a-sky>
</a-scene>
</body>
</html>
如何让这个模型的纹理可见?
如果对象是在 Magica Voxel 或类似的编辑器中创建的,那么这里有一个可能有效的解决方案。
在文本编辑器中打开您的 .mtl 文件,查找以 map_Kd
开头的行。紧随其后的是另一个文件的名称,例如 "test.png".
该文件还必须与您的 .mtl 和 .obj 文件位于同一目录中,因此请确保包含它。它是将颜色映射到对象位置的纹理贴图。
可在此处找到有关 Wavefront .mtl 文件格式的更多信息: https://people.cs.clemson.edu/~dhouse/courses/405/docs/brief-mtl-file-format.html