Subject:
|
Re: Line in the Sand
|
Newsgroups:
|
lugnet.cad.dev
|
Date:
|
Sat, 6 Nov 1999 20:50:24 GMT
|
Viewed:
|
2754 times
|
| |
| |
Steve:
I have a small linguistic correction, but except for that,
I consider the document finished:
There will be a few requirements placed on the design of rendering programs,
in order to achieve correct renderings. Any program should may violate
^^^^^^^^^^
Wouldn't "may" be sufficient?
these requirements, if there is another way to acheive a valid rendering.
Rui:
> > > > <http://www.geocities.com/partsref/bfcspec.txt>
> I don't have much time now, but here are several problems.
>
> Examples:
>
> check the following two statements:
> ---------------------------------------------------------------------------
> > To make this standard useful and effective, the LDraw parts library
> > must be updated to follow the new standard. Since it would be difficult to
> > rewrite the entire library in one update, the standard will allow for a
> > mix of extended and unextended files in one rendering.
>
> ---------------------------------------------------------------------------
> > 2 Allowable Clipping. A subfile can only have clipping applied when the
> > 2 following conditions apply:
> > - All superfiles are certified.
> > - The current file is certified.
> > 2 - No superfile has disabled clipping prior to referencing this
> > 2 subfile.
>
> ---------------------------------------------------------------------------
>
> Allows a mix of extended and unextended files in one rendering, but
> to allow clipping, all files, have to be certified !?!?
All the files in the relevant _branch_ of the rendering
tree.
If you certify your model, then every certified primitive
will be drawn with back-face-culling when it is used for a
certified part.
You can't get it any better!
As soon as all the primitives are certified and people start
to insert certification flags in their models, all certified
parts will be drawn with back-face-culling.
I repeat: You can't get it any better!
> This basicly resumes to:
> - You won't benefit from the changes, UNLESS ALL the files you use
> are certified.
Wrong.
> - Every already made (Old) model, won't ever benefit unless it is
> redited.
Yes, but if it only refers to ordinary parts, that is just a
matter of inserting a "0 CERTIFY BFC" line in the file.
I presume that the modelling programs (such as MLCAD) will
insert the "0 CERTIFY BFC" line automatically in all models
built in the "builder mode" (but not in "parts author
mode").
> > In some cases, it may be desirable to assume that a file is
> > right-sideout, (and therefore clippable) even though not all superfiles
> > are certified. One obvious example is files in the ldraw\parts
> > directory.
>
> This paragraph is another one, sorry to say this, but IMHO
> this paragraph it's a mess. (Could someone explain better !?)
It means that there could be an option in the renderer that
tells it that some files assume that their supermodels are
certified, even if they (the supermodels) don't contain a
"0 CERTIFY BFC" line.
This is just an _option_ for the renderers, which can make
them use back-face-culling on old models without a
"0 CERTIFY BFC" line.
> So now we can bend some of the rules, depending on path or something
> else (which is not defined). How is this supposed to be implemented ?
The renderers are allowed to give the user the _option_ of
bending the rules slightly.
> And what about the suggestion that someone supplied, that the default
> context should be clarified ?
> In my opinion the language extensions should be written with curly
> braces '{' '}' instead of '[' ']', because the later means optional
> parameter and the previous means compulsory parameter with possible
> options if the pipe '|' is used.
> So IMHO it should be like this:
> -----------------------
> 0 CERTIFY { BFC | NOBFC }
> default: NOBFC
No, but you could write it like this:
{ 0 CERTIFY [ BFC | NOBFC ] }
The default value is for the case where the statement is
omitted completely.
> -----------------------
> 0 WINDING { CW | CCW | UNKNOWN }
> default: CCW
No, but you could write it like this:
{ 0 WINDING [ CW | CCW | UNKNOWN ] }
Again, the default value is for the case where the statement
is omitted completely.
> > UNKNOWN = winding direction is unknown or variable. This setting will
> > disable clipping, until the winding is reset.
>
> Using someones expression, the UNKNOWN is 'syntatic sugar', because this
> will be implemented internally as CLIPPING OFF.
> If the user want's to inform that the 'winding' is not known,
> then he can make a regular comment, and use CLIPPING OFF
This sounds correct, but do we want to eliminate this
syntactic sugar?
> -----------------------
> 0 CLIPPING { ON | OFF }
> default: clipping off
No, but you could write it like this:
{ 0 CLIPPING [ ON | OFF ] }
Play well,
Jacob
------------------------------------------------
-- E-mail: sparre@cats.nbi.dk --
-- Web...: <URL:http://www.ldraw.org/FAQ/> --
------------------------------------------------
|
|
Message has 2 Replies: | | Re: Line in the Sand
|
| (...) Agreed, it's logical. Should is too strong ! not like must, but strong anyway. (...) of course, but all files start on one root, if that is no BFC certified, than no acceleration. (...) but a certified part can have sub parts not certified ! (...) (25 years ago, 8-Nov-99, to lugnet.cad.dev)
| | | Re: Line in the Sand
|
| (...) Yes, and 'may' is more more correct than 'should', since the "Rendering Engine Requirements" section really is included just to provide a framework for the language extensions. The document specifies the input, and we have a general (...) (25 years ago, 9-Nov-99, to lugnet.cad.dev)
|
Message is in Reply To:
| | Re: Line in the Sand
|
| (...) As I said it is not ready iet. The questions (options) that where up in the air, are still there, no one as discussed them, after this spec file was created. I don't have much time now, but here are several problems. Examples: check the (...) (25 years ago, 5-Nov-99, to lugnet.cad.dev)
|
85 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
|
|
|
|