Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   Не сайты (http://www.flasher.ru/forum/forumdisplay.php?f=82)
-   -   3d: пирамида с Гуро-освещением (http://www.flasher.ru/forum/showthread.php?t=80935)

heilong 08.06.2006 17:09

3d: пирамида с Гуро-освещением
 
сообразил пирамидку с Гуро-освещением, но без текстуры, кое-где получаются глюки на стыках граней, как бороться пока не придумал... когда-то под DOS-ом были те же траблы
http://heilong.oceanography.ru/flash/tests/pyramid2.swf
можно крутить, нажав и двигая мышкой
немного ранее, куб с flat освещением и полупрозрачными гранями, с z-сортировкой вместо back face culling
http://heilong.oceanography.ru/flash/tests/cube3.swf

etc 08.06.2006 17:30

Забавно, только в первом примере я бы не назвал это освещением... Оно же фиксировано.
Только вот вопрос -- это всё зачем? На сайт не прикрутишь, кушать будет много...

heilong 08.06.2006 17:40

обычное диффузное освещение. вектор направления можно поменять в любую сторону, я для этого не сделал никаких кнопок просто. это скорее proof-of-concept чем демка )
на сайт точно не прикрутишь, но есть идея для игры (не с пирамидой, конечно). на моём ноуте (pentium m 1.7GHz, не так уж и много) справляется с 600 треугольниками (текстурирование+освещение) при fps=25. на земной шарик хватит и 300 (для игры как раз он мне нужен)

KUZEN 08.06.2006 18:06

Не удивил ...

heilong 08.06.2006 18:07

и не собирался. ясен пень, такие кубики с освещением по Фонгу на асме ещё 20 лет назад в реалтайме крутились )

heilong 08.06.2006 18:33

Исправил таки глюк с missing pixels... округляю экранные координаты. Видать флэш дробные может округлять в разные стороны, как ему удобнее, в зависимости от направления.

Плюс, по просьбам трудящихся, источник света теперь двигается по кругу.

motor4ik 08.06.2006 21:08

лучше расскажи алгоритм, а мы оценим, оптимизацию итд

motor4ik 08.06.2006 21:13

ясно нашел предыдущую тему..

etc 08.06.2006 21:39

Цитата:

Сообщение от heilong
Исправил таки глюк с missing pixels... округляю экранные координаты. Видать флэш дробные может округлять в разные стороны, как ему удобнее, в зависимости от направления.

Не исправил =)

heilong 09.06.2006 12:16

Выложил версию с кое-какой текстурой:
http://heilong.oceanography.ru/flash/tests/pyramid3.swf

Глюк не исправил (((. Вообще никак не удаётся. Рисую треугольник (0, 0), (255, 0), (0, 255) в клипе, потом его MovieClip.transform.matrix-ом натягиваю на нужные координаты. На стыках иногда, как я думал, пропадают пикселы (чёрный виден). Пробовал например каждый треугольник увеличивать на пиксел во все стороны, неточно зато нестыковки должны были пропасть - не пропали. В итоге выяснилось - это не пропадающие пикселы, это флэш периодически рисует "грязную" границу. Перепробовал кучу вариантов, ничего не помогает. Есть у кого идеи?


Часовой пояс GMT +4, время: 12:32.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.