WPUG - 3D Multiplayer from iOS and Android to WP8
Upcoming SlideShare
Loading in...5
×
 

WPUG - 3D Multiplayer from iOS and Android to WP8

on

  • 1,334 views

Presented at Windows Phone User Group in London (22/04/2013).

Presented at Windows Phone User Group in London (22/04/2013).
Video: https://vimeo.com/64767100
More info: http://multiplay.io

Statistics

Views

Total Views
1,334
Views on SlideShare
1,318
Embed Views
16

Actions

Likes
1
Downloads
1
Comments
0

1 Embed 16

https://twitter.com 16

Accessibility

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

WPUG - 3D Multiplayer from iOS and Android to WP8 WPUG - 3D Multiplayer from iOS and Android to WP8 Presentation Transcript

  • iOS vs Android vs Windows PhoneWindows Phone User Group Edition@multiplayio#wpdevPhone Wars
  • In a galaxy far far Away.…@multiplayio#wpdev
  • Hello@multiplayio• Architecture Overview• Gameplay Demo• Getting Started• C# and C++• Direct3D and OpenGL• Controls• File Access• Profiling• Publishing• Bonus Demo• Q&A#wpdev
  • @multiplayio3D Multiplayer Multi-Platform Games Engine#wpdev
  • Framework LayerEngineApp Layer Platform Layer@multiplayioSupporting Multiple PlatformsRenderer APIApp#wpdevControls APIFile APIScenesObjects
  • Java C++@multiplayioAndroid onTouch#wpdevonTouch onTouchFramework LayerControls API
  • Objective C C++@multiplayioiOS onTouch#wpdevonTouch onTouchFramework LayerControls API
  • Framework Layer Device Layer@multiplayioOpening a File on iOS#wpdevOpenFile OpenFileC++fopenAppObjective CGet iOS UserFolderfreadfclose
  • @multiplayio#MongoDBdaysCross-Platform Hybrid Multiplayer StackMongoDBSocketsNodeJSNetworkingLogicWebViewDOM/Canvas AppWebGLAppNative AppApp
  • Gameplay Demo@multiplayiohttp://multiplay.io/play/phonewars#wpdev
  • Getting Started@multiplayio#wpdev• Folder structure• Debug Configurations• .vcproj files• <IncludePath>• Bundling assets• packager.bat
  • Getting Started@multiplayio#wpdev
  • Getting Started@multiplayio#wpdev
  • Getting Started@multiplayio#wpdev
  • Just include all source files and you’re done@multiplayio#wpdev
  • Search Paths (Sorry)@multiplayio#wpdev
  • Bundle a folder@multiplayio#wpdev
  • Bundle a folder@multiplayio#wpdev
  • C# and C++@multiplayio#wpdev• XAML required for good OS integration• Use DispatchTimer to stay in the same thread• Messaging C++ and back• Scary ^ % symbols• Converting from WinRT types and back
  • Messaging C++@multiplayio#wpdev
  • Messaging C++@multiplayio#wpdev
  • Messaging C++@multiplayio#wpdev
  • Messaging C#@multiplayio#wpdev• You can’t officially• Workaround have C# poll C++
  • Framework LayerEngineApp Layer Platform Layer@multiplayioDirect3D for OpenGLRenderer APIApp#wpdevControls APIFile APIScenesObjects
  • RendererRendererD3DRendererOGLRenderer@multiplayioSupporting Direct3D#wpdevSetBlend GLEnable(GL_BLEND)Direct3DOpenGLOMSetBlendStateSetBlend GLEnable(GL_BLEND) glEnable(GL_BLEND)
  • @multiplayioSupporting Direct3D#wpdev
  • @multiplayioSupporting Direct3D#wpdev
  • Supporting Direct3D@multiplayio#wpdev• Beware of Draw Calls• Transpose matrices• No runtime shader compiler• Open source alternative - ProjectAngle• Minimal changes to support Windows 8• No out of the box JPG PNG support• Use libPNG and libJPEG• Cocus2D Open Source Example
  • Direct3DInterop Platform Layer@multiplayioControls#wpdevOnPointerPressed touchBeginFramework LayerControls API
  • Controls@multiplayio#wpdev
  • Controls@multiplayio#wpdev
  • Controls@multiplayio#wpdev
  • File Access@multiplayio#wpdev• Marble Maze• BasicReaderWriter.cpp
  • Framework Layer Device Layer@multiplayioOpening a File on iOS#wpdevOpenFile OpenFileC++fopenAppObjective CGet iOS UserFolderfreadfclose
  • File Path@multiplayio#wpdev
  • Read Data@multiplayio#wpdev
  • Read Data@multiplayio#wpdev
  • Platform::Array<byte>@multiplayio#wpdev
  • Profiling@multiplayio#wpdev• Memory not supported for D3D Apps• Do it manually• On device profiling tricky
  • Profiling@multiplayio#wpdev• Memory not supported for D3D Apps• Do it manually• On device profiling tricky
  • Publishing@multiplayio#wpdev• Change only on fail• ARM• Debug on Native for screenshots• PEGI - https://wp-rating.pegi.eu/Games/Submit• Markets• In-App Purchasing• WMAppManifest.xml
  • @multiplayioEditor Demo#wpdev
  • @multiplayioQUESTIONS?#wpdev
  • @multiplayioTHANKS!“Fast Delivery. Changed my life.Should present again. A+++++”- iBot5“I wanted to be a pop star before this, butnow I just want to program JavaScript!”- Zombie Justin B.#wpdev