Vorheriges Thema anzeigen :: Nächstes Thema anzeigen |
Autor |
Nachricht |
surfer87
Anmeldungsdatum: 16.09.2004 Beiträge: 103
|
Verfasst am: 09.08.2007, 23:42 Titel: Bei 32 bit nur Blautöne? |
|
|
Hi, ich code gerade ein Programm mit Screen 18, 32, 2
Ich wollte eigentlich einen weißen Hintergrund, aber die Farbwerte bewegen sich nur im dunkel- bis hellblauen Bereich, wie kommt das?
Außerdem verändert sich die Hintergrundfarbe wenn ich ein Bild einfüge (Bitmap) Wieso? |
|
Nach oben |
|
 |
ytwinky

Anmeldungsdatum: 28.05.2005 Beiträge: 2624 Wohnort: Machteburch
|
Verfasst am: 09.08.2007, 23:49 Titel: |
|
|
Kann es sein, daß du in deinem Programm den Palette-Befehl benutzt? _________________
v1ctor hat Folgendes geschrieben: | Yeah, i like INPUT$(n) as much as PRINT USING.. | ..also ungefähr so, wie ich GOTO.. |
|
Nach oben |
|
 |
nemored

Anmeldungsdatum: 22.02.2007 Beiträge: 4702 Wohnort: ~/
|
Verfasst am: 09.08.2007, 23:49 Titel: |
|
|
Ich verwende normal als Farbtiefe 24, hatte da keine Probleme. Probiere das mal aus.
Die Farben gehen jetzt von &h000000 bis &hffffff (also von 0 bis 2^24), nicht mehr nur von 0 bis 15.
edit: natürlich 2^24 - 1 ... _________________ Deine Chance beträgt 1:1000. Also musst du folgendes tun: Vergiss die 1000 und konzentriere dich auf die 1.
Zuletzt bearbeitet von nemored am 09.08.2007, 23:58, insgesamt einmal bearbeitet |
|
Nach oben |
|
 |
AndT
Anmeldungsdatum: 02.04.2007 Beiträge: 481
|
Verfasst am: 09.08.2007, 23:53 Titel: Re: Bei 32 bit nur Blautöne? |
|
|
surfer87 hat Folgendes geschrieben: | Hi, ich code gerade ein Programm mit Screen 18, 32, 2
Ich wollte eigentlich einen weißen Hintergrund, aber die Farbwerte bewegen sich nur im dunkel- bis hellblauen Bereich, wie kommt das?
|
32bit Farben sind eben nicht 8bit sondern eine ganze Menge mehr Farben.
Um Weiss zu bekommen, reicht dann nicht mehr einfach color 15.
Dafür gibt es RGB. Rgb sind die einzelnden Kanäle (Rot,Grün,Blau) alle sind bis 255 festgelegt. Also um Weis trotzdem zu bekommen musst du benutzen _________________ Bis irgendwann...  |
|
Nach oben |
|
 |
nemored

Anmeldungsdatum: 22.02.2007 Beiträge: 4702 Wohnort: ~/
|
Verfasst am: 09.08.2007, 23:58 Titel: |
|
|
Oder &hffffff  _________________ Deine Chance beträgt 1:1000. Also musst du folgendes tun: Vergiss die 1000 und konzentriere dich auf die 1. |
|
Nach oben |
|
 |
surfer87
Anmeldungsdatum: 16.09.2004 Beiträge: 103
|
Verfasst am: 10.08.2007, 00:02 Titel: |
|
|
Kleines Beispiel um mein Problem zu verdeutlichen:
Code: |
screen 18,32,2
dim zahl1 as integer
dim zahl2 as integer
dim a as integer
do
a = a + 1
zahl1 = zahl1 + 1
if zahl1 = 640 then
zahl1 = 0
zahl2 = zahl2 + 1
end if
if zahl2 = 480 and zahl1 = 639 then exit do
pset (zahl1,zahl2),a
loop
sleep
|
Und die Ausgabe
 |
|
Nach oben |
|
 |
