Man Linux: Main Page and Category List

NAME

       scene_polygon3d,  scene_polygon3d_f  -  Puts  a  polygon  in  the scene
       rendering list. Allegro game programming library.

SYNOPSIS

       #include <allegro.h>

       int scene_polygon3d(int type, BITMAP *texture, int vc, V3D *vtx[]);

       int scene_polygon3d_f(int type, BITMAP *texture, int vc, V3D_f *vtx[]);

DESCRIPTION

       Puts  a  polygon  in  the rendering list. Nothing is really rendered at
       this moment. Should be called between clear_scene() and render_scene().

       Arguments  are  the  same  as  for  polygon3d(),  except  the bitmap is
       missing.  The one passed to clear_scene() will be used.

       Unlike polygon3d(), the polygon may be  concave  or  self-intersecting.
       Shapes  that penetrate one another may look OK, but they are not really
       handled by this code.

       Note that the texture is stored as a pointer only, and you should  keep
       the actual bitmap around until render_scene(), where it is used.

       Since  the  FLAT  style  is  implemented  with  the  low-level  hline()
       function, the FLAT style is subject to DRAW_MODEs. All these modes  are
       valid.  Along  with  the  polygon,  this  mode  will  be stored for the
       rendering moment, and also all the other related  variables  (color_map
       pointer, pattern pointer, anchor, blender values).

       The settings of the CPU_MMX and CPU_3DNOW flags of the cpu_capabilities
       global variable on entry in this routine affect the choice of low-level
       asm routine that will be used by render_scene() for this polygon.

RETURN VALUE

       Returns  zero  on success, or a negative number if it won't be rendered
       for lack of a rendering routine.

SEE ALSO

       create_scene(3alleg),    clear_scene(3alleg),     render_scene(3alleg),
       destroy_scene(3alleg),   polygon3d(3alleg),   cpu_capabilities(3alleg),
       exscn3d(3alleg)