Three.js пример цилиндра продолжает рисовать тор

#three.js

#three.js

Вопрос:

Я пытаюсь получить базовую THREE.js пример для работы и изменения его с этого момента, но он просто продолжает выводить тор, независимо от того, что я изменяю.

Я скопировал точный код со страницы docs в JSFiddle и снова получаю torus.

Вот пример страницы документации: CylinderGeometry

И вот jsfiddle с тором:https://jsfiddle.net/ded9grxn /

Я попытался добавить код со страницы docs в пример следующим образом:

 var geometry = new THREE.CylinderGeometry( 5, 5, 20, 32 );
var material = new THREE.MeshPhongMaterial(
{
    color: 0x156289,
    emissive: 0x072534,
    side: THREE.DoubleSide,
    shading: THREE.FlatShading
});

mesh.add(
    new THREE.Mesh(
        geometry,
        material
    )
);
  

Но безрезультатно. Любая помощь приветствуется!

Комментарии:

1. Вместо этого следуйте этому примеру: threejs.org/docs/index.html#Manual/Introduction / …

Ответ №1:

Причина, по которой вы возитесь, не работает, заключается в том, что скрипт, который вы вызываете (https://threejs.org/docs/scenes/js/geometry.js ) просматривает хэш в URL окна, чтобы выбрать объект. Если вы перейдете к https://threejs.org/docs/scenes/geometry-browser.html#CylinderGeometry вы получаете цилиндр. Если вы перейдете к https://threejs.org/docs/scenes/geometry-browser.html вы получаете значение по умолчанию, которое является тором.

По причине, по которой ваша модификация не работает, нам нужна дополнительная информация о том, как вы выполнили модификацию (что вы удалили, куда добавили).


(Редактировать) в скрипте, после внесения изменений, не забудьте удалить строку

         var options = chooseFromHash( mesh );
  

здесь ваш скрипт вызывает функцию в geometry.js это установит сетку в соответствии с хэшем в URL