AndT
Anmeldungsdatum: 02.04.2007 Beiträge: 481
|
Verfasst am: 10.08.2007, 00:05 Titel: |
|
|
Code: | screen 18,32,2
line (0,0)-(640,480),RGB(255,255,255),bf
sleep |
wo ist da das problem  _________________ Bis irgendwann...  |
|
Nach oben |
|
 |
nemored

Anmeldungsdatum: 22.02.2007 Beiträge: 4702 Wohnort: ~/
|
Verfasst am: 10.08.2007, 00:08 Titel: |
|
|
Ich sehe jetzt auf die Schnelle nicht, was dein Programm macht, aber mit pset (x,y), &hffffff bekomme ich einen weißen Punkt.
Ja, jetzt ist es klar: Dein Programm läuft ja nur bis &h04B000, durchläuft also einen großen Teil der Farben (fast die ganze Rotpalette) gar nicht. _________________ Deine Chance beträgt 1:1000. Also musst du folgendes tun: Vergiss die 1000 und konzentriere dich auf die 1.
Zuletzt bearbeitet von nemored am 10.08.2007, 00:11, insgesamt einmal bearbeitet |
|
Nach oben |
|
 |
surfer87
Anmeldungsdatum: 16.09.2004 Beiträge: 103
|
Verfasst am: 10.08.2007, 00:10 Titel: |
|
|
AndT hat Folgendes geschrieben: | Code: | screen 18,32,2
line (0,0)-(640,480),RGB(255,255,255),bf
sleep |
wo ist da das problem  |
tatsache jetzt klappt das auch mit dem Bitmap putten.
Aber nur der Info halber......
1. Wieso ist die Farbbelegung mit Paint so komisch gewesen?
und
2. Wieso hat sich die Hintergrundfarbe geändert, sobald ich das Bitmap eingefügt hab? (Egal ob Pset, and, trans) (Hat jetzt nix mit diesem bild hier zu tun)
Zuletzt bearbeitet von surfer87 am 10.08.2007, 00:12, insgesamt einmal bearbeitet |
|
Nach oben |
|
 |
AndT
Anmeldungsdatum: 02.04.2007 Beiträge: 481
|
Verfasst am: 10.08.2007, 00:11 Titel: |
|
|
Natürlich geht auch
Code: | screen 18,32,2
line (0,0)-(640,480),&hffffff,bf
sleep |
das ist im Prinzip das gleiche  _________________ Bis irgendwann...  |
|
Nach oben |
|
 |
nemored

Anmeldungsdatum: 22.02.2007 Beiträge: 4702 Wohnort: ~/
|
Verfasst am: 10.08.2007, 00:12 Titel: |
|
|
Bitmaps können mit Palette (indiziert) gespeichert sein, und wenn die Palettenbelegung eine andere ist als die in deinem Programm, dann wird das Bild falsch dargestellt. _________________ Deine Chance beträgt 1:1000. Also musst du folgendes tun: Vergiss die 1000 und konzentriere dich auf die 1. |
|
Nach oben |
|
 |
surfer87
Anmeldungsdatum: 16.09.2004 Beiträge: 103
|
Verfasst am: 10.08.2007, 00:14 Titel: |
|
|
Ahhh Super danke. |
|
Nach oben |
|
 |
AndT
Anmeldungsdatum: 02.04.2007 Beiträge: 481
|
Verfasst am: 10.08.2007, 00:17 Titel: |
|
|
Paint geht auch
Code: | screen 18,32,2
cls
paint (0,1),&hffffff
sleep |
es führen viele Wege nach Rom  _________________ Bis irgendwann...  |
|
Nach oben |
|
 |
nemored

Anmeldungsdatum: 22.02.2007 Beiträge: 4702 Wohnort: ~/
|
Verfasst am: 10.08.2007, 00:21 Titel: |
|
|
Oder ein Kreis mit Radius 1  _________________ Deine Chance beträgt 1:1000. Also musst du folgendes tun: Vergiss die 1000 und konzentriere dich auf die 1. |
|
Nach oben |
|
 |
