Subject:
|
Re: Line in the Sand
|
Newsgroups:
|
lugnet.cad.dev
|
Date:
|
Thu, 21 Oct 1999 14:59:15 GMT
|
Viewed:
|
1657 times
|
| |
| |
On Thu, 21 Oct 1999 00:10:02 GMT, "Lars C. Hassing" <lch@ccieurope.com> wrote:
> Yes, too bad I'm off for an Internet-free :( 4-day week-end at the sea :)
Sometimes, life just sucks. ;) Have a great weekend!
> > Matrix Inversions. Rendering engines will need to correct for transformation
> > matrices which inadvertently invert the current file. They will also need to
> > allow for situations in which the matrix is deliberately inverted.
>
> "the current file" should be "a subfile"
OK.
> > 0 CERTIFY [BFC|NOBFC]
> > default: NOBFC
>
> I think you should make it clear what "default" means:
> 1) absence of "0 CERTIFY", or
> 2) "0 CERTIFY" with no (or other) tags
Both of these. (0 CERTIFY with no tags would be a syntax error, IMO.)
> Is the CERTIFY really necessary?
Define necessary. ;) CERTIFY is not absolutely required, but it is logical and
useful. The other meta-statements can *imply* certification, but they don't
state it directly.
Eventually, 90% of the files in the parts library will have exactly one extended
statement in them. This will be whatever statement is needed to flag the file
as being certified for backface culling.
> Presence of a CLIPPING ON should be enough.
The document specifies that clipping state is passed into subfiles. Having a
CLIPPING ON statement in every file would be counter-productive. So change your
statement to:
Presence of a WINDING CCW should be enough.
At which point I shrug, refer you to my comments above, and point out that it is
conceivable that someone could take an existing part-file, clean up all the
subfile references, but not touch the polygons. Then they could certify the
file with:
0 CERTIFY BFC
0 WINDING UNKNOWN
> Too many rules and required meta-commands increase the risk of forgetting
> some.
True, but the statement that flags a file as being certified will not be easily
forgotten. It will appear at the top of 99%+ of the part files.
> > 0 WINDING [ CW | CCW | UNKNOWN ]
> > default: CCW
>
> I don't think there should be a default. You should always specify either
> CW, CCW or UNKNOWN.
If people really don't like the 0 CERTIFY flag, I'll agree with you on this one.
the WINDING statement would certify the file.
> So DOUBLESIDED should be accomplished by CLIPPING OFF?
Yes. Since the winding setting is strictly local, the desired effect of
DOUBLESIDED is more thouroughly accomplished by controlling the CLIPPING
setting. It's too bad, I liked the idea of WINDING DOUBLESIDED. :(
Should this use of CLIPPING OFF be stated more plainly, perhaps in a section for
DAT file authors?
> > The WINDING setting is a local setting, it applies only to the file in which
> > the WINDING meta-statement appears.
> Or:
> The WINDING setting is a local setting, it applies only to the polygons in
> the file in which the WINDING meta-statement appears.
OK.
> > 0 CLIPPING [ ON | OFF ]
> > default: renderer-dependent
>
> Again I am uncertain what you mean by "default"...
> You should always specify either ON or OFF.
You're right. Since the clipping state is passed down from superfiles, there is
no need to have a file-level default. But there is a need for a
start-of-processing default. The rendering program can assign that default, I
don't see a reason to specify it in the standard.
I removed the 'default: renderer-dependent' line, and added a Clipping State
paragraph to the Rendering Engine section.
> > Enables or disables clipping for the rendering. Any number of CLIPPING
> > statements may appear in a file. The current clip-setting is passed down to
> > subfiles when they are referenced, giving superfiles some influence over the
> > processing of subfiles. However, the clip-setting is *not* passed back up
> > from the subfile to the superfile.
>
> Also, you could stress that, CLIPPING ON in a file has no effect if
> clipping is currently off.
OK.
> > The INVERT meta-statement is a flag, indicating to the renderer that the
> > following subfile reference has been intentionally inverted. If the next
> > command-line is not a subfile reference, the INVERT is ignored.
> >
> > The INVERT flag is required in addition to the actual inversion, which
> > occurs within the subfile command's transformation matrix.
>
> Or:
> The INVERT meta-statement is a flag, indicating to the renderer that the
> following subfile reference should have its orientaion inverted, i.e. the
> inside/outside definition should be swapped.
OK.
Steve
"Never trust anything that can think for itself, if you can't see where it keeps its brain."
|
|
Message is in Reply To:
| | Re: Line in the Sand
|
| Steve Bliss wrote... (...) Good idea, it's hard to discuss in so many threads. (...) Thank you for the well-written summary. Well-written because I agree with 99% of it ;) (...) Yes, too bad I'm off for an Internet-free :( 4-day week-end at the sea (...) (25 years ago, 21-Oct-99, to lugnet.cad.dev)
|
85 Messages in This Thread:
- Entire Thread on One Page:
- Nested:
All | Brief | Compact | Dots
Linear:
All | Brief | Compact
|
|
|
|