[英]How to texture animated js model exported from blender ? [Three.js]
[英]No texture when exporting a model from Blender to Three.js
我正在尝试使用Blender导出到Three.js插件,从Blender导出具有纹理的模型以用于Three.js。
http://i.imgur.com/enj1GQW.png
我的Javascript函数,用于初始化模型:
function init2(){
container = document.createElement( 'div' );
document.body.appendChild( container );
camera = new THREE.PerspectiveCamera( 45, window.innerWidth / window.innerHeight, 1, 2000 );
camera.position.z = 100;
scene = new THREE.Scene();
var ambient = new THREE.AmbientLight( 0x101010 );
scene.add( ambient );
var directionalLight = new THREE.DirectionalLight( 0xffeedd );
directionalLight.position.set( 0.5, 2, 1 ).normalize();
scene.add( directionalLight );
renderer = new THREE.WebGLRenderer();
renderer.setSize( window.innerWidth, window.innerHeight );
container.appendChild( renderer.domElement );
var loader = new THREE.JSONLoader();
loader.load( 'objects/fullBoard.js', function ( geometry, materials ) {
var material1 = materials[ 0 ]; //black
var material2 = materials[ 1 ]; //white
mesh = new THREE.Mesh( geometry, new THREE.MeshFaceMaterial( materials ) );
mesh.scale.set(5,5,5);
scene.add( mesh );
} );
document.addEventListener( 'mousemove', onDocumentMouseMove, false );
window.addEventListener( 'resize', onWindowResize, false );
}
我一直在努力寻找一种简单的方法来制作带有纹理的Three.js的自定义3D模型。 我还尝试使用THREE.ColladaLoader()导出.dae文件,并且该方法也没有产生纹理。
混合器过程纹理默认情况下不会导出。 但是,您可以将它们烘焙为常规纹理,然后导出。 网络上有教程。
我还建议您使用其他导出程序,例如二进制GLTF(.glb)
我曾经使用three.js导出器,但发现在three.js的修订版之间它相对过时了,如果使用现有格式(如gltf或collada),则与其他程序的互操作性更好。需要稍后进行更改,但丢失了原件。
GLTF还具有压缩网格的好处,这可以对Web交付的内容产生巨大的影响。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.