Multiplatform Development Benjamin Nitschke CTO Delta Engine & exDream & MobileBits MobileBits GmbH MobileBits GmbH Lerchenstrasse 28 22767 Hamburg [email protected].

Download Report

Transcript Multiplatform Development Benjamin Nitschke CTO Delta Engine & exDream & MobileBits MobileBits GmbH MobileBits GmbH Lerchenstrasse 28 22767 Hamburg [email protected].

Multiplatform Development Benjamin Nitschke

CTO Delta Engine & exDream & MobileBits

MobileBits GmbH

MobileBits GmbH Lerchenstrasse 28 22767 Hamburg [email protected]

Who is MobileBits?

• Founded 2009 by Holtz, Griga, Nitschke & Wysk • Focus on Mobile Games • Developed many smaller Mobile Games • iSkat, ZombieParty, FlightSchool, Ewe Doodle, ..

• Also is developing

www.DeltaEngine.net

• Allows developing games and apps in Windows • Deploys with one click on many platforms: • iPhone, iPad, Android, WP7, Xbox 360, Windows, MacOS, Linux, and many more

2

Who is MobileBits?

• Same team as exDream, known 10+ years for:

• Twork (1997), WebWars (2000) • Rosho: Games for Kids (2001) • EuroVernichter (.NET, 2003) • Arena Wars (RTS, first commercial .NET game, 2004) • Armies of Steel (Prototype, RTS, 2005) • Rocket Commander (Open Source, 2005) • XNA Racing Game (Xbox 360, first XNA game, 2006) • Arena Wars Reloaded (RTS, 2007) • Fireburst (PC, Xbox 360, PS3, UE3, 2009/2011) • ZombieParty (iPad Party Game, 2010) • SoulCraft (iPhone, Android, WP7, 2011) • Many smaller iPhone Games and other projects …

3

What is the Delta Engine?

• Developed to create games for all AppStore platforms at once • High quality 3D RPG game SoulCraft to demonstrate the capabilities and speed • MobileBits cooperates with companies like NVIDIA, EA, Chillingo, Microsoft, Bigpoint and more

4

What is the Delta Engine?

Develop with .NET for all AppStore platforms

No need to learn different and dated languages for different platforms such as iPhone, Android and WP7

Easy to learn and to build

Use your favorite Windows-tools, check out our examples and just press the magic button to build for other platforms

Lightweight and fast

We did the hard work to optimize performance for all platforms - just include the parts you need for your game

Teamwork made easy

With our advanced content management system, editors for game designers and full support of all your favorite tools

Assets and code are Open Source

The Delta Engine and our example games are Open Source and you are invited to participate or to integrate other libraries

6

4

Early version of the Soulcraft Tech Demo in January 2011 at the CES in Las Vegas with NVidia 7

Soulcraft Tech Demo

Demo Time!

8

ZombieParty runs already on many Platforms October 2010 9

Why Multiplatform?

• Past: Only Windows Game Development • Recent: Shift towards Consoles, iPhone • Present: One platform or all platforms • Most teams still focus on one platform • Or you need an engine to be on many platforms • Examples: • Unreal Engine 3 (Consoles) • Unity (mostly iPhone) • XNA Framework (mostly Xbox 360)

10

Why Multiplatform?

PC

2003

Consoles Mobile 31% 3% 66% PC 30% 17%

2009

Consoles Mobile 53% 57% PC

2011

Consoles Mobile 23% 20%

11

Why Multiplatform?

• •

Why not just develop iPhone Games?

Mobile game market is shifting towards Android and WP7 And growing on all platforms and devices (e.g. tablets this year) Most apps are games (iPhone, Android, WP7), but usually costs only 99 cents.

Sell many apps on many platforms!

10 bn USD (2015) 1 bn USD (2009) 12

Why is our engine different?

• Most other engines are either: • Black boxes (Unity, UDK, Editors, Modding) • Just graphic frameworks for specific platforms (DirectX, XNA, OpenGL ES) • Or huge native code engines with high license costs (only suitable for big teams: Unreal, CryEngine, etc) • We like .NET, it allows more rapid development!

