Canvas Texture

25 декабря 2015 19:08 #6093

Написали бы сразу как не получилось
как вы ответили так я сразу и стал пробовать, так сразу и написал или Вы имеете ввиду ночью то?) нее) я пока искал в чем проблема много нового узнал

Делов том, что в документации тоже написано
Глубокое копирование
При глубоком копировании новый объект будет обладать уникальными для него свойствами, а именно, он будет иметь свою собственную геометрию. То есть при изменении геометрии на объекте-оригинале у объекта-копии геометрия изменяться не будет. Для такого типа копирования на исходном объекте нужно дополнительно выставить опцию Rendering Properties > Force Dynamic Geometry.
Дорогу осилит идущий
27 декабря 2015 23:51 #6107
Еще интересная особенность.
мы выбираем по объекту и названию канвас текстуры get_canvas_ctx(obj, text_name). то есть казалось бы уникальность достигнута сочетанием obj + text_name
Если я загрузил объект и его скопировал то все работает ок.
Но если я создал в блендере другой объект, применил к нему тот же материал, то уникальсть текстуры уже не обеспечивается, на обоих объектах одна и та же текстура. надо создать отдельный материал.
Можно оно конечно и не надо или так оно и должно быть, но решил написать, вдруг кому пригодится
или может в документации указать что работает только при копировании объектов…
Дорогу осилит идущий
28 декабря 2015 10:52 #6116
казалось бы уникальность достигнута сочетанием obj + text_name

Соответствие "obj + text_name"->текстура - не взаимно-однозначное. С одной стороны, можно было бы выбирать только по имени текстуры - это бы подразумевало неуникальность. Но, с другой стороны, у скопированных объектов новые Canvas-текстуры имеют то же самое имя, поэтому приходится как-то ещё и объект указывать.

По-хорошему, надо бы при копировании Canvas-текстуре давать новое уникальное имя, но это только усложнит жизнь.
Команда Blend4Web
28 декабря 2015 11:13 #6117
Да, про скопированные все понятно, и все работает хорошо.
Не надо канвас-текстуре давать уникальное имя все и так хорошо

Я имею ввиду, что это не работает, если объект не скопирован, а загружен. Два разных объекта с одинаковыми текстурами будут отображать одну и ту же текстуру. Эта особенность может ввести в ступор того, кто начинает с этим сталкиваться и потому предложил уточнить в документации, что уникальность достигается только при копировании…

еще про
Force Dynamic Geometry.
- мне кажется в документации ошибка… при том, что ссылка с выделенного текста ведет на "Rendering Properties > Dynamic Geometry
Разрешить изменение геометрии объекта через API Blend4Web."
см. мой пост выше
Дорогу осилит идущий
28 декабря 2015 11:21 #6118

Эта особенность может ввести в ступор того, кто начинает с этим сталкиваться и потому предложил уточнить в документации, что уникальность достигается только при копировании

Да, спасибо, добавим уточнение.


Force Dynamic Geometry.
Уже заметили, исправим.
Команда Blend4Web
 
Пожалуйста, зарегистрируйтесь или войдите под своей учетной записью , чтобы оставлять сообщения.