[cz] MonoGame framework, mDevCamp 2013

Post on 02-Jul-2015

364 views 2 download

description

Slajdy k přednášce o frameworku MonoGame, na konferenci mDevCamp 2013, Tomáš Slavíček

Transcript of [cz] MonoGame framework, mDevCamp 2013

Multiplatformní vývoj herpomocí MonoGame

Tomáš SlavíčekMVP – XNA/DirectX, MS Student Partner

@tomasslavicek http://tomasslavicek.cz

Agenda

• herní frameworky – můj pohled

• XNA a MonoGame

• Xamarin

• praktická ukázka

• vady, nevýhody? :)

Herní framework / engine

• jednoduchost použití, rychlost vývoje

• multiplatformnost

• náročnost portace

mezi platformami

• cena, poplatky

• komunita

XNA Framework

• pro PC, Xbox 360, Windows Phone 7…

• nadstavba DirectX,

jazyk C#

• herní smyčka, Content Pipeline

operace s vektory…

Herní smyčka

• sada připravených metod

MonoGame

• opensource implementace XNA

• iOS, Android, Mac, Linux,

Windows 8, Ouya…

• nad DirectX i OpenGL

MonoGame – hry

MonoGame – hry

MonoGame – hry

MonoGame – hry

MonoGame – hry

• desktop PC

• Xbox 360

• Windows Phone 7

• přehrávače Zune

• Windows 8 / RT

• Windows Phone 8

• iOS, Mac

• Android, Ouya

• PlayStation

• Linux…

*2004 – †2012

MonoGame

• kompatibilní většina kódu s XNA

• velmi aktivní projekt

• je zdarma*

MonoGame

pro Android a iOS je nutné

mít licenci na Xamarin

• kompatibilní většina kódu s XNA

• velmi aktivní projekt

• je zdarma*

Xamarin

• vývoj v C# pro iOS, Android a Mac

• implementace Mono

Xamarin

• vývoj v C# pro iOS, Android a Mac

• implementace Mono

• vlastní nástroje: Xamarin Studio, návrh

UI…

• přístup k nativním API

• vývoj na Mac i Windows

Xamarin.Android

• Mono je runtime „vedle Dalvika“

• vykonáváno just-in-time

• možné volat .NET funkce, Android API

i binding na Java knihovny

Xamarin.iOS

• aplikace kompilovány přímo

do strojového kódu platformy

• opět možný binding na externí knihovny

(Flurry, TapJoy…)

• lze i z Visual Studia na Windows!

Xamarin – ceny

• pro MonoGame zatím nelze FREE

Xamarin – ceny

• $299 za 1 platformu (Android, iOS…)

• licence napořád, podpora jen na rok

• možnost slev:

• studenti: $99, univerzity: $79

MonoGame – instalace

• pomocí instalátoruhttp://monogame.codeplex.com/

• ze zdrojákůhttps://github.com/mono/MonoGame

MonoGame – instalace

• pomocí instalátoruhttp://monogame.codeplex.com/

• ze zdrojákůhttps://github.com/mono/MonoGame

• branch develop

• stáhnout i ThirdParty/Libs

• pozor na verzi SharpDX

• přidat referenci do Visual Studia

Konečně ukázka :)

• projekt pro iOS

• stejný benchmark

MonoGame vs. XNA

• není Content Pipeline

• content pro iOS se musí kompilovat zvlášť

MonoGame vs. XNA

• není Content Pipeline

• content pro iOS se musí kompilovat zvlášť

• občas ještě mezery

• render do textury, průhlednost, pokročilejší 3D…

• chyby… (ale řeší je)

MonoGame vs. XNA

• není Content Pipeline

• content pro iOS se musí kompilovat zvlášť

• občas ještě mezery

• render do textury, průhlednost, pokročilejší 3D…

• chyby… (ale řeší je)

• nutné řešit platformově specifické věci

• message boxy, in-appy…

(Ne)výhody

• pořád ještě docela low-level

• nejde hra „naklikat“ :)

• můžeme ale zase docela hluboko…

(Ne)výhody

• pořád ještě docela low-level

• nejde hra „naklikat“ :)

• můžeme ale zase docela hluboko…

• složitější portace

• nejde jen kliknout „exportuj pro iPhone“

Další materiály

• rozcestník na SmartMania.czhttp://bit.ly/xna_smartmania

Děkuji za pozornost!

Tomáš SlavíčekMVP – XNA/DirectX, MS Student Partner

@tomasslavicek http://tomasslavicek.cz