# Galaxy simulation
![Release](https://img.shields.io/badge/Release-v4.0-blueviolet)
![Language](https://img.shields.io/badge/Language-C%2B%2B-0052cf)
![Libraries](https://img.shields.io/badge/Libraries-Dimension3D_OpenCL-00cf2c)
![Size](https://img.shields.io/badge/Size-204Mo-f12222)
![Open Source](https://badges.frapsoft.com/os/v2/open-source.svg?v=103)
<br/>
This repository contains the source code of an n-body type simulation using GPU acceleration. It is able to simulate galaxies, galaxy collisions and expanding universes. It has a menu to change the settings and an interactive camera.
<br/>
â ï¸ This repository contains **submodules**, add `--recurse-submodules` when cloning â ï¸
<br/>
<p align="center">
<img src="https://raw.githubusercontent.com/angeluriot/Galaxy_simulation/master/resources/misc/galaxy_1.png" width="700">
</p>
<br/>
# Summary
* **[Summary](#summary)**
* **[Video](#video)**
* **[Features](#features)**
* **[Install](#install)**
* [Skeleton project install](#skeleton-project-install)
* [Additionnal dependecies](#additionnal-dependecies)
* **[Releases](#releases)**
* **[Tests](#tests)**
* [A unique galaxy](#a-unique-galaxy)
* [Mixing 2 different types of stars](#mixing-2-different-types-of-stars)
* [Two galaxies colliding](#two-galaxies-colliding)
* [Universe simulations](#universe-simulations)
* **[Credits](#credits)**
<br/>
# Video
Here is a video explaining how the algorithm works : [<u>**Simuler 1 000 000 de Galaxies ð**</u>](https://www.youtube.com/watch?v=dFqjqRUWCus).
<br/>
# Features
* A menu to change the settings of the simulation
* A camera that you can control with your mouse and your wheel
* It can simulate a unique galaxy :
<p align="center">
<img src="https://raw.githubusercontent.com/angeluriot/Galaxy_simulation/master/resources/misc/galaxy_2.png" width="500">
</p>
* It can also simulate a collision between two galaxies :
<p align="center">
<img src="https://raw.githubusercontent.com/angeluriot/Galaxy_simulation/master/resources/misc/galaxy_3.png" width="500">
</p>
* And it can simulate an entire expanding universe :
<p align="center">
<img src="https://raw.githubusercontent.com/angeluriot/Galaxy_simulation/master/resources/misc/galaxy_4.png" width="500">
</p>
<br/>
# Install
### Skeleton project install
This repository is based on my [**Graphics skeleton project**](https://github.com/angeluriot/Graphics_skeleton), so go see its [**install**](https://github.com/angeluriot/Graphics_skeleton#install) part first.
### Additionnal dependecies
Then, you will also need the [**OpenCL**](https://www.khronos.org/opencl/) library.
<br/>
# Releases
If you just want to test the program without editing the source code, go see the [**Releases**](https://github.com/angeluriot/Galaxy_simulation/releases).
<br/>
# Tests
### A unique galaxy
<p align="center">
<img src="https://raw.githubusercontent.com/angeluriot/Galaxy_simulation/master/resources/misc/galaxy_5.png" width="500">
</p>
<p align="center">
<img src="https://raw.githubusercontent.com/angeluriot/Galaxy_simulation/master/resources/misc/galaxy_6.png" width="500">
</p>
<br/>
### Mixing 2 different types of stars
<p align="center">
<img src="https://raw.githubusercontent.com/angeluriot/Galaxy_simulation/master/resources/misc/galaxy_7.png" width="500">
</p>
<p align="center">
<img src="https://raw.githubusercontent.com/angeluriot/Galaxy_simulation/master/resources/misc/galaxy_8.png" width="500">
</p>
<p align="center">
<img src="https://raw.githubusercontent.com/angeluriot/Galaxy_simulation/master/resources/misc/galaxy_9.png" width="500">
</p>
<br/>
### Two galaxies colliding
<p align="center">
<img src="https://raw.githubusercontent.com/angeluriot/Galaxy_simulation/master/resources/misc/galaxy_10.png" width="500">
</p>
<p align="center">
<img src="https://raw.githubusercontent.com/angeluriot/Galaxy_simulation/master/resources/misc/galaxy_11.png" width="500">
</p>
<p align="center">
<img src="https://raw.githubusercontent.com/angeluriot/Galaxy_simulation/master/resources/misc/galaxy_12.png" width="500">
</p>
<br/>
### Universe simulations
<p align="center">
<img src="https://raw.githubusercontent.com/angeluriot/Galaxy_simulation/master/resources/misc/galaxy_14.png" width="500">
</p>
<p align="center">
<img src="https://raw.githubusercontent.com/angeluriot/Galaxy_simulation/master/resources/misc/galaxy_13.png" width="500">
</p>
<br/>
# Credits
* [**Angel Uriot**](https://github.com/angeluriot) : Creator of the project.
没有合适的资源?快使用搜索试试~ 我知道了~
使用GPU加速模拟星系、星系碰撞和膨胀宇宙的n体类型模拟。___下载.zip
共47个文件
png:15个
cpp:6个
hpp:6个
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
0 下载量 52 浏览量
2023-04-16
19:43:54
上传
评论
收藏 27.97MB ZIP 举报
温馨提示
使用GPU加速模拟星系、星系碰撞和膨胀宇宙的n体类型模拟。___下载.zip
资源推荐
资源详情
资源评论
收起资源包目录
使用GPU加速模拟星系、星系碰撞和膨胀宇宙的n体类型模拟。___下载.zip (47个子文件)
Galaxy_simulation-master
CMakeLists.txt 2KB
LICENSE.md 1KB
.gitattributes 30B
resources
misc
galaxy_6.png 2.51MB
galaxy_3.png 379KB
galaxy_14.png 2.22MB
galaxy_11.png 1.7MB
galaxy_1.png 1.67MB
galaxy_13.png 4.42MB
galaxy_7.png 1.94MB
galaxy_4.png 1.94MB
galaxy_10.png 956KB
galaxy_2.png 453KB
galaxy_5.png 1.97MB
galaxy_9.png 2.95MB
galaxy_8.png 1.83MB
galaxy_12.png 3.16MB
icons
icon.png 18KB
includes
Simulator.hpp 2KB
libraries.hpp 142B
Renderer.hpp 1KB
ComputeShader.hpp 3KB
Computer.hpp 2KB
Menu.hpp 2KB
unix_launch.sh 61B
libraries
CMakeLists.txt 2KB
GLEW
SFML
Dimension3D
GLM
ImGui
shaders
post.vert 181B
galaxy.frag 152B
galaxy.vert 227B
post.frag 882B
blur.frag 494B
blur.vert 423B
compute
cl_compute_shader.cl 2KB
sources
Simulator.cpp 3KB
Renderer.cpp 6KB
Menu.cpp 6KB
main.cpp 915B
Computer.cpp 4KB
ComputeShader.cpp 3KB
imgui.ini 567B
.gitmodules 503B
.gitignore 16B
vs64_launch.bat 69B
vs32_launch.bat 72B
mingw64_launch.bat 76B
README.md 4KB
mingw32_launch.bat 77B
共 47 条
- 1
资源评论
快撑死的鱼
- 粉丝: 1w+
- 资源: 9154
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功