Записи c тегом «исходники»

Создание 3D Engine. Часть 3.

13 Октября, 2012
Эта часть будет более демонстрационная. В первых двух частях рассмотрели принципы создания сцен в этой покажем конечный результат работы. Будут выложен проект Town, исходные тексты проекта, текст дипломной работы.
3d_engine3d_engine
3d_engine3d_engine
Демонстрационное интерактивное трехмерное приложение, поддерживает :
  • отображение сцен с использованием алгоритма порталов;
  • поддержку трехмерных объектов в формате .3ds, которые могут содержать в себе анимацию;
  • использование как динамического, так и статического света;
  • спецэффекты, такие как прозрачность и хромовые покрытия;
  • проигрывание музыки в формате mp3;
  • звуковые  спецэффекты с использованием технологии A3D;
  • консоль для управления программой.
Рассмотрим проект Town.

Создание 3D Engine. Часть 2.

12 Октября, 2012

В этой части рассмотрим еще один алгоритм формирования 3Д сцен, так же выложу исходники первых версий движка, 2 написаны под DirectX, 3-я под OpenGL, правда в этих проектах не будет множества эффектов, которые написаны для последней версии, нет в версиях столкновения со сценами, но они проще в разборе, т.к. нет того объема кода что в последней версии. 

3d_engine pics
Выше скриншот из предка окончательного движка, просто отображение сцен при помощи техники секторов и порталов, нет музыки, эффектов, столкновения с предметами и стенами, управление мышкой и курсором вверх.
Приступим к разбору алгоритма:
Алгоритм секторов и порталов

Создание 3D Engine. Часть 1.

11 Октября, 2012

Разбирал у себя завалы на винчестере, и нашел работы, которые делал в университете, исследования которых потом попали в дипломную работу. Дипломная работа касалась 3Д движка для отображения техмерных сцен.

3d_engine3d_engine

В цикле статей я приведу несколько старых алгоритмов для отрисовки сцен, подходя к самому движку, будут выложены исходные тексты программ и версий движка, а так же сам текст дипломной работы. До теперешних 3Д сцен далеко конечно, но более 10 лет назад это было вполне приемлемо и конкурентно способно. Хватит отступлений и перейдем к делу.

Алгоритм определения видимых поверхностей  путём трассировки лучей.

Далее...