0
VRML (WRL) 모델과 함께 Three.js를 사용하려고합니다. 내가 궁금한 점은 모델에 다양한 색상 (컬러)이로드되어 있다는 것입니다. 모델을 단색으로 원본 파일로로드하려면 어떻게해야합니까?Three.js - VRML 로더
내 예는 다음과 같습니다 http://dev.logicarts.com.br/semapro/projeto-3d/teste-1.html
코드 : 당신이 scene.add(event.content);
문에서이 코드를 추가하는 경우
<div id="info">
<a href="http://threejs.org" target="_blank">three.js</a> -
vrml format loader test -
<!--model from <a href="http://cs.iupui.edu/~aharris/webDesign/vrml/" target="_blank">VRML 2.0 Tutorial</a>,-->
</div>
<script src="js/three.min.js"></script>
<script src="js/OrbitControls.js"></script>
<script src="js/VRMLLoader.js"></script>
<script src="js/Detector.js"></script>
<script src="js/stats.min.js"></script>
<script>
if (! Detector.webgl) Detector.addGetWebGLMessage();
var container, stats;
var camera, controls, scene, renderer;
var cross;
init();
animate();
function init() {
camera = new THREE.PerspectiveCamera(60, window.innerWidth/window.innerHeight, 0.01, 1e10);
camera.position.z = 6;
controls = new THREE.OrbitControls(camera);
controls.rotateSpeed = 5.0;
controls.zoomSpeed = 5;
controls.noZoom = false;
controls.noPan = false;
scene = new THREE.Scene();
scene.add(camera);
// light
var dirLight = new THREE.DirectionalLight(0xffffff);
dirLight.position.set(200, 200, 1000).normalize();
camera.add(dirLight);
camera.add(dirLight.target);
var loader = new THREE.VRMLLoader();
loader.addEventListener('load', function (event) {
scene.add(event.content);
});
loader.load("3d/conjunto-carcaca.wrl");
// renderer
renderer = new THREE.WebGLRenderer({ antialias: false });
renderer.setSize(window.innerWidth, window.innerHeight);
container = document.createElement('div');
document.body.appendChild(container);
container.appendChild(renderer.domElement);
stats = new Stats();
stats.domElement.style.position = 'absolute';
stats.domElement.style.top = '0px';
container.appendChild(stats.domElement);
//
window.addEventListener('resize', onWindowResize, false);
}
function onWindowResize() {
camera.aspect = window.innerWidth/window.innerHeight;
camera.updateProjectionMatrix();
renderer.setSize(window.innerWidth, window.innerHeight);
controls.handleResize();
}
function animate() {
requestAnimationFrame(animate);
controls.update();
renderer.render(scene, camera);
stats.update();
}
</script>