Auflösung

Übersicht BlitzBasic Beginners-Corner

Neue Antwort erstellen

 

Broghi

Betreff: Auflösung

BeitragMi, Jan 05, 2005 21:08
Antworten mit Zitat
Benutzer-Profile anzeigen
Aslo in meinem BlitzBasic-Buch steht:

Zitat:
Programmieren Sie möglichst so, dass Sie selbst im Laufe der Entwicklung die Auflösund ändern können.
------
Arbeiten sie besser nicht mit festen Koordinaten, sondern mit relativen.


An was solch ich dann jetzt die Koordinaten festlegen?
Und für kleinere Auflösungen muss man die Bilder ja dann auch noch verkleinern, oder?
Wozu lernen wir überhaupt programmieren?
Damit der Computer für uns Aufgaben löst (die wir ohne ihn nie gehabt hätten!).

Spikespine

BeitragMi, Jan 05, 2005 21:17
Antworten mit Zitat
Benutzer-Profile anzeigen
Zitat:
An was solch ich dann jetzt die Koordinaten festlegen?


ich würde sowieso alles in (oft konstante) variablen setzen.
Dann hast du beispielsweise eine Variable, die die Auflösung in der Breite und eine, die die Auflösung in der Höhe angibt. Die können dann zum beispiel in einer Datei abgelegt werden. Ein kleiner Beispielcode, der eine Kugel in die MITTE des Bildschirms zaubert.
Code: [AUSKLAPPEN]

gfx=800
gfy=600
gfcol=16
gfmod=1

Graphics gfx,gfy,gfcol,gfmod
Setbuffer BackBuffer()

BallDurchmesser = 30

Oval (gfx/2)-(BallDurchmesser/2),(gfy/2)-(Balldurchmesser/2),BallDurchmesser,BallDurchmesser
;(Klammern wegen der veranschaulichung



Zitat:
Und für kleinere Auflösungen muss man die Bilder ja dann auch noch verkleinern, oder?


Ich fürchte ja...
 

Broghi

BeitragMi, Jan 05, 2005 21:32
Antworten mit Zitat
Benutzer-Profile anzeigen
Zitat:
Zitat:
Und für kleinere Auflösungen muss man die Bilder ja dann auch noch verkleinern, oder?


Ich fürchte ja...


Ja und wie kann ich das in blitzbasic machen, dass ich nicht bilder für jede auflösung hinzufügen muss


PS: was bringt das, dass ich die Auflösung in Variablen speichere?
Blick ich jetzt nich ganz.
Dann weis ich immer noch nich , wo ich meine bilder hinzeichnen soll.
Wozu lernen wir überhaupt programmieren?
Damit der Computer für uns Aufgaben löst (die wir ohne ihn nie gehabt hätten!).

Spikespine

BeitragMi, Jan 05, 2005 21:43
Antworten mit Zitat
Benutzer-Profile anzeigen
doch...

so bleibt es immer variabel. Ändere in meinem Code die beiden auflösungen in 1024x768. es wird das selbe ergebnis geben. Hättest du aber anstatt
gfx/2
400
verwendet, würde es bei einer anderen Auflösung nicht mehr in der hälfte sein...

Zitat:
Ja und wie kann ich das in blitzbasic machen, dass ich nicht bilder für jede auflösung hinzufügen muss


Question
aus der frage werd ich echt nich schlau...

[edit] achso, meinst du wie man die Größen von Bildern verändert?
dazu gibts resizeimage und scaleimage
 

noir

BeitragMi, Jan 05, 2005 21:50
Antworten mit Zitat
Benutzer-Profile anzeigen
ich glaube er denkt, er müsse bei höherer auflösung größere bilder verwenden. Wink

Spikespine

BeitragMi, Jan 05, 2005 21:55
Antworten mit Zitat
Benutzer-Profile anzeigen
hmm kann man doch, um die originalgröße beizubehalten.
Das macht aber kein Schwein...

BladeRunner

Moderator

BeitragDo, Jan 06, 2005 6:58
Antworten mit Zitat
Benutzer-Profile anzeigen
Du hast mehrere Möglichkeiten:
1. Nur ein Satz an Gfx: bei höheren Auflösungen ist ein größerer Spielfeldausschnitt zu sehen.
2. Du erstellst die GfX für die höchste zulässige Auflösung. Wenn der User eine niedrigere wählt, lässt du mit resizeimage, scaleimage (und tformfilter) alle Gfx auf die neue Auflösung runterrechnen. Dauert aber einige Zeit.
3. Wie zweitens, nur dass du es einmalig für alle Auflösungen beim ersten Progframmstart machst. Dürfte aber für Verärgerung bei Kleinplattenbesitzern geben.
4. Du stellst dein Imagehandling auf Sprites (B3D) um, hier hast du realtime scale, rotate etc. zur Verfügung.
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
 

Broghi

BeitragDo, Jan 13, 2005 14:08
Antworten mit Zitat
Benutzer-Profile anzeigen
Ich denke halt, wenn man in 'ner Auflösung von 1280x1024 was zeichnet dann die Auflösung auf 800x600 umstellt, dann sieht man doch den teil unter 800 und neben 600 nicht mehr, oder??

Also muss man doch dem Computer irgendwie sagen, dass er so zeichne soll, dass man alles wieder sieht.

Oder denk ich da falsch???

Oder muss ich dann da für alle Auflösungen neue Koordinaten eingeben.

PS: BLadeRunnerZitat:
4. Du stellst dein Imagehandling auf Sprites (B3D) um, hier hast du realtime scale, rotate etc. zur Verfügung.


Was ist ein Sprite?
Wozu lernen wir überhaupt programmieren?
Damit der Computer für uns Aufgaben löst (die wir ohne ihn nie gehabt hätten!).

BladeRunner

Moderator

BeitragDo, Jan 13, 2005 14:40
Antworten mit Zitat
Benutzer-Profile anzeigen
Zitat:
Also muss man doch dem Computer irgendwie sagen, dass er so zeichne soll, dass man alles wieder sieht.


Exakt. Du gibst alle Koordinaten relativ zur Bildschirmgröße an und dann klappt das.

Und Sprites sind hardwarebeschleunigte Images im 3D-Raum. Ihr Vorteil ist dass sie in echtzeit vergrößert,rotiert,gestaucht werden können da die Grafikkarte die Berechnung vornimmt (nicht wie bei 2D-Bildern der Prozessor).
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

Kryan

BeitragDo, Jan 13, 2005 19:35
Antworten mit Zitat
Benutzer-Profile anzeigen
wenn du aber alle bilder größer machst für halt dementsprechend hohe auflösungen, was bringt es dir dann eine höhere auflösung zu nehmen

also ich denk mal das ist kapazitätenverschwendung und unnütz
Webspaceanbieter?
Klick hier!
Kultige Spieleschmiede?
Klick hier!

Neue Antwort erstellen


Übersicht BlitzBasic Beginners-Corner

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group