Skip to content

Real-time animated simulation of a planet's explosion and debris physics using OpenGL

Notifications You must be signed in to change notification settings

kurillccc/PlanetExplosionSimulator

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

PlanetExplosionSimulator (OpenGL)

Анимированное графическое приложение, демонстрирующее взрыв планеты и физику разлета осколков с использованием OpenGL. Управляется в реальном времени клавишами, поддерживает освещение, тени, текстуры и движение объектов с различной динамикой.

✨ Функционал

  • Вращение планеты вокруг своей оси
  • Анимация столкновения метеора с планетой
  • Реалистичное разлетание осколков (каждый осколок имеет свой размер и массу, что влияет на скорость)
  • Клавиша f — выстрел метеоритом
  • Клавиша g — откат к начальному состоянию
  • Движение Луны по орбите
  • Поддержка текстур на объектах
  • Различные типы освещения (точечный и направленный)
  • Использование нескольких материалов (блеск, цвет, отражения)
  • Реализация теней

📝 Описание

Проект создан в рамках лабораторной работы по компьютерной графике. Основная цель — реализация визуального и физически достоверного процесса разрушения планеты при столкновении с метеором. Присутствует управление сценой в реальном времени, а также взаимодействие между объектами.

🤖 Стек

  • C++
  • OpenGL (GLUT, GLU)
  • stb_image (для загрузки текстур)

📸 Скрины

image image image image

⚡ Инструкция по запуску

На Windows

  1. Клонируй репозиторий: git clone https://github.com/Kurillccc/PlanetExplosionSimulator
  2. Добавь библиотеки в проект:
    • В свойствах проекта добавь папки, содержащие заголовочные файлы библиотек stb_image и glut, чтобы компилятор мог их найти:
      • Перейди в Properties проекта.
      • В разделе VC++ Directories добавь путь к папке с заголовочными файлами glut.h и stb_imahe.h (уже лежат в проекте /OpenGL/OpenGL) в Include Directories.
  3. Добавь библиотеки для линковки:
    • В разделе Linker -> Input добавь glut32.lib в Additional Dependencies

About

Real-time animated simulation of a planet's explosion and debris physics using OpenGL

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published