Skip to content

Latest commit

 

History

History
142 lines (121 loc) · 8.67 KB

File metadata and controls

142 lines (121 loc) · 8.67 KB

Force Development Features

Main Roadmap

Feature Description State
Core Build basic workstation to work with Force. +
Window System Handle windows on different platforms. +
Renderer 2D Batch Renderer: Quads, Lines, Circles, Sprites. +
Font Rendering: Support for text and font. +
UI Rendering: Support for UI/GUI/HUD rendering. Working... (95%)
Renderer 3D Basic model loading, basic shaders and renderer. 2026?
Project Managment Opportunity to create, save, and edit projects. +
Scene Managment ECS. Creating, saving, controlling, playing scenes. +
Asset Managment Creating, importing, saving, display, attach to GameObjects assets. +
C# Scripting Mono and scripting projects, feature to create scripts, attatch to GameObjects and play. +
Physics 2D Box 2D physics. +
Physics 3D XPhys physics. 2026-LQ-?
Audio Playing effects and sounds. +
Networking Internet connection and files downloading. +
Editor Tool Force Editor Tool, to create projects and games. Main focus today. Infinity...
Nave Tool Force Launcher allowing download, search builds, and create projects. +
Runtime Goal to export the project created in Editor, open executable and play. +-
Platforms Windows, Linux, Mac, GLFW +--+
Renderers OpenGL4, OpenGL3, DirectX 10, DirectX 11, DirectX 12, Vulkan, Metal, Mantle. ++++----

Renderer

API OpenGL 3/4 Microsoft DirectX 10/11 Microsoft DirectX 12 Vulkan
Implementations GUI Library + + + +
Context + +
SwapChain + +
VertexBuffer + hidden VAO +
IndexBuffer + +
UniformBuffer + +
Sampler + +
Shader + +
Texture2D + +
Texture3D 3D 3D
TextureCube + +
DescriptorSet + +
Pipeline + +
RenderPass + +
Framebuffer + +
CommandBuffer - -

Platform

OS/Platform Microsoft Windows 7/10/11 Mac OS Linux GLFW
Implementations Window + - - +
Timer + - - +
NotifyClient + - - NA
FileSystem (std::fs) + + + +
FileSystem Observer + - + NA
Drag & Drop + - - NA
Console/Terminal + - - NA
Platform Utils + - - NA

Core

  • Core Module
  • Application System (will be evolving)
  • Element System
  • Exception And Error Handling
  • Memory Managment and Custom Allocators
  • Hooks, Modules, Players, etc...

Project Managment

  • Creating projects
  • Creating projects via Unicode
  • Serialization/Deserialization projects
  • Renaming projects
  • Creating projects using Nave
  • Handle errors during loading projects

Scene Managment

  • Creating scenes
  • Serialization/Deserialization scenes
  • Renaming scenes
  • Components (21 of N)
  • Game Objects
  • Prefabs, Presets
  • Scene Renderer (will be evolving)
  • Physics 2D

Scripting

  • Basing Mono integration
  • Autogeneration C# project
  • Serialization/Deserialization projects
  • Attaching & Detaching scripts throw Editor
  • Parsing C# exception to Editor Console
  • Debug & Loggers
  • IO
  • Rendering (Only 2D)
  • ImGui (GUILibrary) support
  • Interaction with GameObjects
  • Interaction with Components
  • Interaction with Scenes
  • Runtime recompilation Assemblies/Scripts
  • Force.CSharp.Core classes (95 of N)

Asset Managment

  • Creating & Reading Assets
  • Releationship beetwen .ext (Metadata) file and Handle
  • Reimporting assets
  • Deleting assets
  • Renaming assets
  • Copying assets
  • Importers API
  • Folder Asset
  • Image Asset
  • Audio Asset
  • Script Asset
  • Scene Asset
  • Prefab Asset
  • Text Asset
  • Custom User Assets

Audio

  • Basic Audio (.wav, .ogg, .mp3, .flac, etc)
  • Buffered Audio
  • Streaming Audio
  • Caching Audio

Networking

  • Writing and reading packets
  • Downloading files/archives

Runtime

  • Playable runtime
  • Exporting project to Game (via Solution)
  • Exporting project to Game (via Editor) 2025bx+

The Editor

There's too much to do, too big a list, see Force-Log.md and logs or more details. Bascially i define editor by: Editor during 2D era of Force, that has a limited ending and some 'competeness' of engine, and another 3D era of Force that is basically infinity because for 3D we can implement infinity amout of features.