ytwinky

Anmeldungsdatum: 28.05.2005 Beiträge: 2624 Wohnort: Machteburch
|
Verfasst am: 10.08.2007, 00:29 Titel: |
|
|
Komisch, kaum stehen da ein paar Zeilen Quellcode, klappts auch mit
den Tipps..
Wie kommt das bloß? _________________
v1ctor hat Folgendes geschrieben: | Yeah, i like INPUT$(n) as much as PRINT USING.. | ..also ungefähr so, wie ich GOTO.. |
|
Nach oben |
|
 |
Eternal_pain

Anmeldungsdatum: 08.08.2006 Beiträge: 1783 Wohnort: BW/KA
|
Verfasst am: 13.08.2007, 08:58 Titel: |
|
|
Ein einfaches Beispiel, wie ich Dein Beispiel interpretiert habe...
Einfach mal mit den werten spielen
dann kann man auch ganz nett aussehende Farbverlaeufe erstellen...
Code: |
screen 18,32
dim b as integer
dim g as integer
dim r as integer
for y as integer=0 to 479
for x as integer=0 to 639
b = ((255)*((y+1))\480)
r = ((255)*((x+1))\640)
g = ((255)*(((x+1)+(y+1)))\1120)
pset (x,y),rgb(r,g,b)
next x
next y
|
_________________
 |
|
Nach oben |
|
 |
AndT
Anmeldungsdatum: 02.04.2007 Beiträge: 481
|
Verfasst am: 13.08.2007, 13:49 Titel: |
|
|
Und was mache ich aus dieses Beispiel?
Code: | screen 14,32
dim b as integer
dim g as integer
dim r as integer
screeninfo r,g
print r,g
sleep
do
i+=1
for y as integer=0 to 240
for x as integer=0 to 320
b = ((255)*((y+1))\320)+i
r = ((255)*((x+1))\240)+i
g = ((255)*(((x+1)+(y+1)))\1210)+i
pset (x,y),rgb(r,g,b)
next x
next y
screensync
loop
sleep
|
Nen Screensaver
//Edit
Mit Erdbeeben effect:
Code: | screen 14,32
dim b as integer
dim g as integer
dim r as integer
screeninfo r,g
print r,g
sleep
i=10
do
screenlock
I+=int(rnd*15)+1
I-=int(rnd*15)
for y as integer=0 to 240
for x as integer=0 to 320
b = ((255)*((y+1))\320)+i
r = ((255)*((x+1))\240)+i
g = ((255)*(((x+1)+(y+1)))\1210)+i
pset (x,y),rgb(r,g,b)
next x
next y
print i
screensync
screenunlock
loop
sleep |
_________________ Bis irgendwann...  |
|
Nach oben |
|
 |
Eternal_pain

Anmeldungsdatum: 08.08.2006 Beiträge: 1783 Wohnort: BW/KA
|
Verfasst am: 13.08.2007, 20:10 Titel: |
|
|
wenn Du schon solche Beispiele bringst...
Dann doch bitte Option Explicit und vergiss nicht immer eine abbruchmoeglichkeit einzubauen  _________________
 |
|
Nach oben |
|
 |
Jojo alter Rang

Anmeldungsdatum: 12.02.2005 Beiträge: 9736 Wohnort: Neben der Festplatte
|
Verfasst am: 13.08.2007, 20:22 Titel: |
|
|
In den neuen Versionen ist Option Explicit zum Glück sowieso automatisch an  _________________ » Die Mathematik wurde geschaffen, um Probleme zu lösen, die es nicht gäbe, wenn die Mathematik nicht erschaffen worden wäre.
 |
|
Nach oben |
|
 |
Eternal_pain

Anmeldungsdatum: 08.08.2006 Beiträge: 1783 Wohnort: BW/KA
|
Verfasst am: 13.08.2007, 20:23 Titel: |
|
|
ja, das heisst aber auch, das man variablen vorher declarieren MUSS was hier wieder nicht der Fall war... _________________
 |
|
Nach oben |
|
 |
|