Zune HD programmeren

Voor de Zune HD kun je software schrijven met behulp van de XNA Game Studio 3.1 met de Zune HD Extensions. Daarvoor moet je je Zune wel geconnect hebben aan je computer. Anders krijg je onderstaande foutmelding. Dat is wel erg jammer, er is geen emulator zoals je hebt voor Windows Phone 7 development.

zunegame1

Door op de groene plus te klikken kun je aangeven welk device je wilt koppelen.

zunegame2

zunegame3 zunegame4zunegame5

In XNA Gamestudio 3.1 kun je kiezen voor een Zune Game 3.1. Dit kan alleen met C#. Voor andere .NET talen zijn geen templates aanwezig.

zunegame6

Als je daarvoor kiest, dan krijg je een solution met allerhande TODO’s.

zunegame7

Een Zune applicatie bestaat uit grofweg een paar delen. Een Program.cs file, daarin staat niets meer dan het runnen van de Game1 in Game1.cs. Een content folder, daar worden alle objecten zoals plaatjes, muziek etc in geplaatst, ongeveer gelijk aan de data directory van een website. Het andere plaatje (GameThumbnail.png) is voor het icoontje op de Zune.

Als je op F5 druk, dan zal de software gedeployed worden naar de Zune.

zunegame8

Op de Zune zul je dan een CornflowerBlue achtergrond zien. Met behulp van de XNA Game Studio Device Center kun je Screen Capture van de Zune maken.

zunegame9 zunegame10

Maar dan begint het pas he 😉 Dan wil je ook iets maken. Oke, ik ben niet zo’n geweldige Gamedesigner, dus verwacht er niet teveel van. Op internet heb ik een paar helper classes gevonden voor een TouchImageButton.

In de LoadContent zorg je voor de Texture, de Button en de GameFont. In de Draw methode bepaal je wat er allemaal getekend moet worden. In de Update methode zorg je dat de wijzigingen ook doorgevoerd worden.

zunegame13

zunegame14

zunegame15

De UpdateSprite methode zorgt voor een bouncing sprite (mijn foto).

Het resultaat:

zunegame11 zunegame12

En als je op de foto drukt met je vinger, dan zal de achtergrond wisselen naar blauw en de tellers zullen ophogen. Wel grappig is te zien, dat de DateTime.Now.ToLongTimeString() niet de juiste tijd terug geeft. Het is namelijk een uurtje later ten tijde van de schermafdruk.

Wel erg grappig om zo bezig te zijn met XNA en een Zune. Voor Windows Phone 7 ontwikkelingen zal XNA ook een belangrijke plaats innemen naast natuurlijk Silverlight.

Wat jammer is het, dat er geen Emulator is. Vreemd is ook als je applicatie start en daarna afsluit, dan gaat de Zune rebooten. Ik hoop niet dat dat voor Windows Phone 7 geldt.

Oja, zorg er wel voor, dat de Zune Software niet automatisch start als je de Zune koppelt. Het device kan maar door een applicatie gelijktijdig gebruikt worden. Daarnaast moet ook de schermbeveiliging uit zijn

This entry was posted in .NET, DotNetMag, Gadget, SDN by Marcel Meijer. Bookmark the permalink.

About Marcel Meijer

Op dit moment houdt hij zich voornamelijk bezig met Microsoft Azure, Cloud, C#, Software Ontwikkeling, Architectuur, Windows 10 en IoT. Hij werkt als Development Team Lead bij iFunds. In zijn vrije tijd is hij voorzitter, bestuurslid, eindredacteur en eventorganisator bij de SDN (Software Development Network). Sinds 1 oktober 2010 is hij MVP geworden.

One thought on “Zune HD programmeren

  1. Het rebooten gebeurt om er voor te zorgen dat de Zune niet via een app te hacken is. Bij Windows Phone 7 komt er een “echte” app marketplace waar ook 3th party apps in komen. Deze apps zullen niet rebooten.
    Ik vind het rebooten niet zo erg, het is vooral jammer dat XNA 3.1 apps geen gebruik kunnen maken van de wifi op de Zune HD.

Leave a Reply

Your email address will not be published. Required fields are marked *