Настройка анимации птиц

Я пытаюсь создать сайт. Ссылка на сайт:

http://www.eclectika.org/test3

Я хочу птиц по следующей ссылке:

http://mrdoob.github.io/three.js/examples/canvas_geometry_birds.html

быть в моем фоне. Пожалуйста, кто-нибудь предложит мне путь. Я перепробовал много вещей. Все еще не могу понять это правильно.

Также, пожалуйста, предложите способ изменить цвет птиц.

2 ответа

Решение

Изучение Three.js демонстративно помогает.

Renderer Функция просто создает новый элемент DOM и рисует Scene в теме.

Таким образом, самый простой способ достичь своей цели - это установить z-index Свойство css любого другого элемента пользовательского интерфейса выше, чем этот DOM-элемент Three.js.

Это на самом деле, как Stats Element (тот, который показывает текущий FPS) помещается поверх элемента webGL.

Обновление 1:

Если вы посмотрите на DOM или на реализацию trijs WebGLRenderer, то обнаружите, что он создает элемент canvas, если не находит его. так что в вашем CSS вы можете установить свойство z-index этого элемента как отрицательное для достижения желаемого результата

Обновление 2: изменение цвета материала:

Вы можете инициализировать цвет в тройках как это.

var desiredColor= new THREE.Color( 0xff0000 );

или же

var desiredColor= new THREE.Color("rgb(255,0,0)");

официальная документация здесь

тогда вам просто нужно установить этот цвет в свойстве color материала, просто удалив следующие строки кода из render функция

color = bird.material.color;
color.r = color.g = color.b = ( 500 - bird.position.z ) / 1000;

и добавив эти строки вместо.

bird.material.color= desiredColor; // in this case it will change all bird's color to red

Его довольно легко изменить цвета на материал... В функции визуализации просто удалите нижеупомянутую строку... вы можете просматривать случайные цвета птиц..

color = bird.material.color;
color.r = color.g = color.b = ( 500 - bird.position.z ) / 1000;

Приведенная ниже строковая кодировка делает материал случайной окраской... {color:Math.random() *0xffffff} дает случайный цвет для всех птиц... просто измените его на цвет:0x000000... вы можете просмотреть цвет птицы в черном цвете....

bird = birds[ i ] = new THREE.Mesh( new Bird(), new THREE.MeshBasicMaterial( { color:Math.random() * 0xffffff, side: THREE.DoubleSide } ) );

это сделает свое дело...

Другие вопросы по тегам