Repository navigation
Emmerald-Engine
Emmerald Engine is a game engine in C++ developed for the Engine Development subject project for the CITM Bachelor's degree in Video Game Design and Development. In which we have to develop a game engine under 4 months.
Creators
The engine is being developed by:
Install
- Download the most recent release
- Extract the .zip
- Click on the Emmerald Engine folder and Execute Emmerald-Engine.exe
Features
Emmeral-Engine v.1.0:
3rd assignment
-
Particle Component, to see the particles working the engine must be in "Play" state
-
Billboarding Component, the user can select diferent tipes of billboarding
-
Screen Align billboard, World Align billboard, Axis Align billboard and Scene Camera billboard.
-
Textures (including the particle ones) drawing with transparency
-
Particle textures can be changed by drop and dragging
-
Particles impementation examples with fireworks and smoke
Controls:
Camera:
-
Right Click on scene window to rotate the camera
-
W/A/S/D to move the camera
-
On scene window press Q/E for going UP/DOWN
-
Hold Shift + W/A/S/D to move faster
-
Press F to focus camera position to the center
-
Alt + Left Click to rotate around the center
-
Scroll up and down to move the camera in and out
Camera tp keys:
- U - Fireworks view
- I - Bakerhouse smoke ("Smoke1") view
- O - "Smoke2" view
- P - "Smoke3" view
Hierarchy:
-
In Objects window, Hover to open the primitive menu, click to create one
-
In Objects window, Click on a gameObject in order to select it
-
In Objects window, Click + Drag Mouse on a gameobject into another to change a gameobject parent or child
Drag And Drop:
-
This engine can handle the import of an fbx
-
This engine handles the import of a PNG/DDS convert it into a texture and apply it on a gameobject, but the gameobject has to be selected first, it also works with particles
Others
- Pressing "1" spawns a random firework.
License
MIT License
Copyright (c) 2023 Xavi Prats Paredes & Joan Giol Pozo
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.