380 likes | 481 Views
How to make a game using what you already know. Introduction To Windows Store Games. Chris Gardner Senior Software Engineer T & W Operations, Inc. About Me. However. What to do?. Page Source: http://www.earwolf.com/2012/01/professor-blastoff-afterthoughts-ntk/
E N D
How to make a game using what you already know Introduction To Windows Store Games Chris Gardner Senior Software Engineer T & W Operations, Inc.
What to do? Page Source: http://www.earwolf.com/2012/01/professor-blastoff-afterthoughts-ntk/ Image Source: http://cdn.earwolf.com/wp-content/uploads/2012/01/funny-otter-thinking-math-problem-blackboard-e1327399798312.jpg
Don’t Fight It Page Source: http://timsweek.blogspot.com/2010/05/10th-may-16th-may.html Image Source: http://2.bp.blogspot.com/_GGQNXs7CKns/S_YhiqWDg8I/AAAAAAAABpI/rkwmRj7bkEc/s320/Do-not-anger-the-gods1.jpg
Don’t Fight It – Go With It Page Source: http://seattle.cbslocal.com/2012/12/24/microsoft-patent-allows-long-distance-hugs-handshakes/ Image Source: http://cbsseattle.files.wordpress.com/2012/12/136647288.jpg?w=450
Some Stats • Windows Store Apps • 80% C# / WinRT • 14% WinJS • 6% Native
Some Stats • Windows Store Apps • 80% C# / WinRT • 14% WinJS • 6% Native • Source
Some Stats • Windows Store Apps • 80% C# / WinRT • 14% WinJS • 6% Native • Source • Undisclosed Page Source: http://drinkmemag.com/2010/03/the-liqourist/ Image Source: http://drinkmemag.com/wp-content/uploads/2010/03/behindthebar.jpg
Apply What We Know Page Source: http://www.differentdream.com/2010/01/brain-researchers-find-ptsd-marker/ Image Source: http://www.differentdream.com/wp-content/uploads/2010/01/1083012_thinking_out_of_the_box_3.jpg
Porting the Old XNA Code What do we really need to make this work as before Page Source: http://www.smbc-comics.com/index.php?db=comics&id=2158#comic Image Source: http://www.smbc-comics.com/comics/20110217.gif
What we need • Player Controlled Sprites
What we need • Player Controlled Sprites • Computer / AI Controlled Sprites
What we need • Player Controlled Sprites • Computer / AI Controlled Sprites • Interactions
What we need • Player Controlled Sprites • Touch • Computer / AI Controlled Sprites • Interactions
What we need • Player Controlled Sprites • Touch • Mouse • Computer / AI Controlled Sprites • Interactions
What we need • Player Controlled Sprites • Touch • Mouse • Keyboard • Computer / AI Controlled Sprites • Interactions
What we need • Player Controlled Sprites • Touch • Mouse • Keyboard • Controller • Computer / AI Controlled Sprites • Interactions
What we need • Player Controlled Sprites • Touch • Mouse • Keyboard • Controller • Computer / AI Controlled Sprites • Event Driven (Button Press) • Interactions
What we need • Player Controlled Sprites • Touch • Mouse • Keyboard • Controller • Computer / AI Controlled Sprites • Event Driven (Button Press) • Time Driven (Automatically Created) • Interactions
What we need • Player Controlled Sprites • Touch • Mouse • Keyboard • Controller • Computer / AI Controlled Sprites • Event Driven (Button Press) • Time Driven (Automatically Created) • Interactions • Collision Detection
What we need • Player Controlled Sprites • Touch • Mouse • Keyboard • Controller • Computer / AI Controlled Sprites • Event Driven (Button Press) • Time Driven (Automatically Created) • Interactions • Collision Detection • State ( Score and Lives )
Touting the Party Line Kool Aid is Awesome Page Source: http://hietzinger.com/2013/02/05/words-of-wisdom/ Image Source: http://hietzinger.com/wp-content/uploads/2013/02/keep-smilling-and-drink-the-kool-aid.png
Data Bound Objects Do NOT do a Google Image search for “Binding”
Demo 1 ( through 9 ) Let’s do this…
Demo 1 Postmortem • IT WORKS!
Demo 1 Postmortem • IT WORKS! • Too many things on the UI Thread
Demo 1 Postmortem • IT WORKS! • Too many things on the UI Thread • INotifyPropertyChanged must be called on UI
Taking a Few Liberties Let’s bend the rules a little Page Source: http://singleton-institute.com/2012/06/bending-or-breaking-the-rules-the-intrapreneurial-dilemma/ Image Source: http://singleton-institute.com/wp-content/uploads/2012/06/intrapreneurship_Bend_the_Rules-225x300.jpg
UI Injection • Premise • Run everything you can in the background • When necessary, send small commands to UI
Demo 2 (errrr, 10) Because, who doesn’t love threads calling threads…? Page Source: http://xkcd.com/670/ Image Source: http://imgs.xkcd.com/comics/spinal_tap_amps.png
Demo 2 Postmortem • Cleaned up UI Thread • Added a LOT of complexity • Locks • await / async calls
Think Like a Game Designer Who needs rules, anyway? Page Source: http://evansheline.com/2010/12/break-wall-to-escape-wait-what/ Image Source: http://evansheline.com/wp-content/uploads/2010/12/break-wall.jpg
Recreate XNA! • NOTE: This code is still in “BETA”
Recreate XNA! • NOTE: This code is still in “BETA” • By that, I mean the code runs so fast, the game is slightly unplayable…
Demo 3 (Or something) Factory Smoke NOT Included
Thank You Questions? Chris Gardner cgardner@tnwops.com http://www.tnwops.com @freestylecoder http://blog.freestylecoding.com http://www.extra-life.org/participant/cgardner