Skip to content

Releases: lSara-MM/Pinky_Engine

Pinky_Engine_v.1.0

Choose a tag to compare

@AndyCubico AndyCubico released this 16 Jan 20:35

High-level System: User Interface Pinky

  • System to render a variety of widgets on screen
  • UI Game Objects/Widgets:
    • Canvas:
      • surface that represents the game window. What is inside of it will be rendered to game
      • automatically created when any UI Game Object is created and there is no canvas on scene
    • Image: displays an image. Options to change its colour and the texture attached to it
    • Text: renders the desired text ("Hello World" by default). Option to change the font colour and size
    • Button: it is formed by two Games Objects:
      • Text: if the user desires to input a text
      • Button: holds the logic of the button with the following states: Normal, Focusd, Pressed, Selected and Release
        • Option to change the colours of each state
        • Option to change the colour of the texture
        • Option to change the texture
        • It can call custom functions (like the fade in the demo)
    • Input Box: allows player to input any text when selected :
      • Input box Game Object holds the logic and has the same states as button
      • Text Game Object to store the input text (and be able to move it around)
      • It has the option to put a character limit
    • Checkbox: composed of multiple Game Objects:
      • Checkbox as the parent of the rest holds the logic to disable the checkmark and execute a desired function
      • Text if user wants to put a label to the widget
      • Background behind the checkmark
      • Checkmark, changes when the Checkbox parent is changed
      • As with button, option to change the colours of the states and of the textures
  • All of the UI Game Objects can be navigated through with tab (change the selected one)
  • Logic of all the UI works only in play mode
  • Buttons allow input from the keyboard (spacebar)
  • There is a demo that shows the functionality of all the Widgets:
    • Main menu with a fullscreen background, with an imput box and a button to start, when pressed fades away
      to the next scene
    • Next scene has the town of the second assignment and a crosshair in the middle of the screen
    • Pressing F1 in this scene opens up a menu, with a checkbox to drag the window and to toggle Vsync

Pinky_Engine_v.0.2

Choose a tag to compare

@AndyCubico AndyCubico released this 10 Dec 20:54

Features 280085176-933dee19-0154-4102-a156-dc3d3b041f4c

  • Load and draw FBX files by dragging them to the engine from anywhere in the Hard Drive
  • Load and apply DDS/PNG textures by dragging them to the engine from anywhere in the Hard Drive
  • Game Object structure, one for each loaded mesh. Inspector shows the following:
    • Each GameObject can have 4 components: Transform, Mesh, Material and Camera
      • Transform component that allows to translate, rotate and scale Game Objects, both with the inspector and guizmos
      • Mesh component:
        • Allows to show vertex normals, face normals of the geometry, OBB, and global AABB
      • Material component allows to change the color (with a color picker) and a toggle to show the checkers
      • Camera component:
        • User can modify the near plane, far plane and FOV
        • Game camera checkbox to enable or disable if the component is the rendering game camera
        • Meshes can be discarded using Frustum Culling, checkbox to enable or disable
    • User can add mesh (choose a primitive shape), material and camera (can't add more than one of each for each Game Object, like in Unity Engine)
    • Mesh and material component can be deleted pressing the cross icon
    • Toggle to enable and disable Game Object, it will not render and will appear slightly turned off in the hierarchy
    • Clicking the name allows the user to change it (press enter to save it and esc to cancel)
    • GameObjects can be picked from the world using the mouse
  • Resources and CFF
    • Models, meshes and textures are saved with our own format under Library folder
    • Scene can be serialized to a file that can be loaded
    • Upon start, all resources not managed inside Assets are generated in Library
    • Library folder regenerates from Assets + meta content
    • All resources use reference counting
  • Hierarchy:
    • User can fold and unfold the children of a parent
    • Multiple selection of Game Objects
    • Delete Game objects from the engine deletes them from the hierarchy
    • Move Game Object to change its parent
    • Right click Game Object allows to create a child with a primitive shape or empty
  • Console Window:
    • Show the geometry and texture loading process
    • Show the libraries initialization process
    • Special messages for errors and warnings (highlighted in red and yellow)
    • Button to clear the console.
    • Search option to look for messages
  • Play time:
    • User can user can Start / Pause / Stop / Step the simulation and recover its original state
    • 2 timers show the real time since the engine started and the game time since the simulation started (play button)
  • Cameras:
    • There are 2 windows: one with editor view and another withe the game view
    • Game view is captured with a Game Object and can be changed
    • Each one has its own framebuffer and the user can visualize both at the same time

Pinky_Engine_v.0.1

Choose a tag to compare

@AndyCubico AndyCubico released this 02 Nov 17:56

Features Pinky

  • Load and draw FBX files by dragging them to the engine from anywhere in the Hard Drive
  • Load and apply DDS/PNG textures by dragging them to the engine from anywhere in the Hard Drive
  • Game Object structure, one for each loaded mesh. Inspector shows the following:
    • Each GameObject can have 3 components: Transform, Mesh and Material
      • Mesh component allows to show vertex normals and face normals of the geometry
      • Material component allows to change the color (with a color picker) and a toggle to show the checkers
    • User can add mesh (choose a primitive shape) and material components (can't add more than one of each, like in Unity Engine)
    • Mesh and material component can be deleted pressing the cross icon
    • Toggle to enable and disable Game Object, it will not render and will appear slightly turned off in the hierarchy
    • Clicking the name allows the user to change it (press enter to save it and esc to cancel)
  • Hierarchy:
    • User can fold and unfold the children of a parent
    • Multiple selection of Game Objects
    • Delete Game objects from the engine deletes them from the hierarchy
    • Move Game Object to change its parent
    • Right click Game Object allows to create a child with a primitive shape or empty
  • Console Window:
    • Show the geometry and texture loading process
    • Show the libraries initialization process
    • Special messages for errors and warnings (highlighted in red and yellow)
    • Button to clear the console.