我是新手,我想我錯過了一些東西。
有人可以檢查嗎?
HTML頁面:http://xalien95.altervista.org/pkmnxy_engine/alisopoli.html
模型和紋理:http://xalien95.altervista.org/pkmnxy_engine/alisopoli/
我可以看到模型(用怪異的顏色),而不是紋理(它與多種材料網狀)。
提前感謝!用JSONloader加載紋理
編輯: 我與所有的材料類型的嘗試:
- THREE.MeshBasicMaterial
- THREE.MeshDepthMaterial
- THREE.MeshLambertMaterial
- THREE.MeshNormalMaterial
- THREE.MeshPhongMaterial
但是沒有人工作,所以我認爲我錯過了一些東西(或者材料路徑不同)。 這裏的腳本:
var camera, scene, renderer, mesh, loader;
init();
animate();
function init() {
camera = new THREE.PerspectiveCamera(75, window.innerWidth/window.innerHeight, 1, 10000);
camera.position.z = 1000;
scene = new THREE.Scene();
loader = new THREE.JSONLoader();
loader.load("./alisopoli/alisopoli.js", function(geometry, materials) {
var faceMaterial = new THREE.MeshPhongMaterial(materials);
mesh = new THREE.Mesh(geometry, faceMaterial);
mesh.scale.set(100, 100, 100);
mesh.position.y = -150;
mesh.position.x = 0;
mesh.rotation.x = 60;
scene.add(mesh);
});
var ambientLight = new THREE.AmbientLight(0x555555);
scene.add(ambientLight);
//var directionalLight = new THREE.DirectionalLight(0xffffff);
//directionalLight.position.set(1, 1, 1).normalize();
//scene.add(directionalLight);
renderer = new THREE.WebGLRenderer();
renderer.setSize(window.innerWidth, window.innerHeight);
document.body.appendChild(renderer.domElement);
}
function animate() {
requestAnimationFrame(animate);
//mesh.rotation.y += 0.005;
renderer.render(scene, camera);
}
提前感謝!
'var faceMaterial = new THREE.MeshFaceMaterial(materials);'此外,出口商似乎已經分配了一個'lightMap'給每個材質。將它們設置爲'null'。如果你仍然有問題,從一個更簡單的項目開始,直到你得到它的工作。嘗試提出有助於他人的問題。 – WestLangley
@WestLangley謝謝!有用! 現在我遇到了THREE.DoubleSide和紋理的alpha通道問題。我試圖添加 'faceMaterial.side = THREE.DoubleSide;' 但它不起作用。 再次感謝你:) – xAlien95