Skip to content

Commit

Permalink
Update README.md
Browse files Browse the repository at this point in the history
  • Loading branch information
devildrake authored Jan 17, 2021
1 parent 665734e commit c9ee5ef
Showing 1 changed file with 10 additions and 13 deletions.
23 changes: 10 additions & 13 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,16 +2,16 @@
Engine being developed during UPC's Masters Advanced Programming for AAA video games.

# About the engine
This is the first implementation of the engine. Right now it can load models, textures and move through the scene with a camera. It also has an editor to play with settings of different modules. The functionalities correspond to the ones asked for the first assignment and it will be updated in the next weeks/months.

It's named after the Gomu Gomu no Mi devil fruit from my favourite manga (One Piece) to represent the ability of this engine to adapt to any feature needed.
This is the second implementation of the engine. Right now it can load models, textures and move through the scene with a camera. It also has an editor to play with settings of different modules. The functionalities correspond to the ones asked for the second assignment.
By default we load a survival shooter scene, there's the possibily to build your own scene and save it, but for now only one scene may be saved at the same time (besides default scene).
It's named after the Gomu Gomu no Mi devil fruit from our favourite manga (One Piece) to represent the ability of this engine to adapt to any feature needed.

# Authors
Guillem Burgués Miró - https://github.com/GBMiro/
David Sierra González - https://github.com/devildrake

# Source Code
You can find the code in the following link: https://github.com/GBMiro/GomuGomuEngine
You can find the source code in the following link: https://github.com/GBMiro/GomuGomuEngine

# Engine Controls

Expand All @@ -27,9 +27,6 @@ You can find the code in the following link: https://github.com/GBMiro/GomuGomuE
- **Transform Gizmos: ** If a Gameobject is selected, a transform gizmo will be shown, said gizmo can be toggled with W/E/R for Translation/Rotation/Scale, Locald/Global gizmo modes can be switched with L/G
- **Play/Stop Buttons: ** Pressing Play button will make an aux copy of the scene, pressing Stop button will reload said aux copy of the scene, rendering all changes made in "play mode" ignored.


**NOTES:** By default, the provided fbx models load the png texture but you can drag and drop the dds ones.

## Engine Editor

The editor has a main bar with 3 tabs:
Expand All @@ -40,18 +37,18 @@ The editor has a main bar with 3 tabs:

### Editor Windows

- **Configuration:** You can toggle various options from the camera (zNear/zFar, FOV, camera speed...), textures (Min/Mag filter, MipMap, WRAP...), window (width, height...),input(mouse sensitivity), rendererer (tonemapping/Gamma correction), Scene (Ambient light, Frustum Culling), Editor (How the Mouse picking is done, wether via QuadTree accel or directly, Frame rate capping, Vsync toggling).
- **Configuration:** You can toggle various options from the camera (zNear/zFar, FOV, camera speed...), textures (Min/Mag filter, MipMap, WRAP...), window (width, height...),input(mouse sensitivity), rendererer (tonemapping/Gamma correction), Scene (Ambient light, Frustum Culling), Editor (Drawing QuadTree "High cost", how the Mouse picking is done, wether via QuadTree accel or directly, Frame rate capping, Vsync toggling).
- **Monitor:** Shows information about the hardware the engine is running on, libraries that are being used and some performance data
- **GameObject Hierarchy:** Current scene GameObjects will be displayed here in a hierarchichal way, GameObjects can be selected by clicking on them here. users can drag/drop GameObjects on top of others to modify the hierarchy. Right clicking on hierarchy will show an option to Create a GameObject, if a GameObject was selected, the Destroy button will also be shown. This can also be done by perssing Supr with a selected GameObject
- **Properties:** If users have a slected GameObject on the hierarchy window, this window will display all components contained withing the GameObject, each Component with its different exposed variables.
- **Console:** Shows all LOGs made by the code, can be cleared by right clicking on it and pressing button named clear



- **Console:** Shows all LOGs made by the code, can be cleared by right clicking on it and pressing button named clear.

# Comments
- By default frustum culling is enabled, the only camera within the scene besides the editor camera is the one managing the culling and by toggling off the editor property culling it becomes disabled.
- If you download the source code and open it with visual studio, before executing you need to set the project working directory to $(ProjectDir)/Game so it can find all the .dll files
- If you can't close the engine through the "X" in the upper bar, you may need to close all window editors that are not docked.
- If you can't load a texture, take a look into the log window to get more details. The editor will load a black texture in case it could not find the one dropped
- Sometimes the combo box for Min filters may not let you select a filter. Try resizing the configuration editor window
- The second assignment was worked on Development branch and we used branches whenever our work differed too much and a big new feature was being implemented from scratch.
- The second assignment was worked on Development branch and we used branches whenever our work differed too much and a big new feature was being implemented from scratch.
- GameObjects and components may be set active/inactive or enabled/disabled via toggles in the property window, for now MeshRenderer and LightComponents are the only ones that can be disabled, disabling lights will make the scene darker and disabling mesh renderers will prevent them from drawing.
- The default scene contains two lights (One point light and one directional light), there's no way to create new light but the drawing system is prepared to withstand up to 8 pointlights per gameObject (It sorts them by distance) and a directional light.

0 comments on commit c9ee5ef

Please sign in to comment.