lundi 12 août 2013

Direct / Indirect [eng]


There is two modes in Warp3D to draw 3D :
  1. the direct mode,
  2. and the indirect mode.

In direct mode, Warp3D really draws whenever a drawing function is called.

In indirect mode, Warp3D keeps in queue what to draw and executes it :
  • during a W3D_Flush,
  • when the queue is full,
  • when indirect mode comes back manually with W3D_SetSate.

After some tests, indirect mode gives better results for small objects. On the other side, after a number of triangles to draw, the indirect mode gives the same results than the direct mode with our current versions of Warp3D.

Alain Thellier has had a good idea to recompile an indirect version of StarShipW3D and CavalleryW3D (available in the "Download" section), and the results are indeed very interresting with my new beta versions of Warp3D and my GRex 1200 (Config 2).

StarShipW3D with 170 triangles in indirect mode :

While in direct mode :

Now CavalleryW3D with 1090 triangles gives the same results in the two modes, the limit which I was talking about is reached :

With my Config 1, I get :
  • StarShipW3D indirect : 225 fps
  • StarShipW3D direct : 167 fps
  • CavalleryW3D indirect : 43 fps
  • CavalleryW3D direct : 43 fps

We have yet a lot of things to understand on Warp3D operations and 3dfx cards with our Amiga....
  
   (translated by Squaley)
  

Aucun commentaire:

Enregistrer un commentaire

Laissez vos commentaires ici :