feat: ✨ added empty c++ project
This commit is contained in:
34
README.md
34
README.md
@ -3,44 +3,20 @@
|
||||
</div>
|
||||
|
||||
# Shadowcrest
|
||||
My own Gameengine used in games i make forward
|
||||
My own Gameengine made in c++ which is used in games i make forward
|
||||
|
||||
## why do i want my own engine?
|
||||
simply said because i want to know how games run in their backend
|
||||
another strong reason would be i want to have full controll over what works how and when its added
|
||||
Simply put i want to learn c++ and how the more lower level Systems on a computer work as i only have worked in languages that help out with things like memory management e.g. Javascript, PHP, C#, Go. In Addition to that i want to improve my skills on how to optimize code and how to properly work with memory.
|
||||
and since that isn't enough i want to know how the System that are required to make games work eventually improving my engine on my way while working on projects.
|
||||
|
||||
## big things are to happen
|
||||
right now this repo only is a placeholder not planed to be worked on for a long while as i need to figure out what i want and how i want it
|
||||
depending on what of the below i chose (i already think i will decide between 2 or 3 but am interessted in 3 due to more tech) i will start designing an engine architecture and also decide if i keep this project opensource or not
|
||||
depending on what of the below i chose (i already think i will decide between 2 or 3 but am interested in 3 due to more tech) i will start designing an engine architecture and also decide if i keep this project oversource or not
|
||||
|
||||
### what does it aim todo
|
||||
bulding my games to keep it simple
|
||||
building my games to keep it simple
|
||||
- supporting 2D games
|
||||
- supporting 3D games
|
||||
- supporting networking networking solutions i develop in placeholder
|
||||
- a user interface for me to organize my project with
|
||||
|
||||
## multiple options emerge
|
||||
### option 1 using pygame
|
||||
as i am working on a project in pygame and have constructed a small engine arround pygame for the sake of getting the project to where i want it
|
||||
a option would be clearing the present gamelogic out from it and constructing a more easy to use api and a user interface
|
||||
#### downsides:
|
||||
- python is compared to its dotnet competitors not very good in memory management
|
||||
- python is simple but due to the lack of typesafety can be painfull to debug
|
||||
|
||||
### option 2 using dotnet gameframeworks
|
||||
dotnet is used very widely in game development and is used in the biggest known game engines currently available:
|
||||
- godot (C#)
|
||||
- unity (C#)
|
||||
- cryengine (C#, LUA)
|
||||
- unreal (c++)
|
||||
i could use a game framework like [monogame](https://monogame.net/)
|
||||
|
||||
### option 3 the hard way implementing public tech on my own
|
||||
besides the option to use a framework that does the hard game technology part for me i can go all the way on my own and implement things like Vulcan or DirectX, a opensource physics engine like [project chrono](https://projectchrono.org/) or [react physics 3d](https://www.reactphysics3d.com/) or even a more widely used physics engine like nvidia physx or havok engine and fmod as audio engine
|
||||
|
||||
this would be the by far hardest option out of all available but also the by a lot most custom experience
|
||||
this approach would also teach me a very much more then all the other options above
|
||||
|
||||
### downsides
|
||||
a very very very very painfull development process
|
||||
|
Reference in New Issue
Block a user