Skip to content

xavimarin35/TonicEngine

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Tonic Engine

Tonic Engine is a 3D Game Engine developed in C & C++ made by Pol Casaú and Xavi Marín, students of CITM in Barcelona during our Game Design and Development Bachelor's Degree.

Don't hesitate to check our website here!

Features

Windows

Main Tab: Menus of all the functionalities of the engine

  • File
  • GameObject
  • Debug
  • Windows
  • Help

Scene Viewport: Displays the scene from the view of the editor camera

  • Shows the ImGizmos

Game Viewport: Displays the scene from the view of the play camera

  • Maintain the proper aspect ratio when is resized

Hierarchy: Shows current GameObjects tree

  • Reparent with drag and drop
  • Creation and deletion of GameObjects
  • Current active Game Camera

Inspector: Shows the attributes of the selected GameObject

  • Transform, Mesh, Texture and Camera components
  • Rename and enable/disable of GameObjects
  • Change properties of the components

Console: Logs real-time information about the engine's processes

  • Autoscroll
  • Clear console and last log buttons
  • Different colors depending on log type

Configuration: Shows the properties of the engine and its rendering

  • Application, Hardware and Input information
  • Window and Rendering options
  • Camera movement sensitivity

Assets: Displays all the resources used by the engine and their information

  • Meshes, textures and models folder
  • Textures can be assigned from the folder to current selected GameObject
  • Models can be imported to current scene from the folder

State: Contains the Play menu and other important buttons

  • Move, Rotate and Scale buttons for gizmos
  • Bounding boxes buttons
  • Playmode buttons

Functionalities

  • Resource Manager: Manages all the assets of the engine
  • Mouse Picking: GameObjects can be picked from the world using the mouse
  • Drag & Drop: Meshes and Textures can be dropped to the engine
  • Playmode: The engine enters into a simulation with the active game camera
  • Bounding Boxes: All meshes have their own AABB
  • Own file format: New meshes and textures are saved in the library
  • Frustum culling: Cameras can discard and don't draw elements outside their range of view
  • Scene Serialization: Scenes information can be saved into .json files

Extra Features

  • Docking
  • ImGizmos
  • Debug Menu
  • Environment customization

Usage

Installation

Download the zip file and unzip it. Open the folder, execute the .exe and enjoy Tonic Engine!

IMPORTANT: Do not modify, change or add any folder or file (unless specified) as you might not be able to execute the application.

Camera Controls

  • Right Click: First-Person Camera
  • Right Click + WASD / QE: Move camera in different directions.
  • Shift + Movement: Duplicates camera velocity.
  • ALT + Left Click: Orbit around reference point.
  • Mouse Wheel Scroll or ALT + Right Click: Zoom in / Zoom out.
  • Mouse Wheel Drag: Move camera through the actual axis.
  • F: Focus camera to selected Game Object.

Shortcuts

  • CTRL + S: Saves the actual scene information
  • CTRL + A: Loads the saved scene
  • CTRL + R: Resets the transform of the selected GameObject
  • CTRL + T: Saves the actual transform of the GameObject to be the new default
  • W / E / R: Move / Rotate / Scale gizmo operation
  • SUPR: Deletes the selected GameObject
  • ESC: Activates/Deactivates the Exit Engine pop-up
  • ALT + F4: Closes the engine

Authors

Pol Casaú

Xavi Marín

Contact

Don't hesitate to visit:

Or contact us:

Third Party Libraries

License

Licensed under the MIT License