Unity

Värt att nämna när det gäller att programmera kontroller i Unity.

På nästan alla tutroials/forum jag har läst så använder man sig av gui i Unity när man programmerar knappar/spakar. gui programmeringen fungerar väldigt bra men man ska också veta att gui programmeringen tar väldigt mycket kraft från mobilen jämfört med att inte använda sig gui funktionerna i Unity.

youtube

Kollade in ett youtube klipp om programmering till mobil i Unity.

Efter att man hade kollat in hans andra klipp pga första var bara hur man installerar unity så tyckte man att det såg helt okej ut. Men när andra hade slutat och man testade hans kod och får fram att koden inte fungerar så började man undra. Tänkte att han tar väll upp felen på nästa men där visar det sig att han har ett helt nytt script som han har tagit från någon annan:/

Det positivas var att en hade skrivit en bra läk bland kommentarerna på hans tredje del.

Där fanns det ett script för C# för mobiltelefoner som var väldigt bra. Nog det bästa scriptet jag har hittat på alla dessa veckor.

Det som var bra med detta skriptet är att det fungerar direkt utan massa krångel. En annan sak som också var bra var att skriptet var i C# och inte java som jag inte är lika bra på.

Nackdelar med C#

Något som jag har upptäckt genom programmeringen är att vissa rader kod skulle man kunna tro att de har samma som C# och Java. Men så är inte fallet. I stället finns det vissa rader kod som inte finns om man översätta koden rakt av.

Tex denna kod i Java:

function Update()
{
if ( iPhoneInput.touchCount > 0 && crashed )
{
Application.GarbageCollectUnusedAssets();
Application.LoadLevel( 0 );
}
}

Om man skulle översätta detta till C# skulle koden bli:

void  Update (){
if ( iPhoneInput.touchCount > 0 && crashed )
{
Application.GarbageCollectUnusedAssets();
Application.LoadLevel( 0 );
}
}
}

Tittar man på de två olika koderna så ser de princip lika dana ut MEN nu är det så att C# koden fungerar inte om man skulle översätta koden rakt av. För i C# finns inte .touchCount om man skriver iPhoneInput före. I C# kan man bara få touchCount om man skriver input.touchCount.

Och då kommer vi till det roliga. Iphonen förstår koden hur bra som helst när man skriver input.touchCount så jag förstår inte riktigt varför de har en iPhoneInput och AndoridInput när man kan lika bra använda sig av input.