Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Multimedia (https://www.delphipraxis.net/16-multimedia/)
-   -   Delphi DirectX: X-Modelle und einfache geom. Körper (https://www.delphipraxis.net/39785-directx-x-modelle-und-einfache-geom-koerper.html)

rabbitRUN 7. Feb 2005 18:24


DirectX: X-Modelle und einfache geom. Körper
 
Hi, bin auf nen kleines Problem in Zusammenhang mit geladenen Modellen und selbst gezeichneten Körpern gestossen. Und zwar werden die geladenen immer vom selbst erstellten verdeckt, egal wie rum ich das versuche zu drehen. :(

Ok hier mal bisschen Code:
Delphi-Quellcode:
procedure Render;
begin
  timegap  := gettickcount - timestart;
  timestart := gettickcount;
  ImmediateData;

  d3ddev9.BeginScene;
  d3ddev9.Clear(0,nil,d3dclear_TARGET or D3DCLEAR_ZBUFFER,D3DCOLOR_XRGB(0,0,0),1.0,0);
  SetupNormalTransformation;
  //SkyBox Rendern
  SetupViewAndProjection(0,1,1);
  SkyBox.render;

  //Figur - Laufen
  SetupViewAndProjection(0+XGes,100+YGes,-150);
  SetupNoNameTransformation;
  NoName_LaufAnimation[LaufAni_Geschw].render;


  //Raum
  SetupViewAndProjection(0+XGes,10+YGes,-10);
  SetupRaumTransformation;
  d3ddev9.SetStreamSource(0, vertexbuffer, 0, SizeOf( TD3DLVertex ) );
  d3ddev9.SetFVF(D3DFVF_TD3DLVertex);
  d3ddev9.DrawPrimitive( D3DPT_TriangleStrip, 0, 2 );
  d3ddev9.EndScene;
  d3ddev9.Present(nil,nil,0,nil);
end;
Also als erstes wird die Skybox geladen, womit es auch keine Probleme gibt. Danach das Modell und zu guter letzt der Raum, welcher im mom nur ein einfachs Viereck ist =).
Habe natürlich schon versucht erst den Raum rendern zu lassen und danach das Modell, Ausgabe blieb aber gleich -> Modell wird immer vom Viereck verdeckt.

mfg

Oxmyx 7. Feb 2005 19:01

Re: DirectX: X-Modelle und einfache geom. Körper
 
Hast du in den Präsentationsparametern ein geeignetes Depth-Stencil-Buffer-Format gewählt (z.B. D3DFMT_D16) und den Puffer angeschaltet?

rabbitRUN 7. Feb 2005 20:44

Re: DirectX: X-Modelle und einfache geom. Körper
 
jop ZBuffer ist eingeschaltet, sorry vergessen zu erwähnen :)


Alle Zeitangaben in WEZ +1. Es ist jetzt 17:52 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