Наложение каркаса на текстуры Collada - three.js - PullRequest
1 голос
/ 11 декабря 2011

Когда я использую модель Collada с текстурой .jpg, Three.js, кажется, перекрывает каркасную сетку поверх текстуры. У меня вопрос - есть ли способ убрать каркасы?

пример здесь; http://movealpha.com/dae/test1.html

и это тот же пример с удаленной текстурой Collada, чтобы показать базовый каркас; http://movealpha.com/dae/test2.html

Это проблема или есть простой способ убрать наложение каркаса?

пс. Спасибо mrDoob за действительно УДИВИТЕЛЬНУЮ библиотеку JavaScript - мы все вместе не достойны!

Ответы [ 2 ]

0 голосов
/ 12 октября 2015

Это сработало для меня, установив material.overdraw = 0,5 для всех (!) Детей в collada.scene. В моем случае в детях были дети.

var loader = new THREE.ColladaLoader();
loader.load( 'model.dae', function ( collada ) {
var dae = collada.scene;
for (var i=0; i<dae.children.length; i++) {
        for (var j=0; j<dae.children[i].children.length; j++) {
            dae.children[i].children[j].material.overdraw=0.5;
        }
    }
scene.add(dae);    
}
0 голосов
/ 13 декабря 2011

mrdoob ответил на github;https://github.com/mrdoob/three.js/issues/885

вот копия его ответа

Это ограничение CanvasRenderer.Установка material.overdraw = true может улучшить ситуацию.Вы можете найти объект, у которого есть материал, который вы хотите изменить, выполнив:

var object = collada.scene.getChildByName( 'object_name', true );
object.material.overdraw = true;
...