Widescreen

Übersicht BlitzBasic Allgemein

Neue Antwort erstellen

Jamagin

Betreff: Widescreen

BeitragMo, Apr 23, 2012 21:20
Antworten mit Zitat
Benutzer-Profile anzeigen
Hallo!

Da schon viele Spiele in Widescreen programmiert werden, möchte ich hier mal fragen wie ihr das macht?
Beispiel Bejeweled 3 unterstützt 3 Grafikmodi
1... 800x600
2... 1024x768
3... Ultramode (1920x1080 kann auch varieren)

Werden da die Grafiken und die Programmroutinen eigens für diesen Modus (Ultra) programmiert oder wird da einfach mit den Skalierfaktor gerechnet?

Hat da jemand schon ein Programm mit diesen Varianten programmiert?

Würde mich auf Antworten sehr freuen!


lg. Jamagin
Bevor du etwas neues beginnst, erledige das alte

Xeres

Moderator

BeitragMo, Apr 23, 2012 21:39
Antworten mit Zitat
Benutzer-Profile anzeigen
Man kann nicht einfach alles in die Länge ziehen, dass dürfte in manchen Fällen nicht so toll aussehen. Wenn man nicht simple schwarze Ränder in einem Modus benutzt, muss man womöglich für das andere Format irgendwie kompensieren.
Am einfachsten geht es, wenn man sich von Anfang an Gedanken drum macht.
Win10 Prof.(x64)/Ubuntu 16.04|CPU 4x3Ghz (Intel i5-4590S)|RAM 8 GB|GeForce GTX 960
Wie man Fragen richtig stellt || "Es geht nicht" || Video-Tutorial: Sinus & Cosinus
T
HERE IS NO FAIR. THERE IS NO JUSTICE. THERE IS JUST ME. (Death, Discworld)

Jamagin

BeitragMo, Apr 23, 2012 21:47
Antworten mit Zitat
Benutzer-Profile anzeigen
@Xeres,

ja natürlich! Ich mache mir ja Gedanken darüber, weil ich ein Projekt machen muß das eben auch den Widescreen unterstützen sollte! Da ich seit gestern auf Windows 7 umgestiegen bin, hatte ich gleich erstmals einen Aha-Effekt bzgl. Vollbildmodus bei 1024x768. Unter Windows XP wurde in diesem Modus die Grafik gewaltig in die Länge gezogen!

Anmerkung: Mein Monitor hat eine Auflösung von 1920 x 1080

Nun, wenn ich den Vollbildmodus habe (1024x768) habe ich eben links und rechts diese schwarzen Flächen. Und aus diesem Grunde habe ich ja gefragt ob es besser ist, die Grafiken für den Ultramodus eigens zu erstellen und auch die Programmroutinen (wegen der Koordinaten etc.) oder eben von der Auflösung 1024x768 ausgehend mit Skalierfaktor zu arbeiten, was aber denke ich nicht sehr kompakt wäre!

lg. Jamagin
Bevor du etwas neues beginnst, erledige das alte

count-doku

BeitragMo, Apr 23, 2012 21:55
Antworten mit Zitat
Benutzer-Profile anzeigen
Kannst du nicht einfach alle Objekte etc. so lassen und einfach den Sichtbereich vergrößern?

Dann müsste doch alles gleichaussehen etc. wenn man mit relativen Koordinaten arbeitet wird doch auch alles an der richtigen Stelle sein. Der Spieler mit größeren Monitor sieht dann halt nicht z.B. immer nur 16x8 tiles des feldes sondern 20x12 oder so.

BladeRunner

Moderator

BeitragMo, Apr 23, 2012 21:59
Antworten mit Zitat
Benutzer-Profile anzeigen
das wäre unfair da es den Spieler mit dem Widescreen mit mehr Überblick belohnt Wink
Zu Diensten, Bürger.
Intel T2300, 2.5GB DDR 533, Mobility Radeon X1600 Win XP Home SP3
Intel T8400, 4GB DDR3, Nvidia GF9700M GTS Win 7/64
B3D BMax MaxGUI

Stolzer Gewinner des BAC#48, #52 & #92

count-doku

BeitragMo, Apr 23, 2012 22:02
Antworten mit Zitat
Benutzer-Profile anzeigen
naja kommt darauf an. Wenn man bsp. nur das sieht was man schon erkundet hat nicht unbedingt.
Oder man macht halt die GUI größer um das auszugleichen, denke nur, dass es so einfacher ist.

Klar, die "beste" Lösung ist einfach für jede Res die Grafiken zu erstellen. So können diese sich auch gleich verbessern. Wenn ich was auf 3x skaliere siehts auchnichtmehr gut aus xD

Xeres

Moderator

