Отправляет email-рассылки с помощью сервиса Sendsay

Web-Мастеринг - с нуля до профи

  Все выпуски  

нет.


Информационный Канал Subscribe.Ru


Познавательное программирование



Выпуск 8


Здравствуйте, Уважаемые подписчики!

Видеоигры действительно трудны для написания по своей природе и любой,
кто может их создавать, достиг великой цели.
- Андрэ Ла Мот.


Наши друзья:

rest.interesting.znakomstvonew - Рассылка "Как познакомиться?" - обсуждаются различные проблемы взаимоотношений, имеется клуб знакомств и дискуссии с психологом.




Новости проекта OXOTA 3. (#2)


По сравнению с первыми новостями Охоты 3 есть некоторые продвижения.
(Для вновь присоединившихся сообщаю, что это 3D-игра, которую я делаю на Delphi.)

LAND
Во-первых, я нашёл очень хорошую информацию по прогрессивному алгоритму оптимизации ландшафта ROAM.
Однако, все примеры были на C++ и рассчитаны уже на подкованных в ROAM-алгоритме программистов, потому разобраться оказалось очень сложно.
Я не стал надрываться и реализовал свой собственный алгоритм оптимизации ландшафта.
Гораздо более простой, и столкнулся я с проблемой, которая стояла также и перед разработчиками ROAM - это интерполяция(разница в высоте на границах разных по размерам полигонов, в результате которой образуются пробелы в ландшафте), решить которую можно "понижением" карты высот на дальнем расстоянии.
В целом, мой алгоритм выглядит очень корявым из-за того, что "мёртвые" точки ландшафта, которые он просто пропускал не учитывая, даже на весьма дальнем расстоянии от камеры обеспечивают "подёргивание" высот.
Однако я решил эту проблему весьма простым и элегантным способом - вообще отказался от какой-либо оптимизации, т.е. справился, можно сказать, великолепно. :)
Для такого решительного шага пришлось сильно увеличить размер квадратных полигонов, из которых состоит ландшафт - их видно "невооружённым" глазом.
Однако это несёт в себе очень хорошее последствие - карта высот растянулась на огромные пространства: чтобы прочесать ландшафт размером 512x512 вам придётся побродить не меньше получаса реального времени.
Конечно, отказ от оптимизации предполагает также и близкое "обрезание" ландшафта относительно камеры, однако этот неприятный эффект удалось частично избежать благодаря опять-таки увеличению размера квадрата.

PARTICLES
Во-вторых, был реализован нормальный, прозрачный дым. Главное - найти, где его можно использовать, кроме как дым из горячего ствола. :)

OBJ
В-третьих, был написан алгоритм загрузки объектов из файла. Пока без текстурирования.

TREE
В-чётвёртых, я сделал зачатки кода для отображения деревьев. Только вот дерево выглядит пока плохо - два полупрозрачных квадратных полигона перпендикулярно друг другу.

Есть ещё проблемы со связью между модулями. Я предпологал сделать модули, организованные по определённой иерархии, однако из-за их зависимости друг от друга большую часть основного кода всё-таки придётся занести в один связующий модуль MAIN.

Вот пока всё.

Любые предложения относительно игры выслушаю с удовольствием - пишите, мой e-mail ниже.

Все вопросы и пожелания ко мне, т.е. ведущему рассылки, прошу слать на e-mail: urisff@inbox.ru
Перепубликация допускается только с моего разрешения.
В случае, если вы будете использовать приведённые в этой рассылке коды, не забудьте сделать ссылку на мой сайт.

Удачи всем нам в новом году!


Ведущий рассылки:
Набатников Иван (urisff@inbox.ru)
http://newff.narod.ru/


http://subscribe.ru/
E-mail: ask@subscribe.ru
Отписаться
Убрать рекламу

В избранное