diff --git a/Project-Aim.md b/Project-Aim.md new file mode 100644 index 0000000..fb8d234 --- /dev/null +++ b/Project-Aim.md @@ -0,0 +1,11 @@ +# Why +Some time ago, I wanted to learn about game engine and to implement one for educational purposes. However, I didn't really have a good reason to do so. Apparently, just implementing a game engine without a proper game isn't enough to push me to attempt the project. + +One day, I remembered playing Hannah and the Pirate Caves from Neopets years ago. I remember it being a fairly straightforward platform but really fun. Then, it hit me: "Why not re-create that game?", followed up by "Why not create a game engine for this?". That's the motivation I need to do this project. + +# Goals +The main goal is simple: **Recreate Hannah and the Pirate Caves as closely as possible, implementing my own engine**. Again, the purpose of this project to learn what goes on in a game engine and gain a appreciation for modern game engine. To help out with this, I am lightly following the COMP4300 C++ Game Programming by Dave Churchill [here](https://www.youtube.com/@DaveChurchill/featured). I recommend this lecture series to anyone who wants to look into game engine, particularly Entity-Component-System (ECS) design. + +# Some Early Decision +## Programming Language +The first I have to make is the programming language of choice. The lecture series uses C++, which make senses given its STL containers and Object-Oriented functionality provided, both facilitates well into game engine implementation. \ No newline at end of file