1 unstable release

0.1.0 Dec 23, 2023

#1927 in Game dev

Custom license

17KB

KaiGE Editor

  • Core Functionalities
    • Scene Hierarchy
      • Display a tree view to navigate and manage game objects, their components, and parent-child relationships.
      • Allow creation, deletion, renaming, and reordering of objects.
    • Component Inspector
      • Display editable properties of selected objects and their components (e.g., transform, materials, meshes).
      • Handle different component types appropriately.
    • Viewport
      • Render a real-time preview of the game scene, allowing for visual editing and manipulation.
  • Essential UI Elements
    • Menus and Toolbars
      • Provide common actions like saving, loading, undo/redo, and project settings.
    • Layout Panels
      • Organize UI elements effectively using containers like SidePanel, TopBottomPanel, and Window.
    • Input Fields
      • Allow text input for properties like names, values, and file paths.
    • Buttons and Toggles
      • Trigger actions and alter settings.
    • Dropdowns and Lists
      • Select from predefined options.
    • File Dialogs
      • Load and save assets (models, textures, sounds).
  • Integration with Game Engine
    • Frame Loop
      • Integrate egui's rendering and input handling into your game engine's main loop.
    • Data Exchange
      • Establish mechanisms to reflect game engine data in the UI (e.g., scene hierarchy, component properties) and vice versa.
    • Event Handling
      • Handle UI events (e.g., button clicks, value changes) and trigger appropriate actions in the game engine.
  • Additional Considerations
    • Custom Widgets
      • Consider creating custom widgets for specialized editing tasks (e.g., material editors, curve editors).
    • Performance Optimization
      • Profile and optimize UI rendering and interactions for smooth performance, especially in complex scenes.
    • Hot Reloading
      • Implement features to enable live changes to game code and assets without restarting the editor.
    • User Experience
      • Design an intuitive and user-friendly interface with clear visual cues and consistent interactions.

Dependencies

~4–9MB
~84K SLoC