256 Farben?

Fragen zu Grafik- & Soundproblemen und zur Spieleprogrammierung haben hier ihren Platz.
Benutzeravatar
Xaby
Beiträge: 2144
Registriert: 12.11.2005 11:29
Wohnort: Berlin + Zehdenick
Kontaktdaten:

Palette BMP

Beitrag von Xaby »

Variante eins

Code: Alles auswählen

Global Dim PAL.l(255) 

Procedure LoadBMPPal() 
#Pal=0 
  If OpenFile(#Pal,"FFTecPAL.BMP") 
    FileSeek(#Pal,54) 
    For i=0 To 255 
      R=ReadByte(#Pal) 
      If R<0 : R=256+R : EndIf 
      Debug R 
      G=ReadByte(#Pal) 
      If G<0 : G=256+G : EndIf 
      Debug G 
      B=ReadByte(#Pal) 
      If B<0 : B=256+B : EndIf 
      Debug B 
      A=ReadByte(#Pal) 
      Debug "-" 
      PAL(i)=RGB(B,G,R) 
    Next 
  CloseFile(#Pal) 
  EndIf 
EndProcedure 


Variante 2

Code: Alles auswählen

Global Dim PAL.l(255)

Procedure LoadBMPPal()
#Pal=0
  If OpenFile(#Pal,"FFTecPAL.BMP")
    FileSeek(#Pal,54)
    *Palette = AllocateMemory(1024)
    Bis=ReadData(#Pal,*Palette,1024)
    For i=0 To Bis / 4 -1
      R=PeekB(*Palette+i*4+0)
      If R<0 : R=256+R : EndIf
      G=PeekB(*Palette+i*4+1)
      If G<0 : G=256+G : EndIf
      B=PeekB(*Palette+i*4+2)
      If B<0 : B=256+B : EndIf
      A=PeekB(*Palette+i*4+3)
      PAL(i)=RGB(B,G,R) 
    Next
    FreeMemory(*Palette)
  CloseFile(#Pal)
  EndIf
EndProcedure

Hoffe, es nutzt wem.

@Kaeru, die Sache mit dem Kopieren und dem Einfügen ist etwas schlecht, wenn es viele Formatierungen im Text gibt, auch für Zmieliez.
:: Noch was, ich glaub auch, die Suche ist noch nicht ausgereift.
Wenn man nicht innerhalb eines Beitrags, aber zum selben Thema zwei Worte sucht, findet die SUCHE das nicht.


Beipiel: Rübenk... (von Seite eins) und nach dem Suchbegriff auf dieser Seite:

Suchbegriff: Blumenkohl

>> Das Thema wird nicht gefunden.
Wenn man beide Suchbegriffe in einem Thema vorkommen sollen.
Sie würden höchstens gefunden, wenn sie beide in einem Beitrag vorkommen.

Gruß, Folker
:allright:

>> hab gerade gesehen, dass es fast zwei Jahre her sein muss als die Sache mal von Interesse war ... bin hoffentlich mit der Antwort nicht zu spät :roll:
Kinder an die Macht http://scratch.mit.edu/
Kaeru Gaman
Beiträge: 17389
Registriert: 10.11.2004 03:22

Beitrag von Kaeru Gaman »

ho Xaby

danke für den tip, dass im 8-bit-BMP-Header die Palette bei 54 anfängt.
war bisher zu lazy, das nachzugucken, jetzt werd ichs mir einfach merken. ;)

trotzdem wärs kein übel, wenn du mal nen link hier postest, wo du die Headerbeschreibung nachgelesen hast. :allright:


nochn tip:
wenn ich mich nicht täusche, müsste man

Code: Alles auswählen

R=ReadByte(#Pal) 
If R<0 : R=256+R : EndIf 
ersetzen können durch

Code: Alles auswählen

R = ReadByte(#Pal) & $FF

und zur suchfunktion:
das liegt daran, dass im endeffekt nach beiträgen gesucht wird,
auch wenn du sie nach themen geordnet anzeigen läßt.

wenn du die checkbox umstellst auf "nach irgendeinem wort suchen", findest du den thread.
Der Narr denkt er sei ein weiser Mann.
Der Weise weiß, dass er ein Narr ist.
Benutzeravatar
Xaby
Beiträge: 2144
Registriert: 12.11.2005 11:29
Wohnort: Berlin + Zehdenick
Kontaktdaten:

Beitrag von Xaby »

@Kaeru

- Checkbox umstellen, geht nicht (also geht schon ...), denn dann kommt ja jeder (Mist) /:->

- Header von BMP und ansich das BMP-Format sind einfach aufgebaut.
Hab es vor Jahren mal mit dem Hex-Editor enttüftelt.

>> Hex Workshop v.3.11 (Jul. 3. 2000) von BreakPoint Software, Inc.

Zur Bildbearbeitung hab ich damals PhotoShop 6 genutzt und nun PhotoImpact 10. Änderst einfach den ersten Farbwert der Fabrpalette, dann weißt, wo die Anfangen.

>> Googles erster Treffer (hab ich nach deiner Anfrage mal eingegeben):
BMP HEADER :

http://www.fastgraph.com/help/image_fil ... rmats.html

Eine scheinbar interessante Seite im Allgemeinen:
http://www.itwissen.info/definition/lex ... ormat.html

Hab zu Hause übrigens eine ACE-Datei gepackt mit so ziemlich den coolsten Dateiformaten und ihrer Aufschlüsselung.

Ist ~ 3,6 BM groß (~ 20 MB entpackt), kann ich dir gern per Mail schicken.
Teilweise mit SourceCode in C oder Pascal.
Die neusten Informationen sind von 2002, die ältesten wohl 1992.
http://www.fet.uni-hannover.de/~purnhage/gps/bmp2.htm

Hab aber nie die Zeit gehabt, alle Format zu entcoden :D
AVI-RIFF, MPEG, JPEG, BMP ... VOC, WAVE, MOD (und Varianten) ...
MIDI, ...

Alles, was man nicht mehr unbedingt wissen muss, weil es ja jeder kann, aber manchmal kann man es nicht anders lösen.

Kurz zum Überfliegen
http://www.answers.com/topic/riff-1

... wo wir gerade beim Thema sind.
Wie schreibt man eigentlich ein eigens ImagePlugIn?
Oder einen Codec mit PureBasic?

Ich würde gern eine Kreuzung aus JPEG, PNG und AVI haben.

PNG und AVI statt GIF. Und JPEG und PNG statt LuraWave JPEG2000 mit Wavelet-Kompression.

Und damit wir nun einen SuperCodec haben halt die drei gemüscht.
Für Filme müsste man dann noch MOD, OGG und SPEEX kombinieren ...

als Container-Format nimmt man wohl SVG ...

... aber wo andere Jahre entwickeln, wird es wohl nicht in 5 minuten gemacht sein. Aber ein PB-Forum eigenes Verfahren, was vielleicht nicht das schnellste und beste ist, aber seinen Zweck erfüllt, verständlich ist und frei von Rechten dritter ist ...

Denn eins werden wir ja öfter bekommen, diese kleinen Animations-BMPs wie es sie zu Hauf bei Dune 2077 gibt.

Irgendwie müssten man einfach eine Datei erstellen können und das Programm weiß, wann es welches Bild zeigen soll. Ohne dass man sich jedes Mal lange selbst einen Kopf ums Timing machen muss.

-------------------
Suche Nach PCX im Forum ergab:
http://www.purebasic.fr/german/viewtopi ... hlight=pcx
>>
http://www.wotsit.org/search.asp?s=graphics

:shock:
Kinder an die Macht http://scratch.mit.edu/
Benutzeravatar
MVXA
Beiträge: 3823
Registriert: 11.09.2004 00:45
Wohnort: Bremen, Deutschland
Kontaktdaten:

Beitrag von MVXA »

och du scheiße ist das aber alt :lol:...
Bild
Kaeru Gaman
Beiträge: 17389
Registriert: 10.11.2004 03:22

Beitrag von Kaeru Gaman »

yo, is wohl grad mode, uralte threads auszugraben... :mrgreen:
Der Narr denkt er sei ein weiser Mann.
Der Weise weiß, dass er ein Narr ist.
Benutzeravatar
Xaby
Beiträge: 2144
Registriert: 12.11.2005 11:29
Wohnort: Berlin + Zehdenick
Kontaktdaten:

Beitrag von Xaby »

Wenn es das aktuellste zu diesem Thema im Forum ist ... :mrgreen:
Kinder an die Macht http://scratch.mit.edu/
Antworten