Difference between revisions of "Roadmap"

From Sirikata Wiki
Jump to: navigation, search
(Filter out a bunch of tasks we've finished since this list was last updated)
 
(7 intermediate revisions by 3 users not shown)
Line 1: Line 1:
''This is the roadmap for summer 2011 and beyond''  
+
''This is the roadmap and brainstorm for development''
  
==Before Spring 2011==
+
==Assigned Tasks==
"These things are needed before undergrads start working with the system, may be as part of their independent study."
+
* B scripter GUI (improvements to interface)
 +
* B/E V8 closures (fix storage of functions in v8 to save closure as well as function text)
 +
* E/J CDN support for music (serve music files as well as meshes)
  
* <del>Scriptable UI</del>
+
==Ideas==
* <del>placement UI</del>
+
* application dev guide
+
* lang guide
+
* machines
+
** cassandra/CDN
+
** space servers
+
** OHs
+
** students
+
* <del>emerson error reporting</del>
+
* emerson rebooting objects
+
  
 +
===Deployment===
 +
* Backups of OH data
  
==Before Summer 2011==
+
===Demo World===
 +
* Repository for world-specific scripts (avatar script, anything we expect to be in there by default).
 +
* Build a nice demo scene, large enough to require some exploration to see it all.
 +
* Scripts for building into package (i.e. all the data required to support [[Sirikata URIs]]
 +
* Get a few good, tested avatars on the CDN and get the default demo avatar to use these simple animations well
  
*mesh processing for rendering performace
+
===System Features===
*mesh upload the complete pipeline
+
* Space
*pycollada dev ( library for reading collada files)
+
** Physics improvements -- get avatars on terrain working well
**file save
+
** Generate collision event messages for objects, maybe based on subscription request
**filter pipelines
+
  
*OGRE render perf
+
* CDN
*<del>non CRAQ OSEG</del>
+
** Expose progressive meshes
*multi server deployment ( mostly testing)
+
**scripts
+
**monitoring
+
*Emerson runtime/compiler bugs (not memory leaks)
+
*Object storage
+
*allocate objects on remote OH
+
*Platform developers' guide
+
  
 +
* OH
 +
** Progressive mesh loading
 +
** Improve Emerson storage -- make it much easier to interface and get a persistent object
 +
** Improve object manipulation interface (could be in deployment specific code, i.e. under Demo World)
 +
** Object migration between OHs
 +
** Fix closures/provide full snapshotting (timers/register handlers/etc)
 +
** libmesh filters should not strip animations (eg. check if joints before collapsing two vertices).
 +
** Playing multiple animations at once (blend/interpolation)
 +
** Exposing physics collisions to Emerson.
 +
** Fix Gui isolation
 +
** Better OH connection failure handling
 +
** Reduce Emerson memory usage
  
==Nice to have in Summer 2011==
+
===Documentation===
 +
* Storage tutorial
 +
* Sandbox tutorial
 +
* Getting started with demo, maybe just update getting started for users since a lot of steps can be avoided when someone provides the configuration for you.
 +
* Simple demo videos showing how to join and interact with the world/other users.
  
*Emerson Ajax feature
+
==Long-term Goals & Research==
*animations
+
* Add audio support (purely OH-based to support, e.g. simple sound effects and local voice chat, then consider adding mixing support to the space server).
*basic physics
+
* Load balancing objects across object hosts
*stats service with web interface
+
* Distributed physics -- extend physics to work with objects including boundaries
*scripting sessions
+
* Mesh/object aggregation
*emerson regressions tests
+
* Multicast
*transferring entities between OHs
+
* New transport abstractions targeted at VWs (e.g. last reliable)
*Windows build
+
** <del>buildbot restored to working order</del>
+
** binary distribution
+
+
 
+
==Beyond summer 2011==
+
*Audio
+
*Animation
+
*Authentication
+
*Emerson memory issues
+
*migrate entities between spaces
+
*better aggregation approach (some implementation things)
+
*resource contraints on scripts
+
 
+
==Research Topics ==
+
 
+
*Distributed spatially mixed audio
+
*Distributed Physics
+
*Distributed PInto
+
*Pinto by num of objs
+
*Space Server Splitting
+
*Multicast
+
*Trasport protocols for VW
+
*Emerson/Language
+
*object storage -> migration etc
+
*better aggregation approach
+
 
+
 
+
== Rest ==
+
 
+
*Audio
+
*Animation
+
*Authentication
+
*Emerson memory issues
+
*migrate entities between spaces
+
*better aggregation approach (some implementation things)
+
*resource contraints on scripts
+

Latest revision as of 22:47, 2 June 2012

This is the roadmap and brainstorm for development

Assigned Tasks

  • B scripter GUI (improvements to interface)
  • B/E V8 closures (fix storage of functions in v8 to save closure as well as function text)
  • E/J CDN support for music (serve music files as well as meshes)

Ideas

Deployment

  • Backups of OH data

Demo World

  • Repository for world-specific scripts (avatar script, anything we expect to be in there by default).
  • Build a nice demo scene, large enough to require some exploration to see it all.
  • Scripts for building into package (i.e. all the data required to support Sirikata URIs
  • Get a few good, tested avatars on the CDN and get the default demo avatar to use these simple animations well

System Features

  • Space
    • Physics improvements -- get avatars on terrain working well
    • Generate collision event messages for objects, maybe based on subscription request
  • CDN
    • Expose progressive meshes
  • OH
    • Progressive mesh loading
    • Improve Emerson storage -- make it much easier to interface and get a persistent object
    • Improve object manipulation interface (could be in deployment specific code, i.e. under Demo World)
    • Object migration between OHs
    • Fix closures/provide full snapshotting (timers/register handlers/etc)
    • libmesh filters should not strip animations (eg. check if joints before collapsing two vertices).
    • Playing multiple animations at once (blend/interpolation)
    • Exposing physics collisions to Emerson.
    • Fix Gui isolation
    • Better OH connection failure handling
    • Reduce Emerson memory usage

Documentation

  • Storage tutorial
  • Sandbox tutorial
  • Getting started with demo, maybe just update getting started for users since a lot of steps can be avoided when someone provides the configuration for you.
  • Simple demo videos showing how to join and interact with the world/other users.

Long-term Goals & Research

  • Add audio support (purely OH-based to support, e.g. simple sound effects and local voice chat, then consider adding mixing support to the space server).
  • Load balancing objects across object hosts
  • Distributed physics -- extend physics to work with objects including boundaries
  • Mesh/object aggregation
  • Multicast
  • New transport abstractions targeted at VWs (e.g. last reliable)