To LUGNET HomepageTo LUGNET News HomepageTo LUGNET Guide Homepage
 Help on Searching
 
Post new message to lugnet.cad.devOpen lugnet.cad.dev in your NNTP NewsreaderTo LUGNET News Traffic PageSign In (Members)
 CAD / Development / 3136
3135  |  3137
Subject: 
Re: Several replies to CLIPPING / WINDING
Newsgroups: 
lugnet.cad.dev
Date: 
Tue, 19 Oct 1999 12:51:57 GMT
Viewed: 
598 times
  
Rui Martins wrote in message ...
On Mon, 18 Oct 1999, Leonardo Zide wrote:

Rui Martins wrote:

  Well, the ideia is to minimize the state change, but if you have to make
some, that is not so drastic. On some hardware, some state/option
changes, force a flush in the hardware buffers, which breaks up the
pipeline & eventually hurts performance, but this is not the case.

  I understand that you would be allowed to have as many "0 CCW"/"0 CW"
lines as you want. This will hurt performance and of course, it would be
better if you could use only 1 call per part.

In fact you can, use as many as you like, but that it's not the goal.
if you read my previous mail, following this one I'am replying, you got
the ideia that no WINDING meta command is the ideia, if the .DAT is well
optimized.

If someone want's to, he can make a very heavy .DAT file, by doing
to many state changes, or even do state changes with no usefullness,
just to bog down the drawer program, we can' fight a bad behaved
builder. But in the other way, no one would see is files, no one likes
to wait too much.

Wait a minute, you were not going to actually send winding state changes
to the graphics engine?
Simply keep track of the state yourself and send either vertices 1,2,3
or 3,2,1.
The part author can use as many WINDING CW/CCW as he likes
- it won't hurt performance a bit!

  To use a vertex array you also need to have all vertexes indexed,
which is not the case of the DAT files and one of the reasons why I have
my own file format.

To Drawer program, can do this job of indexing.
But I know that it is difficult, when some programs put 2,0001 or
1,99998 instead of 2, for example, this could be a goal for improvement
in ldraw compatible editors.

I have already done that. After reading a part into memory I index it.
It typically reduces the number of vertices and thus transformations
to 20-50%. However, as the math currently takes less than 10% of the
rendering time in L3, the total saving is only 2-5%

I don't think it is that difficult: a part may use 2.0001 or 1.99998 in
stead of 2, but not for the same vertex. If it did there would be gaps,
which of course should be fixed.
/Lars

( VI/NOTEPAD are the best for the JOB!  8)
vi rules!  :)



Message has 2 Replies:
  Re: Several replies to CLIPPING / WINDING
 
(...) Sure, that can be done but there's the "0 UNKNOWN" or "0 DOUBLE-SIDED" case, and you'd have to send the triangles twice if you don't want to change the state. Leonardo (25 years ago, 19-Oct-99, to lugnet.cad.dev)
  Re: Several replies to CLIPPING / WINDING
 
(...) NO, I said that, to be used when optimizing the existent files, not when rendering the optimized files. (...) I never said that ! (...) I think that depends on the host processor that you have and your specific graphics board (2D/3D) ;) (...) (...) (25 years ago, 20-Oct-99, to lugnet.cad.dev)

Message is in Reply To:
  Re: Several replies to CLIPPING / WINDING
 
(...) In fact you can, use as many as you like, but that it's not the goal. if you read my previous mail, following this one I'am replying, you got the ideia that no WINDING meta command is the ideia, if the .DAT is well optimized. If someone want's (...) (25 years ago, 18-Oct-99, to lugnet.cad.dev)

15 Messages in This Thread:




Entire Thread on One Page:
Nested:  All | Brief | Compact | Dots
Linear:  All | Brief | Compact

This Message and its Replies on One Page:
Nested:  All | Brief | Compact | Dots
Linear:  All | Brief | Compact
    

Custom Search

©2005 LUGNET. All rights reserved. - hosted by steinbruch.info GbR