Todo List

 

Engine - Actors

  • Complete development of the ActorSoft Class. This includes adding utilities to sanitize meshes before they go into Bullet, a way to get the objects center of mass, wrapping a method to alter most(but not all, not right away) of the configuration settings for the soft bodies, and construct custom Ogre buffers for use with soft objects that require frequent updates.

    - 25% - Assigned To:
  • Create an ActorCharacter class for use with game Characters. The ActorCharacter class would have to be made along-side a Character Controller. The ActorCharacter class should be designed with both ragdolls and traditional capsule characters in mind.

    - 5% - Assigned To: admin

Engine - Audio

  • Implement a decoder for the Flac encoding.

    - 0% - Assigned To: admin
  • Implement a decoder for the Opus encoding.

    - 0% - Assigned To: admin
  • Implement a decoder for the Speex encoding.

    - 0% - Assigned To: admin
  • Implement a means to attach an Audio Recorder to an Audio Sound or SoundProxy such that it can play it back in real time.

    - 0% - Assigned To: admin
  • Implement Encoders (as opposed to decoders) to go with all implemented decoders.

    - 0% - Assigned To: admin
  • Research the possibility of adding geometry classes to the SoundScapeManager and building a system to automatically generate effects based on that geometry.

    - 0% - Assigned To: admin
  • Research the possibility of creating a decoder for the MP3 encoding.  If it's possible and legal, implement it.

    - 0% - Assigned To: admin

Engine - Build System

  • Fix the Profiling option on the windows build. Currently undefined references to mcount are occurring during compilation. This likely a variable that was introduced to count something during profiling and not all the object files are correctly referencing it.

    - 0% - Assigned To: Sqeaky

Engine - Events

  • Gather error events from SDL (like the "Invalid window") and other subsystems with their own error reporting, and convert them to events that the game or other engine components can use.

    - 0% - Assigned To: admin
  • Split event manager into 2 event managers. One for system events which is what the current event manager is being used for, and one for game events, such as collisions or accomplishments.

    - 0% - Assigned To: admin

Engine - External Tools

  • Create an external program for the assembly of scene's, taking content created from other tools(our tools or outside tools, as long as the supported file types match). This program/tool could probably merge with all the other and more specific tools.

    - 0% - Assigned To: admin
  • Create an external program for the creation and customization of Particle Effects.

    - 0% - Assigned To: admin
  • Create an external program for the creation and editing of UI layouts.

    - 0% - Assigned To:
  • Create an external program for the creation and editing of world terrains. Must support usage of all terrains included/supported by the Terrain Manager.

    - 0% - Assigned To: admin
  • Create an external program for the creation and editing(probably mostly editing) of material scripts.

    - 0% - Assigned To: admin

Engine - Multi-Threading

  • Integrate the multithreaded main loop and workunit with the manager class, including a suitable singlethreaded version. Currently this is being implemented as a standalone library outside the mezzananine, and is still highly experimental.

    - 35% - Assigned To: Sqeaky

Engine - Multiple Engine Systems

  • Complete Singleton class and use as replacement for the `world as a container of managers` idiom. Additionally, the engine needs to be checked for unneeded instances of world and manager pointer that this change would remove the need for.

    - 0% - Assigned To: admin
  • Create a suitable replacement for the .Bullet file format with a some form of serialization.

    - 0% - Assigned To: admin

Engine - Networking

  • Create a NetworkManager class to encapsulate the functionality of a networking library.

    - 0% - Assigned To: admin

Engine - Other

  • Create a working port of the engine for MacOS that behaves identically to the Linux and Windows versions.

    - 10% - Assigned To: admin

Engine - Physics

  • Implement Serialize/DeSerialize methods for all WorldTriggers classes. This will likely require some restructuring of catch code.

    - 0% - Assigned To: Sqeaky

Engine - Resource

  • Create or integrate a stream or series of streams that can perform compression other than just zip. LZMA and GZIP seem reasonable to implement.

    - 0% - Assigned To: admin

Engine - Scene

  • Update the SceneManager to wrap texture shadow configuration functions of it's Ogre counterpart. Also fix whatever existing problems there are with Texture shadows so they behave appropriately.

    - 0% - Assigned To:

Engine - Scripting

  • Integrate Lua into the Engine in a way that makes sense. - Lua now compiles on windows and linux as part of the cmake build. Bindings still do not exist for most classes. A Scripting manager is being added which will support 5.1 by default and be expandable to almost any language. Lua scripts are executable by mezzanine internally, but the API has not been wired up yet.

    - 35% - Assigned To: Sqeaky

Engine - Terrain

  • Create a TerrainManager class to manage the supported terrains of the engine. The TerrainManager class should support Static Mesh terrains and Heightfield terrains at a minimum. Manager/sub-system should be designed with more terrains being added in mind. Voxel-based terrain and Vectorfield terrain specifically.

    - 0% - Assigned To:

Engine - User Interface

  • Clean up the code and better integrate the features of the UI system.

    - 0% - Assigned To:
  • Complete the remaining generic widgets for the UI system. These widgets include: TextBox, RadioButton, Pulldown Menu, Tabbed Window, and some more. Some previous widgets need to be updated to handle input capture(such as listboxes, perhaps).

    - 25% - Assigned To: admin
  • Create a "UI::Action" abstract class that will wrap some non-UI action with an input action. The input action needs to be configurable. For example, using this class you implement a "Shoot" action and bind it to Mouse left click.

    - 0% - Assigned To:
  • Create an XML schema and parser to allow UI layouts to be defined in XML files.

    - 0% - Assigned To:
  • Update UI Input Capture code (the code responsible for intercepting the activation of hotkeys, and in the future, Actions, and puts it into text widgets instead) to be more clean and complete. It was initially designed for rapid development, but this makes it not a long term solution as it is.

    - 0% - Assigned To:

Engine - XML

  • Be able to serialize a phys::world and take a complete snapshot of the game state and reconstitute that into a running game instance. This means that every class will need to be Serializable and have a DeSerializer or be DeSerializable.

    - 0% - Assigned To: Sqeaky
  • Finish implementing Serialization and DeSerialization methods for all class catch will use.

    - 75% - Assigned To: Sqeaky
  • Implement Serialize/DeSerialize methods for all AreaEffect classes.

    - 0% - Assigned To: Sqeaky
  • Implement Serialize/DeSerialize methods for all CollisionShape classes.
    - 6 classes left, and all framework in place. I am treating each class as 5%

    - 70% - Assigned To: Sqeaky

Manage Global To-Do List