Incomplete Code: Difference between revisions

From Orion Engine Wiki
Jump to navigation Jump to search
mNo edit summary
 
(4 intermediate revisions by the same user not shown)
Line 18: Line 18:
== Terrain Management ==
== Terrain Management ==


* Test adding multiple patches of terrain together.
* Spline-based terrain and the associated tools.
* Spline-based terrain and the associated tools.
== Scene Manager ==
* Maintain large worlds by dynamically loading/unloading scene elements.


== Networking ==
== Networking ==


* In the network driver, use Windows Overlapped I/O with callback notifications, instead of polling for events.  I plan to allow upwards of 10,000 connections per-server.
* Finish packet compression and encryption.
* Finish UDP communication.
* Finish UDP communication.
* Finish packet compression and encryption.


== Geometry Library ==
== Geometry Library ==
Line 55: Line 49:
== 2D GUI Control Library ==
== 2D GUI Control Library ==


* Create new list box and/or drop-down list control.
* Create new drop-down list control.
* Create new menu control.
* Create new menu control.
* Create new tab control.
* Create new tab control.
Line 61: Line 55:
== Scripting ==
== Scripting ==


* Finish implementing high-level script language w/advanced data types.
* Finish implementing the new high-level scripting language plug-in w/advanced data types for [https://www.orionengine.com/script/ Orion Script].

Latest revision as of 10:23, 11 July 2023

There are only a few key areas left that need to be finished, before we can start creating a game using the Orion Engine framework. Note that some of the features mentioned on this page will likely have to wait for a later release to be finished.

NOTE: See the Engine Features page for details on the features that are currently finished.

This documentation is only a preliminary specification and is subject to change at any time.


Effect System

  • Convert all existing scene objects to use the new effect system. Decide what needs to be deprecated from the API.
  • Finish the material editor, and effect importers, in the Orion Genesis world builder.

Animation System

  • Finish animation track blending.
  • Finish animation event handling.

Terrain Management

  • Spline-based terrain and the associated tools.

Networking

  • Finish packet compression and encryption.
  • Finish UDP communication.

Geometry Library

  • Finish bones and skinned mesh support.
  • Finish patch mesh support.
  • Finish progressive mesh support.

Physics Library

  • Path finding, path creation, etc.
  • Collision analyzer for solving complex collisions (i.e. rolling, bouncing, sliding, spinning, etc.)
  • Simulation manager.
    • Inverse kinematics (IK) system for 3 joint articulation.
    • Vehicles, such as car, bike, boat, etc.
    • Flocking, autonomous agents, etc.
    • Attached objects with breakable restraints.
    • Springs.
    • Inertial behavior, viscosity, friction, buoyancy, etc.

Sound Manager

  • Allocate and manage sound buffers/channels, handle buffer priorities, dynamic load/unload, etc.

2D GUI Control Library

  • Create new drop-down list control.
  • Create new menu control.
  • Create new tab control.

Scripting

  • Finish implementing the new high-level scripting language plug-in w/advanced data types for Orion Script.