Jump to content
Unity Insider Forum

[iPod / iPad] Steuerungen


malzbie

Recommended Posts

Hallo Leute.

Ich programmiere gerade an einem Spiel, welches auf iPod /iPad spielbar sein soll.

Ich habe sogar schon die Lizens für iPod gekauft.

Dumm nur, dass ich keinen Mac habe und auch nicht wusste, dass garnix von den Funktionen ohne MAC geht. So kann ich die Remotecontrol auch nicht nutzen. :(

Ein MAC wird bald (ca. 2 Monate) da sein.

Da ich aber nichts testen kann, jedoch ein Kumpel von mir, würde ich gerne die Steuerungsscripte mal für den iPod umschreiben, weiss aber überhaupt nicht, wie ich die Maussteuerung ersetzen kann.

 

Wie würde ich eine Positionsabfrage wie hier schreiben?

 

var e : Event = Event.current;
//Debug.Log(e.mousePosition);


if (e.mousePosition.x > 250 && e.mousePosition.x < 670){

// Start Game
if ( e.mousePosition.y > 130 && e.mousePosition.y < 180){

	if(e.button == 0 && e.isMouse){
		loadgame=true;
	}
}

 

Die Maus gibt es ja nicht.

 

Funktioniert denn sowas wie hier ohne Probleme?

 

if (GUI.Button ( Rect ( 760,500,100,100), button_right)){

 

Oder sind da auch spezifische Befehle nötig?

 

Wenn irgendwer zu diesen 2 Steurungsabfragen etwas sagen kann, würde ich mich sehr freuen.

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hallo Andreas,

 

die GUI-Methoden funktionieren alle, aber die Maus nur partiell. Ich würde Dir empfehlen, die Maus überhaupt nicht zu verwenden, sondern über die Input-Touch-Logik zu gehen, wenn als Build-Target iPhone/iPad angegeben ist. Schau Dir mal in der Onlinehilfe die Input-Klasse und dort alle Properties und Funktionen die Touch beinhalten an.

Das Penelope-Tutorial ist ein gutes Beispiel, um mit der iPhone-Programmierung zu beginnen.

Neben der Problematik mit der Maus musst Du unbedingt die schlechtere Hardware (Texturegrössen und Anzahl der Objekte/Drawcalls) beachten. Auch die Bildsschirmauflösung ist ein nicht zu unterschätzendes Thema!

Grundsätzlich ist es leichter ein iPhone/iPad Game auf Mac/Pc zu portieren als umgekehrt.

 

Harry

Link zu diesem Kommentar
Auf anderen Seiten teilen

Danke für deine Antwort! :)

Wenigstens die GUIs funktionieren...gut.

 

Ich würde ja gerne das ein oder andere Tut für iPod machen, da ich aber noch keinen MAC habe, kann ich diese ganzen Funktionen nicht testen. Ich kann nämlich bei den Buildeigenschaften nicht auf iPod umschalten.

Naja, ich muss wohl versuchen über die Tutorials (also die Scripte davon) herausfinden, wie es geht und einfach ins blaue programmieren, damit mein Kumpel das mal testen kann. (Der hat nämlich ein Mac, kann aber nicht programmieren)

 

Ach so, ich baue das Ganze schon in der iPod Auflösung auf. Und die Shader und Szenen werden von meinem Kumpel für die schwache Performance angepasst. Da liegen wir gut im Rennen (wenn ich nicht irgend einen Bock beim Programmieren mache).

Trotzdem Danke für die Hinweise. :)

Link zu diesem Kommentar
Auf anderen Seiten teilen

  • 2 months later...

So, jetzt ist es soweit und ich habe das erste Build für den iPad / iPod gemacht.

Und natürlich sind gleich Probleme aufgetreten.

MouseDown und MouseUp gehen nicht, hab ich aber schon gewusst.

 

Schlimm ist aber, dass ich 2 Joysticks im Game habe. Der eine steuert eine Jugel und der andere die Kamera.

Komischerweise steuern beide Joysticks die Kamera!!! Also Joystick1 steurt die Kugel und gleichzeitig nimmt er die Kamera mit. Joystick2 steuert nur die Kamera und hat keinen Einfluss auf die Kugel.

Die Kamera hat ein abgewandeltes Mouseorbit Script.

Ganz seltsam, denn ich habe alles nochmal richtig überpruft und mit der Unity Remotecontrol funktioniert das auch einwandfrei. (Das heisst aber nicht viel, denn da gehen auch die Mouse-Befehle)

Nur eben nicht wenn es für das iPad gebaut ist.

 

Hat jemand eine Idee?

 

Ich wäre für jeden Ansatz dankbar! :)

Link zu diesem Kommentar
Auf anderen Seiten teilen

  • 2 weeks later...

Hallo Andreas,

 

ich denke mal daß Du mit Input.mousePosition arbeitest. Nimm doch einfach mal die Touchpad-Controls aus den Standard-Assets (mobile). Oder falls Du dennoch mit mouseposition arbeiten willst, musst Du zusätlich mit definierten Rects arbeiten, um zu prüfen ob Du überhaupt diesen Input verwenden willst.

 

Harry

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hi Harry.

Ne, ich arbeite eigentlich nicht mit der Mouseposition. Diese Joysticks sind diese standard Mobile Assets. Also schon mit Touch Funktion.

 

Dieses Touchsystem ist ja schon klasse, aber auch uuuuumständlich.

 

An sich geht das mit den Joysticks ja. Ich habe da 2 Felder die für meine Padbereiche definiert sind. Nur aus irgend einem Grund gibt der Bereich für die bewegung der Kugel auch infos ans Kamerascript weiter. Anders herum nicht.... :huh: Also wenn ich die Kamera mit dem rechten Pad bewege, dann bekommt auch wirklich nur das Kamerascript infos.

Leider hatte ich keine Zeit mehr daran weiter zu werkeln. Vielleicht bald mal wieder.

 

Trotzdem Danke für deinen Tipp. :)

Link zu diesem Kommentar
Auf anderen Seiten teilen

Archiviert

Dieses Thema ist jetzt archiviert und für weitere Antworten gesperrt.

×
×
  • Neu erstellen...