Upload
mike-acton
View
1.463
Download
2
Embed Size (px)
Citation preview
Rebooting the Insomniac Tools
New Tech for New IP and New Generation
Mike Acton, Engine Director [email protected]
Whirlwind tour through problem-space
Mike Acton, Engine Director [email protected]
Start with the problem
Whirlwind tour through problem-space
Mike Acton, Engine Director [email protected]
Start with the problem
Understand the impact of context/culture
Whirlwind tour through problem-space
Whirlwind tour through problem-space
Mike Acton, Engine Director [email protected]
Start with the problem
Understand the impact of context/culture
Gather and understand real life data
The problemNew IP
The problemNew IP
New Publisher
The problemNew IP
New Publisher
New Platform
The problemNew IP
New Publisher
New Platform
Efficiency
The problemNew IP
New Publisher
New Platform
Efficiency
New Tech Spaces
The problemNew IP
New Publisher
New Platform
Efficiency
New Tech Spaces
Culture
The problemNew IP
New Publisher
New Platform
Efficiency
New Tech Spaces
Culture
No "Right" or "Best" Answer
The problemNew IP
New Publisher
New Platform
Efficiency
New Tech Spaces
Culture
No "Right" or "Best" Answer
Except what allows us to be the best creators we
can be
The problemNew IP
New Publisher
New Platform
Efficiency
New Tech Spaces
Culture
What's the real problem?
The problemNew IP
New Publisher
New Platform
Efficiency
New Tech Spaces
Culture
What's the real problem?
New code...
The problemNew IP
New Publisher
New Platform
Efficiency
New Tech Spaces
Culture
What's the real problem?
New code...
New assets...
The problemNew IP
New Publisher
New Platform
Efficiency
New Tech Spaces
Culture
What's the real problem?
New code...
New assets...
More versions...
The problemNew IP
New Publisher
New Platform
Efficiency
New Tech Spaces
Culture
What's the real problem?
New code...
New assets...
More versions...
More iteration...
The problemNew IP
New Publisher
New Platform
Efficiency
New Tech Spaces
Culture
What's the real problem?
New code...
New assets...
More versions...
More iteration...
The problemNew IP
New Publisher
New Platform
Efficiency
New Tech Spaces
Culture
The problem
New Platform
Efficiency
New Tech Spaces
Culture
New Publisher
The problem
Efficiency
New Tech Spaces
Culture
New Platform
The problem
New Tech Spaces
Culture
Efficiency
The problem (big changes)
New Tech Spaces
Culture
Efficiency Usability testing
The problem (big changes)
New Tech Spaces
Culture
Efficiency Usability testing
Chrome Web App
The problem (big changes)
New Tech Spaces
Culture
Efficiency Usability testing
Chrome Web App
Open houses
The problem (6 examples)
New Tech Spaces
Culture
Efficiency
The problem (6 examples)
New Tech Spaces
Culture
Efficiency 1. Tools UI
Tools UI
Tools UI
Tools UI
The problem (Tools UI)
New Tech Spaces
Culture
Efficiency Who can + Edit speed
The problem (Tools UI)
New Tech Spaces
Culture
Efficiency Who can + Edit speed
HTML5/JS
The problem (Tools UI)
New Tech Spaces
Culture
Efficiency Who can + Edit speed
HTML5/JS
Feedback
Tools UI (sub-problems)Chrome
Tools UI (sub-problems)Chrome Standards + No cross-browser
Tools UI (sub-problems)Chrome Standards + No cross-browser
Javascript + jQuery
Tools UI (sub-problems)Chrome Standards + No cross-browser
Javascript + jQuery UI iteration time
Tools UI (sub-problems)Chrome Standards + No cross-browser
Javascript + jQuery UI iteration time
Remove Flash
Tools UI (sub-problems)Chrome Standards + No cross-browser
Javascript + jQuery UI iteration time
Remove Flash UI iteration time
Tools UI (sub-problems)
Data divide
Chrome Standards + No cross-browser
Javascript + jQuery UI iteration time
Remove Flash UI iteration time
Tools UI (sub-problems)Chrome Standards + No cross-browser
Javascript + jQuery UI iteration time
Remove Flash UI iteration time
Data divide Maintainability
Tools UI (sub-problems)Chrome Standards + No cross-browser
Javascript + jQuery UI iteration time
Remove Flash UI iteration time
Data divide Maintainability
Custom controls
Tools UI (sub-problems)Chrome Standards + No cross-browser
Javascript + jQuery UI iteration time
Remove Flash UI iteration time
Data divide Maintainability
Custom controls Problem first
Tools UI (sub-problems)Chrome Standards + No cross-browser
Javascript + jQuery UI iteration time
Remove Flash UI iteration time
Data divide Maintainability
Custom controls Problem first
Pages
Tools UI (sub-problems)
Data divide Maintainability
Custom controls Problem first
Pages Stability
Chrome Standards + No cross-browser
Javascript + jQuery UI iteration time
Remove Flash UI iteration time
The problem (6 examples)
New Tech Spaces
Culture
Efficiency 1. Tools UI
2. Tools server
Tools server
Tools server
The problem (Tools server)
New Tech Spaces
Culture
Efficiency Stability
The problem (Tools server)
New Tech Spaces
Culture
Efficiency Stability
Everything HTTP
The problem (Tools server)
New Tech Spaces
Culture
Efficiency Stability
Everything HTTP
Local -> Global services
Tools server (sub-problems)RESTful API
Tools server (sub-problems)RESTful API Standards
Tools server (sub-problems)RESTful API Standards
CGI scripts
Tools server (sub-problems)RESTful API Standards
CGI scripts Stable experiments
Tools server (sub-problems)RESTful API Standards
CGI scripts Stable experiments
mongoose
Simple, small
Tools server (sub-problems)RESTful API Standards
CGI scripts Stable experiments
mongoose
Simple, small
Tools server (sub-problems)RESTful API Standards
CGI scripts Stable experiments
mongoose
mongodb
Simple, small
Tools server (sub-problems)RESTful API Standards
CGI scripts Stable experiments
mongoose
mongodb Asset queries, Javascript
Simple, small
Tools server (sub-problems)RESTful API Standards
CGI scripts Stable experiments
mongoose
mongodb Asset queries, Javascript
Perforce integration
Simple, small
Tools server (sub-problems)RESTful API Standards
CGI scripts Stable experiments
mongoose
mongodb Asset queries, Javascript
Perforce integration Simultaneous edits
Simple, small
Tools server (sub-problems)RESTful API Standards
CGI scripts Stable experiments
mongoose
mongodb Asset queries, Javascript
Perforce integration Simultaneous edits
Universal undo
Simple, small
Tools server (sub-problems)RESTful API Standards
CGI scripts Stable experiments
mongoose
mongodb Asset queries, Javascript
Perforce integration Simultaneous edits
Universal undo Maintenance, analysis
The problem (6 examples)
New Tech Spaces
Culture
Efficiency 1. Tools UI
2. Tools server
3. Asset management
Asset management
Asset management
The problem (Asset management)
New Tech Spaces
Culture
Efficiency Build times
The problem (Asset management)
New Tech Spaces
Culture
Efficiency Build times
Live tracking
The problem (Asset management)
New Tech Spaces
Culture
Efficiency Build times
Live tracking
Personal asset branches
Asset management (sub-problems)JSON format
Asset management (sub-problems)JSON format Ease of edit
Asset management (sub-problems)JSON format Ease of edit
File backed
Asset management (sub-problems)JSON format Ease of edit
File backed UX culture
Asset management (sub-problems)JSON format Ease of edit
File backed UX culture
Auto version upgrades
Asset management (sub-problems)JSON format Ease of edit
File backed UX culture
Auto version upgrades Various versions
Asset management (sub-problems)JSON format Ease of edit
File backed UX culture
Auto version upgrades Various versions
NTFS tracker
Asset management (sub-problems)JSON format Ease of edit
File backed UX culture
Auto version upgrades Various versions
NTFS tracker
Asset management (sub-problems)JSON format Ease of edit
File backed UX culture
Auto version upgrades Various versions
NTFS tracker 3rd-party tool edits
Asset management (sub-problems)JSON format Ease of edit
File backed UX culture
Auto version upgrades Various versions
NTFS tracker 3rd-party tool edits
Build manager
Asset management (sub-problems)JSON format Ease of edit
File backed UX culture
Auto version upgrades Various versions
NTFS tracker 3rd-party tool edits
Build manager No choice = automate
Asset management (sub-problems)JSON format Ease of edit
File backed UX culture
Auto version upgrades Various versions
NTFS tracker 3rd-party tool edits
Build manager No choice = automate
Runtime linking
Asset management (sub-problems)JSON format Ease of edit
File backed UX culture
Auto version upgrades Various versions
NTFS tracker 3rd-party tool edits
Build manager No choice = automate
Runtime linking Iteration, Disc layout
The problem (6 examples)
New Tech Spaces
Culture
Efficiency 1. Tools UI
2. Tools server
3. Asset management
4. Lighting, materials, FX
Lighting, materials, FX
Lighting, materials, FX
Lighting, materials, FX
Lighting, materials, FX
The problem (Lighting, materials, FX)
New Tech Spaces
Culture
Efficiency Lightmap bottleneck
The problem (Lighting, materials, FX)
New Tech Spaces
Culture
Efficiency Lightmap bottleneck
Realtime everything
The problem (Lighting, materials, FX)
New Tech Spaces
Culture
Efficiency Lightmap bottleneck
Realtime everything
Build-time optimizations
Lighting, materials, FX (sub-problems)
Realtime edit
Lighting, materials, FX (sub-problems)
Realtime edit Lighter iteration
Lighting, materials, FX (sub-problems)
Realtime edit Lighter iteration
Artist materials
Lighting, materials, FX (sub-problems)
Realtime edit Lighter iteration
Artist materials Styles, optimization
Lighting, materials, FX (sub-problems)
Realtime edit Lighter iteration
Artist materials Styles, optimization
Game parameters
Lighting, materials, FX (sub-problems)
Realtime edit Lighter iteration
Artist materials Styles, optimization
Game parameters Runtime advantage
Lighting, materials, FX (sub-problems)
Realtime edit Lighter iteration
Artist materials Styles, optimization
Game parameters Runtime advantage
Runtime classify
Lighting, materials, FX (sub-problems)
Realtime edit Lighter iteration
Artist materials Styles, optimization
Game parameters Runtime advantage
Runtime classify Anything moves, changes
Lighting, materials, FX (sub-problems)
Realtime edit Lighter iteration
Artist materials Styles, optimization
Game parameters Runtime advantage
Runtime classify Anything moves, changes
Occlusion
Lighting, materials, FX (sub-problems)
Realtime edit Lighter iteration
Artist materials Styles, optimization
Game parameters Runtime advantage
Runtime classify Anything moves, changes
Occlusion Memory, accuracy
Lighting, materials, FX (sub-problems)
Realtime edit Lighter iteration
Artist materials Styles, optimization
Game parameters Runtime advantage
Runtime classify Anything moves, changes
Occlusion Memory, accuracy
Indoor/Outdoor
Lighting, materials, FX (sub-problems)
Realtime edit Lighter iteration
Artist materials Styles, optimization
Game parameters Runtime advantage
Runtime classify Anything moves, changes
Occlusion Memory, accuracy
Indoor/Outdoor Optimization
The problem (6 examples)
New Tech Spaces
Culture
Efficiency 1. Tools UI
2. Tools server
3. Asset management
4. Lighting, materials, FX
5. Animation, cinematics
Animation, cinematics
Animation, cinematics
Animation, cinematics
Animation, cinematics
The problem (Animation, cinematics)
New Tech Spaces
Culture
Efficiency Gameplay and post cost
The problem (Animation, cinematics)
New Tech Spaces
Culture
Efficiency Gameplay and post cost
Graphics vs. Animation
The problem (Animation, cinematics)
New Tech Spaces
Culture
Efficiency Gameplay and post cost
Graphics vs. Animation
Gameplay custom
Animation, cinematics (sub-problems)
Performance tracks
Animation, cinematics (sub-problems)
Performance tracks Lighting, camera, events
Animation, cinematics (sub-problems)
Performance tracks Lighting, camera, events
Gestures
Animation, cinematics (sub-problems)
Performance tracks Lighting, camera, events
Gestures Runtime adapt
Animation, cinematics (sub-problems)
Performance tracks Lighting, camera, events
Gestures Runtime adapt
Anim drivers
Animation, cinematics (sub-problems)
Performance tracks Lighting, camera, events
Gestures Runtime adapt
Anim drivers Animator control
Animation, cinematics (sub-problems)
Performance tracks Lighting, camera, events
Gestures Runtime adapt
Anim drivers Animator control
Blend graph
Animation, cinematics (sub-problems)
Performance tracks Lighting, camera, events
Gestures Runtime adapt
Anim drivers Animator control
Blend graph Size, reuse
Animation, cinematics (sub-problems)
Performance tracks Lighting, camera, events
Gestures Runtime adapt
Anim drivers Animator control
Blend graph Size, reuse
Variations
Animation, cinematics (sub-problems)
Performance tracks Lighting, camera, events
Gestures Runtime adapt
Anim drivers Animator control
Blend graph Size, reuse
Variations Reuse, character iteration
Animation, cinematics (sub-problems)
Performance tracks Lighting, camera, events
Gestures Runtime adapt
Anim drivers Animator control
Blend graph Size, reuse
Variations Reuse, character iteration
Events (tricky!)
Animation, cinematics (sub-problems)
Performance tracks Lighting, camera, events
Gestures Runtime adapt
Anim drivers Animator control
Blend graph Size, reuse
Variations Reuse, character iteration
Events (tricky!) What to expect
The problem (6 examples)
New Tech Spaces
Culture
Efficiency 1. Tools UI
2. Tools server
3. Asset management
4. Lighting, materials, FX
5. Animation, cinematics
6. Debugging
Debugging
Debugging
Debugging
Debugging
The problem (Debugging)
New Tech Spaces
Culture
Efficiency Speed to decision
The problem (Debugging)
New Tech Spaces
Culture
Efficiency Speed to decision
Separate analysis
The problem (Debugging)
New Tech Spaces
Culture
Efficiency Speed to decision
Separate analysis
"Actionable"
Debugging (sub-problems)Asset analysis
Debugging (sub-problems)Asset analysis Relationships & pivots
Debugging (sub-problems)Asset analysis Relationships & pivots
Game live connect
Debugging (sub-problems)Asset analysis Relationships & pivots
Game live connect Runtime-only info
Debugging (sub-problems)Asset analysis Relationships & pivots
Game live connect Runtime-only info
Actionable > Accurate
Debugging (sub-problems)Asset analysis Relationships & pivots
Game live connect Runtime-only info
Actionable > Accurate Few understand
Debugging (sub-problems)Asset analysis Relationships & pivots
Game live connect Runtime-only info
Actionable > Accurate Few understand
Debug menu
Debugging (sub-problems)Asset analysis Relationships & pivots
Game live connect Runtime-only info
Actionable > Accurate Few understand
Debug menu Controls & UX
Debugging (sub-problems)Asset analysis Relationships & pivots
Game live connect Runtime-only info
Actionable > Accurate Few understand
Debug menu Controls & UX
Peek/Poke from JS
Debugging (sub-problems)Asset analysis Relationships & pivots
Game live connect Runtime-only info
Actionable > Accurate Few understand
Debug menu Controls & UX
Peek/Poke from JS VS memory edit
Debugging (sub-problems)Asset analysis Relationships & pivots
Game live connect Runtime-only info
Actionable > Accurate Few understand
Debug menu Controls & UX
Peek/Poke from JS VS memory edit
JSON reports
Debugging (sub-problems)Asset analysis Relationships & pivots
Game live connect Runtime-only info
Actionable > Accurate Few understand
Debug menu Controls & UX
Peek/Poke from JS VS memory edit
JSON reports UI formatting
The problem (6 examples)
New Tech Spaces
Culture
Efficiency 1. Tools UI
2. Tools server
3. Asset management
4. Lighting, materials, FX
5. Animation, cinematics
6. Debugging
The problem (6 examples)
New Tech Spaces
Culture
Efficiency 1. Tools UI
2. Tools server
3. Asset management
4. Lighting, materials, FX
5. Animation, cinematics
6. Debugging
No "Right" or "Best" Answer...
The problem (6 examples)
New Tech Spaces
Culture
Efficiency 1. Tools UI
2. Tools server
3. Asset management
4. Lighting, materials, FX
5. Animation, cinematics
6. Debugging
...but some do suck less than others.
The problem (6 examples)
New Tech Spaces
Culture
Efficiency 1. Tools UI
2. Tools server
3. Asset management
4. Lighting, materials, FX
5. Animation, cinematics
6. Debugging
Twitter: @mike_acton
@insomniacgames