• Only recently possible on all platforms • Xbox 360, WP7, Windows -> Microsoft • iPhone, Android, Linux, Mac -> Novell

13

Platforms and Languages

• Most platforms have specific frameworks and usually only support 1-2 languages well: •

iPhone

: Objective-C (not very pretty) •

Android

: Java (lots of config files, can compile C too) •

Windows Phone 7

: Only C# (Silverlight or XNA) •

Xbox 360

: Native C++ (XDK, or C# with XNA, Xbla) •

PS3, Wii

: C++ (have their own frameworks, ES) •

Linux

: Mostly C++ (gcc), Java, also .NET (Mono) •

MacOS

: Objective C and C++ mostly •

Windows

can do everything (.NET, Java, Scripts, …)

14

C++ vs C# (setup graphics)

13

Open Source vs Proprietary

Unity3D: Closed Model

Game Code Game Assets Unity Editor Unity Engine Modules & Features (not customizable) Black Boxes (Closed)

Delta Engine: Open Model

Game Code Game Assets Delta Engine Framework Delta Engine Modules Third Party Engine Modules Custom Modules Customizable (Open)

16

Extremely Open Engine

• Source code available for free (starting July 2011) • Develop and publish your games on Windows • No costs for you!

• If you want to deploy on any other platform than Windows: • You need a Delta Engine Multiplatform license • Access to easy to use tools (Launcher, Simulators) • Which will be cheap or royalty based, no worries • One click deploy, fast and easy with the Launcher

17

Launcher Addin for VS

• Directly integrated into Visual Studio 2010 • Also available as Standalone App for Testers • Starts programs, games, tests, tutorials, samples on all supported devices • Also shows lots of information about your project (Tests, Assemblies, Todo-List, etc.)

e.g. Start Unit Tests 18

Content, Content, Content

• Today's games are mostly content driven • Especially on Consoles and PC • You usually have a powerful engine ready to go • Sharing content between games was almost impossible in the past, formats changed too often • The Delta Engine makes all content always available and will always work on all supported platforms

19

Content, Content, Content

• Example with XNA on Windows Phone 7 • Artist saves .png image file or 3D Model • Content pipeline converts all files to .xnb

• .xnb is the only format allowed for WP7 • Images are best stored as DDS files • XNA’s content pipeline does the conversion for you • 3D Models or Levels often need custom importers because of different needs

20

Content, Content, Content

Step 1

: Add Content file to Content Project

Step 2

: Load and use content in code

20

Content, Content, Content

• Many content files depend on each other usually • With the Delta Engine it works very similar and on all platforms, content is just not needed at compile time!

• Things get more complex if you add more platforms

20

Content, Content, Content

• When testing on Windows needs 1-2 files per content • Makes no sense to keep all formats for all platforms.

• Converting formats takes time. For example a single 2048x2048 iPhone PVR Texture takes 30-40 seconds to save on really fast PC with 3.6Ghz (we got hundreds) • So content is only converted when you actually need it and it has been changed (cache) • Content is processed on Servers in the Cloud (currently one server can handle everything, but this will be expanded as more demand is needed)

21

Content, Content, Content

• Content is always automatically requested and build, there is no button to do it and a human will make too many mistakes choosing options anyway.

• Instead the build server decides all this and makes sure all content files work together, optimized as much as possible • Unused content is removed, Atlas textures are generated, content is optimized by the shaders used • Crazy compression rates of 100:1 and more, which is really required for mobile games (ZombieHockey 2.8MB on WP7, 6 MB iPhone, PC version is 40MB, uncompressed >120MB)

22

Content, Content, Content

Example Atlas Textures (generated automatically, 2D & 3D)

23

Delta Engine Release

Questions? I hope you liked the presentation and the Engine.

Delta Engine Release July 2011

(v0.9) v1.0 coming end 2011

www.DeltaEngine.net

Already working on Windows, MacOS, Linux, iPhone, iPad, Windows Phone 7, Android, Android Tablets, Nvidia Tegra, Xbox 360 and more soon 

24

Thank you for your attention Benjamin Nitschke

CTO Delta Engine & exDream & MobileBits

MobileBits GmbH

MobileBits GmbH Lerchenstrasse 28 22767 Hamburg [email protected]