BeitragMo, Apr 23, 2012 22:19
Antworten mit Zitat
Benutzer-Profile anzeigen
Ich würde behaupten, der Code sollte für jedes Seitenverhältnis der Selbe sein. Grafik würde ich so groß wie maximal nötig erstellen und für alles kleinere herunter skalieren, dann gibt es kein Qualitätsverlust.
Was exakt man für Widescreen machen sollte oder umgekehrt, könnte ich pauschal nicht sagen. Am besten ausprobieren.
Win10 Prof.(x64)/Ubuntu 16.04|CPU 4x3Ghz (Intel i5-4590S)|RAM 8 GB|GeForce GTX 960
Wie man Fragen richtig stellt || "Es geht nicht" || Video-Tutorial: Sinus & Cosinus
T
HERE IS NO FAIR. THERE IS NO JUSTICE. THERE IS JUST ME. (Death, Discworld)

Jamagin

BeitragMo, Apr 23, 2012 22:33
Antworten mit Zitat
Benutzer-Profile anzeigen
@count-doku,

naja, das ist nicht so einfach.

Beispiel: Ich habe ein Feld 9x9 bzw. 10x10. Diese Felder hätten eine Größe von 64x64. Bei 10 Feldern ergibt das 640 Pixel. Bei einer Auflösung von 1024x768 habe ich dann noch 128 Pixel übrig. Nun plaziere ich das erste Feld in Y auf 64. Somit bleiben auch am unteren Rand 64 Pixel übrig. Ändere ich nun auf Widescreen sollen auch nur eben 9x9 oder 10x10 Felder da sein. Also es sollte alles exakt gleich bleiben. Bei Widescreen ist halt alles größer dann!

Wenn ich nun 10x10 Felder habe, hätten die eine Größe von 95 bzw. 96 Pixel. Dadurch verändert sich aber auch der Randabstand, was auch Xeres schon angesprochen hat. Wenn die Feldgröße aber bei 64x64 Pixel bleiben würde, wäre das dann ziemlich klein bei so einer hohen Auflösung und auch die X-Koordinaten würden nicht mehr stimmen!

Klar, probieren geht über studieren. Das mach ich ja im Moment. Wenn ich nun zB. 96 / 64 = 1,5 als Skalierfaktor nehme, hätte ich ungefähr ein gleiches Verhältnis. Ich muß das mal ausprobieren!

lg. Jamagin
Bevor du etwas neues beginnst, erledige das alte

Xeres

Moderator

BeitragMo, Apr 23, 2012 22:47
Antworten mit Zitat
Benutzer-Profile anzeigen
Relative Positionen sind aber generell eine Sache von verschiedenen Auflösungen, davon ist widescreen dann nur ein Sonderfall.
Ein paar variable Flächen zwischen den Objekten sind da nötig.
Win10 Prof.(x64)/Ubuntu 16.04|CPU 4x3Ghz (Intel i5-4590S)|RAM 8 GB|GeForce GTX 960
Wie man Fragen richtig stellt || "Es geht nicht" || Video-Tutorial: Sinus & Cosinus
T
HERE IS NO FAIR. THERE IS NO JUSTICE. THERE IS JUST ME. (Death, Discworld)

Jamagin

BeitragDi, Apr 24, 2012 10:46
Antworten mit Zitat
Benutzer-Profile anzeigen
Hallo!

Habe hier einen guten Artikel darüber gefunden, auf English aber sehr hilfreich!

http://www.codeproject.com/Art...ns-in-Game


lg. Jamagin

NB: Dieser Thread kann geschlossen werden! Danke
Bevor du etwas neues beginnst, erledige das alte

PacMani

BeitragDi, Apr 24, 2012 12:32
Antworten mit Zitat
Benutzer-Profile anzeigen
Trackmania nutzt für die GUI / HUD zumindest sogenannte Twips (eigene freie Größeneinheiten), wenn ich mich recht erinnere, um die 2D-Elemente je nach Auflösung verhältnismäßig gleich zu skalieren. Außerdem hat dort tatsächlich ein Breitbildschirm-Spieler einen Vorteil, da die Sichtweite erhöht wird (kann man dort perfekt testen, da man im Fenstermodus das Fenster frei skalieren kann und sich dann die Kamera entsprechend des Seitenverhältnisses neu erstellt).
Bei Autospielen mit Cockpit-Ansicht und ausgeblendetem Autokörper fand ich das aber schon immer dämlich, weil man sich umgewöhnen muss, wie breit das Auto ist.

Bei den alten Spielen, die immer fest in 640x480 liefen, sehen die teilweise garnicht so schlimm in 16:9 aus, also bei Breakout kommt mir die Physik nach sehr kurzer Gewöhnungszeit überhaupt nicht mehr komisch vor (Ball fliegt beim ersten Blick schneller horizontal als vertikal).
Und selbst dann kann man ja bei den meisten 3D-Spielen im Grafikkarten-Einstellungspanel festlegen, ob das Seitenverhältnis bei niedrigen Auflösungen beibehalten werden soll (schwarze Balken links und rechts) oder gestreckt wird.

Iguan

BeitragDo, Mai 03, 2012 13:55
Antworten mit Zitat
Benutzer-Profile anzeigen
Danke für den Link, ist sehr hilfreich!

Neue Antwort erstellen


Übersicht BlitzBasic Allgemein

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group