160 likes | 285 Views
Luster Theater. Networking Will, Jordan, Kyle Interface Colin Camera + Controls Stacy, Paul Audio + VoIP Jordan, Paul. Scene Management Mike Object Picking Dan Cues + XML Kyle, Rohan, Colin. Roles. Description.
E N D
Networking Will, Jordan, Kyle Interface Colin Camera + Controls Stacy, Paul Audio + VoIP Jordan, Paul Scene Management Mike Object Picking Dan Cues + XML Kyle, Rohan, Colin Roles
Description • A staging application will be used to place models and lights in the scene and define cues that may be executed • A server hosts the data for the theatrical production, and accepts client connections • The audience, stage master, puppeteer, and actors are all clients
High-Level Design • StagingUtil – The project containing the staging application • Client – The project containing functionality for the stage manager, puppeteer, actor, and audience • Core – The project containing the code common to both the StagingUtil and Clients. All ‘managers’ are contained here
XML Parsing • The stage will be defined in an XML file, exported by the staging application • The cues are also contained in the XML • The XML does not change once a theatrical production has begun • Every client parses the XML and uses the core’s ‘managers’ to set up the scene, audio, etc • All cues are predefined in this XML, they simply become available for execution once parsed
Managers • All managers are part of core functionality. They are: • Cue Manager • Scene Manager • Light Manager • Sound Manager • Camera Manager
Schedule • Week 5 • Sound (jordan + paul) • Implement playing/loading audio files • Camera/Input (stacy + paul) • camera manager with limited camera functionality • design and create input handler • Network (will + jordan + kyle) • Implement message classes • create client/server and proxy logic • Scene (mike) • Implement add/create/show render cycle for models and lights • Implement scene graph query methods • Picking (dan) • Implement physical body loading and picking algorithm • Event (kyle + rohan) • Implement underlying Event Cue data structures • Create event interface • Implement Event validation logic (work with network group)
Schedule • Week 6 • Sound (jordan + paul) • Create FMOD plug-in to stream voice • Create FMOD plug-in to receive stream (or have Luster do it?) • Camera/Input (stacy + paul) • Implement different camera types (FPS, 3rd) • Implement rail system for cameras and nodes • Network (will + jordan + kyle) • client + server event messaging • client + server authentication scheme • Add server synchronization logic (multiple servers?) • Scene (mike) • Implement shader lighting • Event (kyle + rohan) • Implement event execution algorithms (create/update tweens, etc) • Integrate with Mocap plugin group • UI (redistribute members here) • Create staging-app and client UI
Schedule • Week 7 • Sound (jordan + paul) • DONE* • Camera/Input (stacy + paul) • DONE* • Network (will + jordan + kyle) • Create show broadcasting logic and show identification logic • Implement show “package and send” logic • Finish up any messaging plans (streaming, authentication, etc) • Scene (mike) • DONE* • Event (kyle + rohan) • DONE* • UI (jordan + paul + kyle + rohan + will + mike) • Full speed on the client side logic * Subject to maintenance, optimizations, and change
Schedule • Week 8 • UI • Full speed on the client side logic and finishing • Week 9 • Demos • Week 10 • Rehearsal * Subject to maintenance, optimizations, and change