Send the link below via email or IMCopy
Present to your audienceStart remote presentation
- Invited audience members will follow you as you navigate and present
- People invited to a presentation do not need a Prezi account
- This link expires 10 minutes after you close the presentation
- A maximum of 30 users can follow your presentation
- Learn more about this feature in our knowledge base article
Do you really want to delete this prezi?
Neither you, nor the coeditors you shared it with will be able to recover it again.
Make your likes visible on Facebook?
You can change this under Settings & Account at any time.
Building Real-Time Interactive Simulations with Unity3D
Transcript of Building Real-Time Interactive Simulations with Unity3D
Networking Using Unity's Entity-Component Model Unity favors definition by aggregation, vs. definition by inheritance
Entities/Game Objects/Objects are defined by the Components attached to them
This is similar to traditional component-based GUI systems, like the Visual .NET GUI building framework
The focus is on loose coupling, modularity, re-usability Units of Functionality: Components Unity comes with several built-in components, which interface with the various engines and systems (rendering, physics, etc.)
It's possible to construct simulations entirely from these built-in components, without writing any code
Components are concrete, and they expose their public parameters in the Unity editor!
This makes the component very flexible Component Communication With all this loose coupling and generality, how do we interact with components at runtime?
You can write your own components that perform this function
They orchestrate the interactions between Game Objects and their Components
Scripts behave like components when attached to Game Objects
Like other components, they expose their public parameters through the editor for editing, even at runtime
Implementing Simulation/Interaction Mechanics Break the simulation into components
In some classic CI systems, this is quite easy
Implementing Simulation/Interaction Mechanics The exposed nodes may then, through the use of scripting, be attached to other components attached, such as a motor component (output nodes) or a sensory component (input nodes)
In this way, components can be abstracted from the implementation
Components can be replaced with different flavours making the model much more flexible
Kerbal Space Program Slender Augmented Reality Flight Simulation 3D Interactive Architecture Final Thoughts Questions?