software Rasterizing 3d

software Rasterizing 3d

Post by jimfl » Wed, 06 Nov 2002 01:02:54



I've written a 3d software rasterizer using fixed point maths.

In an attempt to improve performance, I've reduced the number of edges
to calculate by preprocessing my model, generating a minimal number of
vertex pairs(edges). Rather than create three edges for each polygon.

I'm now looking an effective method of rasterizing these.

If anyone knows of any links to good solutions for software rastizing
I would really appreciate it as all that I have seen are slow.

cheers
jim.

 
 
 

software Rasterizing 3d

Post by Hans-Bernhard Broeke » Wed, 06 Nov 2002 01:35:51



> I've written a 3d software rasterizer using fixed point maths.
> In an attempt to improve performance, I've reduced the number of edges
> to calculate by preprocessing my model, generating a minimal number of
> vertex pairs(edges). Rather than create three edges for each polygon.
> I'm now looking an effective method of rasterizing these.

These _what_?  Are you going to rasterize edges, or filled polygons?

If you're rasterizing filled (or even shaded) polygons, reducing the
number of edges won't really help much.  The maximum gain is that
you'll have half as many edges, which will only help if your
bottleneck is the transformation of edges from 3D to screen space.  In
a software-only rasterizer, I doubt this can ever be the case: polygon
scan conversion doesn't use much edge information to begin with.  It's
quite certainly neglibible compared to the amount of time spent doing
the actual pixels of the polygon.

If you're going to rasterize edges, I don't see how any half-way
decent algorithm of doing that can be justifiably classified bas
"slow".  Not unless your expectations about what constitutes "fast"
rendering are far from realistic.
--

Even if all the snow were burnt, ashes would remain.

 
 
 

software Rasterizing 3d

Post by jimfl » Wed, 06 Nov 2002 18:58:42


Howdy

Actually calculating the deltas for my edges is the bottleneck in my
system, actually filling the poly is very fast.

Each edge is shared by two polygons, thus I have halved the number of
edges (and the deltas) that need calculating.  I have got this working
already but is not a very elegant algorithm.  I assumed that some one
else would have implemented a better algorithm using edge reduction as
it is indeed a significant optimisation.

Also I have not actually found any "half-way decent algorithm"'s on
the net or in my book's, they all miss out on significant details and
are not practical :(

many thanks for all help
JIm

 
 
 

1. Code to rasterize 3D polyhedra into voxels?

Does anybody have any pointers for code to rasterize 3D polygonal
objects into voxels?  I need to end up with binary voxels (values
of either 0 or 255), but anything producing grayscale voxels would
be fine too.

Thanks,  
  Rob
--

 -   -   -   -   -   -   -   -   -   -   -   -   -   -   -   -   -   -   -  
Rob Katz                "Communication is part of the work of maintaining

2. grayscale problem

3. Lots of 3D software in the Mac Software section

4. Linespoints style