Разумное использование метода drawTriangles()

Мар. 25, 2009 в 19:50

С выходом 10-ки нам обещали встроенную в плеер поддержку 3D. Однако почему-то не все разработчики 3D-движков кинулись менять свои самодельные классы типа Number3D на аналоги, предлагаемые самим плеером. Казалось бы, вот он, стандарт, используйте предложенные решения, не плодите функциональность, не делайте динамических движков с привязкой к конкретному 3D-движку (камень в огород jiglibflash). Но не тут-то было: Адоб умудрился сделать свои классы достаточно неудобными, чтобы они не стали использоваться по назначению. Vector3D, к слову, взял плохой пример с Point и на каждый чих типа add или crossProduct создает новый экземпляр объекта, что, как мы знаем, довольно накладно. Но я хочу обратить внимание на тот самый метод drawTriangles, на который возлагались основные надежды 3D-шников.

Далее…
Posted in 3D
by Diomas


Интересное сравнение 3D-движков

Ноя. 20, 2008 в 13:37

У flash-разработчика, решившего использовать в проекте 3D-визуализацию, сегодня не такой уж и большой выбор: хватит пальцев одной руки, чтобы сосчитать движки, достойные внимания. Тем не менее, человеку, впервые столкнувшемуся с такой задачей, будет довольно тяжело сделать выбор, ведь уже не один год в воздухе висит немой вопрос: «кто-же, мать его, наконец, лучше?» Ведь нигде до сих пор нет ни одного нормального сравнения!

забегая вперед, скажу, что нормального сравнения нет и сейчас :)

И вот вчера мне на глаза попалось сравнение 3D-движков, сделанное каким-то французом, /* «каким-то» потому, что ни имени ни ника я не нашел */ в котором он сравнивает производительность и потребление памяти в четырех известных 3D-движках под Flash: Alternativa3D, Away3D, Papervision3D и Sandy3D. Я ни черта не понимаю в французском и поэтому попытался разобраться с материалом при помощи гугло-перевода.

Читать результаты…
Posted in 3D
by Diomas


Отделяем тени от запеченных текстур

Июн. 10, 2008 в 17:05

Представьте себе, что перед вами стоит задача отобразить некоторую модель в разных вариантах оформления, то есть с разными материалами. При этом изображение должно содержать нормальные тени, ведь заказчик хочет "more photorealistic". За примером далеко ходить не надо: возьмем каталог мебели с различными вариантами отделки (под дуб, клен, вишню и прочие деревья).

Было бы неразумно запекать в текстуру каждый материал для каждой используемой модели. Почему бы не отделить текстуру затенения от собственно самой текстуры материала? Флэшеры, ковыряющиеся в 3D-движках, уже давно приметили, что phong-шэйдинг везде реализован как многослойный bitmap-материал: снизу кладется текстура материала, потом накладывается слой diffuse освщения и сверху добавляется слой с бликами, зависящими от значения параметра specular. Т.е. надо отделить текстуру материала от текстуры тени.

Возникает пара вопросов: каким образом накладывать затенение на текстуру материала и как, собственно, сделать эту отдельную текстуру затенения? Здесь можно пойти разными путями, но я предложу простой вариант, который использую сам.

Читать...

Posted in 3D
by Diomas


Запеченные текстуры

Июн. 10, 2008 в 01:32

Бывает так, что заказчик хочет от флэшера фотореалистичного и при этом не вешающего браузер 3D. Я постараюсь рассказать, каким образом с помощью запеченных текстур можно во многих случаях добиться удовлетворительного 3D изображения во flash.

Тема «мануального затенения» /* TODO: поставить копирайт :) */ получилась более объемной, чем я предполагал, поэтому буду излагать ее в двух постах. Сначала разберемся, что это за текстуры такие.

Читать...

Posted in 3D
by Diomas


Затенение по Фонгу в Away3D

Апр. 20, 2008 в 01:26

Вот и наступило время, когда в Away3D стало возможным использовать phong-шэйдинг. Поэтому я посчитал нужным поскорее поэкспериментировать с этой фичей.

Читать...

Posted in 3D
by Diomas