Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/Hossein-Noroozpour/vulkust
An engine for Vulkan in Rust, tries to implement modern graphic features. (suspended for now)
https://github.com/Hossein-Noroozpour/vulkust
3d cross-platform engine game game-engine rust vulkan
Last synced: 3 months ago
JSON representation
An engine for Vulkan in Rust, tries to implement modern graphic features. (suspended for now)
- Host: GitHub
- URL: https://github.com/Hossein-Noroozpour/vulkust
- Owner: Hossein-Noroozpour
- Created: 2016-10-09T12:22:18.000Z (over 8 years ago)
- Default Branch: master
- Last Pushed: 2022-10-17T01:41:32.000Z (about 2 years ago)
- Last Synced: 2024-08-01T03:29:33.351Z (6 months ago)
- Topics: 3d, cross-platform, engine, game, game-engine, rust, vulkan
- Language: Rust
- Homepage:
- Size: 3.61 MB
- Stars: 63
- Watchers: 9
- Forks: 2
- Open Issues: 17
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
- awesome-rust-cn - Vulkust
- awesome-rust - Vulkust
- awesome-rust-zh - Vulkust - Vulkust - 一个用 Rust 编写的安全,高度多线程,基于 Vulkan 的游戏引擎。 (库 / 游戏开发)
- awesome-rust - Vulkust
README
# Vulkust (SUSPENDED! go to Amethyst)
An experimental tiny engine for **Vulkan in Rust**.
## 1- Missions
1. **Safety:**
Only FFI related stuff are `unsafe` and in addition several other validation on runtime occur for checking correct API usage and for performance reason it happens only in debug mode.
2. **Quality:** It's gonna use highest available hardware features for providing better graphics, some of the feature may not be appropriate for poor devices (e.g. deferred rendering).
3. **Performance:** It does every thing to bring highest possible performance.
4. **Fast development:** Easy to develop new features.
5. **Small executable binary file:** Abstained from chunky big external dependencies.
6. **Cross-platform:** It works for Linux, Android, Windows, MacOS, iOS, (note: current focus is mostly on Linux and Android but other platforms get support after a while after a new feature added)
7. **Maintainable code**### 2- Status:
It is under lots of changes.
(Until current milestone feature is not implemented it is not stable.)
### 2-1- Current milestone
#### 2-1-1- Current features:
- Cross platform (Linux, Windows, MacOs, Android, iOS)
- Deferred Rendering
- Multithreaded Rendering
- Support current version of GX3D.
- Supports font rendering
- UI system (early version)
- A safe interface over Vulkan
- Vulkan Memory management (early version)
- Occlusion culling (Frustum culling)
- Shadowing
- Cascaded Shadow
- Shadow Accumulation
- Soft Shadowing
- SSAO
- PBR lighting
- Texture mipmapping (2D)#### 2-1-2- Underdeveloment features:
- Forward transparent pass
#### 2-1-3- In near future:
- Auto exposure
- Light blooming
- Light streak
- PBR IBL
- More UI widgets
- Supporting GLTF## 3- Examples
- First of all master branch may become unstable or even uncompilable.
(I'm gonna create a release branch in the first stable version)
- You must have **glslangValidator** in you PATH environment variable.
- For **iOS** and **Android**, you must have
[vulkust-ios](https://github.com/Hossein-Noroozpour/vulkust-ios) and
[vulkust-android](https://github.com/Hossein-Noroozpour/vulkust-android)
projects next to the vulkust root.## 4- License
- You can do whatever you want to do with it, but every consequences are on you.
- You can not say that you have written this.
- Make some promotion for this project and me (I'm a job seeker).