Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Multimedia (https://www.delphipraxis.net/16-multimedia/)
-   -   Delphi OpenGL glPixelStorei problem, vermute ich ;-) (https://www.delphipraxis.net/135244-opengl-glpixelstorei-problem-vermute-ich-%3B.html)

cherry 7. Jun 2009 15:43


OpenGL glPixelStorei problem, vermute ich ;-)
 
Hallo Freunde...

Brauch wiedermal dringen eure Hilfe. Folgendes:
Ich mach grad ein OpenGL Buch durch und da habe ich probleme bei einem kleinen Beispielprogramm.
Und zwar habe ich das Programm sogar von der Source CD kopiert und des geht auch net.

Im Buch steht: "For OpenGL bitmaps on some versions of Windows you may need to use 4 for double-word alignment. (in glPixelStorei)"

Aber das bringt auch nichts.
Das gewünschte Ergebnis wäre ein Kariertes "Bild" auf dem Display.
Leider passiert gar nichts, nur die Hintergrundfarbe ist Blau wies sein soll.

Code:

Delphi-Quellcode:
implementation

{$R *.DFM}

type
  TBitRow=array[0..7] of byte;
  TCheckerBoard=array[0..63] of TBitRow;

var
  CheckerBoard: TCheckerBoard;

procedure MakeCheckerBoard;
var
  col,
  row: integer;
  square,
  start: byte;
begin
  fillchar(CheckerBoard,SizeOf(CheckerBoard),0);
  start := 0; {black}
  for row := 0 to 63 do
  begin
    if row mod 8 = 0 then
      start := not start; {alternate $00 $FF}
    square := start;
    for col := 0 to 7 do
    begin
      square := not square;
      CheckerBoard[row,col] := square;
    end; {for}
  end; {for}
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
  glPixelStorei(GL_UNPACK_ALIGNMENT,1);
  MakeCheckerBoard;
  GlColor3f(0.6,0.1,0.3);
end;

procedure TForm1.FormPaint(Sender: TObject);
begin
  glClear(GL_COLOR_BUFFER_BIT or GL_DEPTH_BUFFER_BIT);
  glRasterPos3f(+0.0,+0.0,-2.0);
  glBitmap(64,64,0,0,0,0,@CheckerBoard);
  glFlush;
  OpenGL1.ErrorCheck('FormPaint');
end;
Hat jemand eine Idee?

Uwe Raabe 7. Jun 2009 16:22

Re: OpenGL glPixelStorei problem, vermute ich ;-)
 
Delphi-Quellcode:
type
  TBitRow = packed array[0..7] of byte;
könnte eventuell helfen.

cherry 7. Jun 2009 17:04

Re: OpenGL glPixelStorei problem, vermute ich ;-)
 
ne, hilft leider auch nicht weiter. passiert immer noch nichts.

quendolineDD 7. Jun 2009 23:07

Re: OpenGL glPixelStorei problem, vermute ich ;-)
 
Schonmal nach Beiträgen zu den Quelltexten in dem Buch geschaut? Vielleicht hat sich da schonmal jemand geäußert. Wie heißt das Buch überhaupt (mitsamt ISBN)?

cherry 8. Jun 2009 05:45

Re: OpenGL glPixelStorei problem, vermute ich ;-)
 
hallo.

ne, hab leider gar nichts gefunden. Das Buch heisst "DELPHI Developer's Guide to OpenGL"
ISBN: 1-55622-657-8 -> bin beim Kapitel 12 Bitmaps, erstes Beispiel...

toms 8. Jun 2009 05:53

Re: OpenGL glPixelStorei problem, vermute ich ;-)
 
probiere mal
Delphi-Quellcode:
glPixelStorei(GL_PACK_ALIGNMENT, 4);
anstatt
Delphi-Quellcode:
glPixelStorei(GL_UNPACK_ALIGNMENT,1);

cherry 8. Jun 2009 05:56

Re: OpenGL glPixelStorei problem, vermute ich ;-)
 
hi. ne- klappt leider auch nicht ;-(

cherry 8. Jun 2009 14:16

Re: OpenGL glPixelStorei problem, vermute ich ;-)
 
*lol* habs soeben rausgekriegt.

habe
Delphi-Quellcode:
glRasterPos3f(+0.0,+0.0,-2.0);
auf
Delphi-Quellcode:
glRasterPos3f(+0.0,+0.0,-5.0);
geändert, dann hatts geklappt.

Sorry für den Thread, aber selbst das Kompillierte Beispiel auf der Buch-CD funktioniert nicht.

naja, bin happy das es jetzt klappt. Nichts für ungut.

schönen Tag noch.


Alle Zeitangaben in WEZ +1. Es ist jetzt 09:58 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz