Компьютерная программа "Трёхмерная модель солнечной системы"
Автор: Юзепчук Алекей, областной
Дворец пионеров и школьников им. Н. К. Крупской
Научный руководитель: Шиншинов Дмитрий Владимирович
Г. Челябинск
Введение.
Вашему вниманию предоставляется новейшая программа <Трехмерная модель солнечной системы>, в которой вы сможете перемещаться по виртуальной солнечной системе или найти достаточное количество материала про любые небесные тела, такие как планеты, их спутники, метеориты, кометы и т.д.
При разработке программы были использованы новейшие технологии в области трехмерной графики, что позволило мне создать столь красивый и сложный проект. Мне представляется полезность такого проекта, т.к. он может быть использован как наглядное пособие в учебных заведениях при изучении астрономии, так и для студентов при написании рефератов, курсовых работ, так и астрономов для расчета многих астрономических явлений, расчета положения планет в заданное время и т.д.
Описание программы.
«Трехмерная модель солнечной системы» - программа, разработанная в среде визуального программирования Delphi 5.0, с использованием технологии OpenGL. Можно сказать, что эта программа уникальная в своем роде, т.е. аналогов ей в мире не так уж много. Давайте разберёмся, что же она из себя представляет. Программа написана на английском языке, т.к. создавалась для распространения в интернете и других мировых сетях.
Рассмотрим главное меню программы, в нем содержатся пять подменю:
1. FLY - режим полёта по солнечной системе, в котором вы без труда сможете перемещаться по виртуальной солнечной системе, используя следующие клавиши управления:
Клавиши курсора: поворот камеры.
A - лететь вперед.
Z - лететь назад.
1-9 перемещение к планете (Меркурий - Плутон).
Пробел - Переход камеры в нормальный режим.
ESCAPE - главное меню программы.
Заметим, что планеты и их спутники располагаются в тех позициях, в которых бы располагались реальные планеты в заданное время.
2. MoveTo - раздел, с помощью которого можно переместиться к любому объекту солнечной системы.
Как вы видите, в нем предоставлен список планет. Если у планеты есть спутник или спутники, то в окошке с права вам будет предоставлен их список, при нажатии курсора ВПРАВО можно осуществить выбор спутника. После того как вы выбрали объект, нажмите клавишу ВВОД для перемещения к нужному вам небесному тело.
3. Controls - в этом меню вы сможете установить параметры рендеринга солнечной системы, изменить управление и узнать с помощью какого оборудования (аппаратного средства) происходит рендеринг.
4. Astronomy - в данном разделе располагается большое количество справочной информации о всех телах солнечной системы (новейшие сведения об объекте, его фотографии, видео ролики).
5. Scenarios - раздел для создания и просмотра <сценариев>. В этом разделе вы сможете просмотреть или сами создать как бы <сценарии>, например сценарий солнечного или лунного затмения, сценарий парада планет и т.д.
6. QUIT - выход из программы.
Трудности в разработке проекта.
Основная трудность, с которой я столкнулся, при написании этого проекта, заключалась в отсутствии литературы на русском языке о новейших разработках в области трехмерной графики, поэтому мне приходилось прочитывать литературу на английском языке, что, конечно же, затормаживало процесс работы.
И ещё одна наиболее важная проблема: многие компьютеры не обладают необходимыми системными ресурсами для обработки трехмерной графики, что затрудняла процесс тестирования программы на других компьютерах.
Перспективы развития.
В будущем я продолжу работу над этим проектом и планирую усовершенствовать его в следующих направлениях:
1. Увеличение количества небесных тел, таких как: астероиды, кометы, спутники планет.
2. Реальная атмосфера Земли в данное время.
3. Солнечные и лунные затмения.
4. Создание сценариев перемещения камеры.
5. Распечатка изображения.
6. Трассировка созвездий
7. Построение изображения небесной сферы из любой заданной точки любого небесного тела и отображение её в реальном времени.
На мой взгляд, этот проект имеет большое будущее в виде динамической библиотеки, которая будет полезна программистам профессионалам при написании ими программ на астрономические темы, или эту программу можно усовершенствовать до гигантской астрономической энциклопедии с обширными возможностями, которые будут полезны профессиональным астрономам или просто пользователям ПК.
Заключение.
В результате проделанной работы я познакомился с новейшими технологиями в области трехмерной графики (OpenGL, DirectX и т.д), узнал, как они работают, и что от них можно получить. И, конечно же, научился их использовать в своих программах.
Во-вторых, я изучил основы астрономии и небесной механики, узнал, как и по каким законам движутся планеты, их спутники, астероиды, кометы и другие тела Солнечной системы.
В-третьих, я приобрел огромный опыт в программировании на Delphi и C++, получил большое количество знаний, которые помогут мне в будущем.
Системные требования.
Минимальные: Pentium 100, 16mb ram, 2mb SVGA, OS: Windows(любая), скорость отображения 1 кадр в секунду.
Рабочие: Pentium 233, 32mb ram, видео акселератор, 8MB SVGA, OS: Windows, скорость отображения 30 кадр в секунду.
Тестирована:
1. Celeron 450, Riva ZX128 16 mb, 32 mb ram,
fps: 26. OS: Windows 98
2. Pentium II 300, Riva TNT2 16mb, 128 ram,
fps 28. OS: Windows ME
3. Pentium III 500, Asus V3800 32 mb, 128
ram, fps 35.OS: Windows NT 4.0
Список используемой литературы.
1. Энциклопедия по Астрономии (Аванта+).
2. Очерки о вселенной (автор Б. А. Воронцов; издательство <Наука>).
3. Учебник за 11 класс по Астрономии (автор Б. А. Воронцов; издательство <Просвещение>).
4. Советский энциклопедический словарь (автор А.М. Прохаров; издательство <Советская энциклопедия>, Москва 1987год)
5. Язык C++ (автор В.В. Подбельский; издательство <Финансы и статистика>)
6. Программирование на C++ (автор Нейл Дейл, Чип Уимз, Марк Хедингтон; издательство <ДМК>)
7. Среда визуального программирования Delphi 4.0 (автор П. Дарахвелидзе Е. Марков; издательство <BHV>)
8. Программирование в среде Delphi 2.0 (автор К. Сурков, Д. Сурков, А. Вальвачаев; издательство <ПОПУРРИ>)
9. Delphi 5.0 (автор В. Гофман; издательство <BHV>)
10. OpenGL. Графика в проектах Delphi (автор М. Краснов; издательство <BHV>)
Также при написании программы была использована информация со следующих интернет адресов:
11. http://nasa.gov/ - агентство аэрокосмических исследований.
12. http://nineplanets.com/ - интернет энциклопедия о Солнечной системе.
13. http://torry.ru -сайт, посвященный программированию на Delphi
14. http://delphi.vitpv.com - сайт, посвященный программированию на Delphi.
15. http://OpenGL.org - официальный сайт Silicon Graphics, использование технологии OpenGL в программировании.
16. http://NeHe.gamedev.com - использование новейших технологий трехмерной графики в программировании.
17. www.codemanual.com - разработка трехмерных приложений на Delphi.
18. http://romka.demonews.com/ - разработка трехмерных приложений на C++.


