Du bist nicht angemeldet.

Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!

Werbeanzeige

infusion93

Frischling

  • »infusion93« ist der Autor dieses Themas

Beiträge: 19

Wohnort: Frankfurt

Beruf: Informatikstudent

  • Private Nachricht senden

1

30.05.2015, 12:51

Unity: Umgehen mit verschiedenen Formaten (richtige Kamera-Einstellungen)

Liebe Community,

Ich möchte verschiedene 2D Spiele für Android und Windows Phone programmieren, der Bereich des Spiels soll jeweils konstant sein, die Kamera soll sich also nicht bewegen. Ich möchte außerdem, dass das Spiel in 3:4 (z.B. Iphone) fast genauso aussieht wie in 9:16 (so ziemlich jedes Handy). Ich habe mich darüber schon ein wenig informiert und herausgefunden, dass man dafür einen sicheren Bereich hat, der bei beiden Formaten gleich aussieht. Den Rest füllt man mit unwichtigem Hintergrund. Der sichere Bereich hat hierbei ein Format von 2:3. Hier mal ein Bild, damit ihr euch vorstellen könnt, was ich meine.


(Link)

Quelle: http://v-play.net/doc/vplay-different-screen-sizes/

Nun frage ich mich, wie ich das in den Einstellungen so umsetzen kann. Die Kamera müsste also genau auf diesen 2:3 Bereich zeigen und je nachdem, ob es sich um 9:16 oder 3:4 handelt, der restliche Hintergrund angezeigt werden.

Vielleicht kann mir ja einer von euch weiterhelfen.

Mit freundlichem Gruß:
Marcel Gebhardt

2

30.05.2015, 13:10

Wenn der Bereich vom Level oder was auch immer größer ist als das Display würde ich auf diesen Ansatz verzichten.
Da auf dem Handy eh schon alles so klein ist. Alles was sich ausserhalb des Displays befindet, wird nicht mit gerendetet, Stichwort cliping.
So sieht man zwar auf unterschiedlichen Handys mal bissi mehr mal bissi weniger, aber schöner wie ständig ein Rand zu haben.

Dein Ansatz könnte folgender Maßen gemacht werden:
  • ganze Display mit dem gewünschten Hintergrund rendern
  • wahlweise nur bis in den "sicheren Bereich"
  • dann den Spielinhalt mit dem entsprechenden View (ausgehend von der Mitte des Views) in die Mitte des Displays rendern
Wer aufhört besser werden zu wollen hört auf gut zu sein!

aktuelles Projekt:Rickety Racquet

3

30.05.2015, 17:33

Ich würde die Szene einfach genau so gestalten, wie in deinem Bild. Der Rest wird dann ja automatisch abgeschnitten. Falls du GUI Elemente hast, kannst du die über das neue RectTransform gut platzieren und an der jeweiligen Ecke verankern.

Ich finde Hearthstone ist ein gutes Beispiel für die Lösung zu deinem Problem. Das Spiel wurde auch in Unity umgesetzt. Einfach im Fenstermodus ausführen und mit der Fenstergröße spielen. :-)
Mein Kaktus ist weder klein noch grün.

Werbeanzeige