Skip to content

Commit 4947128

Browse files
Update README.md
1 parent a6261b4 commit 4947128

File tree

1 file changed

+62
-48
lines changed

1 file changed

+62
-48
lines changed

README.md

+62-48
Original file line numberDiff line numberDiff line change
@@ -1,63 +1,77 @@
1-
This is a copy of Final Engine that will be used to setup the new rendering engine.
1+
![GitHub-Mark-Light](https://user-images.githubusercontent.com/50978201/193459338-32d71599-19d6-4eb6-b5b3-c34348d623b9.svg#gh-dark-mode-only)![GitHub-Mark-Dark](https://user-images.githubusercontent.com/50978201/193459322-b078ed0d-cf0d-4791-ad10-ee2f3131cd20.svg#gh-light-mode-only)
22

3-
## Features
3+
<p align="center">
4+
Final Engine is an open-source, cross-platform Game Engine developed in C# 11.0, using .NET 7.0. What began as a hobby project has rapidly evolved into a project that I'm committed to maintaining and developing actively over time. The primary objective of Final Engine is to offer a feature-rich Game Engine that prioritizes simplicity and accessibility for new users. Our mission statement:
5+
</p>
46

5-
### Rendering Techniques
7+
<p align="center">
8+
<em>Create an engine that makes game development enjoyable, straightforward, and effortless while granting users complete creative freedom.</em>
9+
</p>
610

7-
- [x] Pipeline
8-
- [x] Forward Rendering
11+
<p align="center">
12+
<a href="https://discord.gg/edCTVFVwnV">
13+
<img alt="Discord" src="https://img.shields.io/discord/1085050447410241556?style=flat&logo=discord&label=discord">
14+
</a>
15+
<a href="https://github.com/softwareantics/FinalEngine/issues?q=is%3Aopen+is%3Aissue+label%3A%22%F0%9F%8F%81+Good+First+Issue%22">
16+
<img alt="GitHub issues" src="https://img.shields.io/github/issues/softwareantics/FinalEngine/🏁%20Good%20First%20Issue?color=7057ff&label=Good%20First%20Issues">
17+
</a>
18+
</p>
919

10-
### Geometry and Models
20+
<p align="center">
21+
<a href="#key-features">Key Features</a> •
22+
<a href="#getting-started">Getting Started</a> •
23+
<a href="#download">Download</a> •
24+
<a href="#contributing">Contributing</a>
25+
</p>
1126

12-
- [x] Mesh Rendering
13-
- [ ] Terrain Rendering
14-
- [ ] Model Loading
27+
<p align="center">
28+
<img src="https://user-images.githubusercontent.com/50978201/202500840-07f0a568-633b-4494-99af-4ca0e17afd4f.png" alt="Screenshot">
29+
</p>
1530

16-
### Camera and View Optimization
31+
## Key Features
1732

18-
- [x] Camera System
19-
- [ ] View Frustum Culling
20-
- [ ] Occlusion Culling
33+
### Cross-Platform Compatibility
2134

22-
### Material and Shading
35+
Built using C# 11 and .NET 7.0, the engine boasts excellent cross-platform compatibility. It's important to note that while the engine is actively in development, some features might not function as expected on certain platforms. If you encounter any issues while using _Final Engine_ on a specific platform, please don't hesitate to [report it](https://github.com/softwareantics/FinalEngine/issues/new/choose).
2336

24-
- [ ] Material System
25-
- [x] Diffuse Mapping
26-
- [x] Specular Mapping
27-
- [x] Normal Mapping
28-
- [ ] Emissive Mapping
29-
- [ ] Parallax Mapping
37+
### Advanced Rendering API
3038

31-
### Lighting and Shadows
39+
_Final Engine_ offers a meticulously designed, feature-rich rendering abstraction layer built over OpenGL (with plans to support additional backends like Direct3D and Vulkan in the future). This API empowers users to engage directly with the graphics card while also providing systems and features for easily rendering meshes and sprites within scenes.
3240

33-
- [x] Lighting
34-
- [x] Blinn-Phong Lighting Model
35-
- [x] Light Sources
36-
- [x] Directional
37-
- [x] Point
38-
- [x] Spot
39-
- [ ] Volumetric
40-
- [x] Global Illumination (Ambient Lighting)
41-
- [ ] Shadow Mapping
41+
### Entity-Component-System (ECS) Architecture
4242

43-
### Visual Effects
43+
Driven by the ECS architectural pattern, _Final Engine_ employs the entity-component-system model to power its core functionality. Learn more about ECS [here](https://en.wikipedia.org/wiki/Entity_component_system). This architectural choice serves as the foundation of the engine, enabling swift game design while maintaining a clear separation of concerns.
4444

45-
- [ ] Fog
46-
- [ ] Linear
47-
- [ ] Exponential
48-
- [ ] Exponential Squared
49-
- [ ] Skyboxes
50-
- [ ] Blending
51-
- [ ] Reflections and Refractions
45+
### Effortless Resource Management
5246

53-
### Animation and Post Processing
47+
_Final Engine_ incorporates a straightforward and user-friendly _Resource Manager_ to handle various resources utilized within the engine (such as audio, textures, and shaders). Expanding the engine with new resources is made simple through the `ResourceLoaderBase` abstraction and the `IResourceManager.RegisterLoader` method.
5448

55-
- [ ] Animation
56-
- [ ] Skeletal Animation
57-
- [ ] Post Processing
58-
- [ ] Gamma Correction
59-
- [ ] High Dynamic Range (HDR)
60-
- [ ] Bloom
61-
- [ ] Motion Blur
62-
- [ ] Depth of Field
63-
- [ ] Anti-Aliasing
49+
### Desktop Editor (Work in Progress)
50+
51+
We're actively developing an editor application for creating games using _Final Engine_. This editor will grant users the ability to craft entities, components, systems, manage projects, scenes, and resources. Our goal is to offer a preview of the editor by 2024.
52+
53+
![image](https://github.com/softwareantics/FinalEngine/assets/50978201/82814656-ce31-46b6-b05e-38134eae90e4)
54+
55+
## Getting Started
56+
57+
Below are the prerequisites and instructions for building the engine.
58+
59+
Feel free to reach out to us on [Discord](https://discord.gg/edCTVFVwnV) if you encounter any challenges while setting up the engine or working with its features. Please note that comprehensive user documentation, including tutorials, have not yet been provided. Your inquiries and feedback are greatly valued as they contribute to the ongoing development of our project.
60+
61+
### Prerequisites
62+
63+
- [.NET 7.0 SDK](https://dotnet.microsoft.com/download/dotnet/7.0).
64+
65+
### Building on Windows, Mac, and Linux
66+
67+
1. Download or clone the repository.
68+
2. Open `FinalEngine.sln` in your preferred IDE.
69+
3. Build the solution (or use `dotnet build`).
70+
71+
### Download
72+
73+
- Release builds will be accessible on GitHub and as NuGet packages.
74+
75+
## Contributing
76+
77+
Follow our contribution guidelines [here](https://github.com/softwareantics/FinalEngine/blob/master/.github/CONTRIBUTING.md) if you wish to contribute to the project.

0 commit comments

Comments
 (0)