Re: Performer PFSTATE_CULLFACE

New Message Reply Date view Thread view Subject view Author view

John Rohlf (jrohlf++at++tubes)
Mon, 5 Dec 94 14:18:51 PST


>
> Angus Dorbie said...
>
> > The state mode PFSTATE_CULLFACE links front face and back face culling to the
> > one state variable. I would like to apply overrides to these states
> > independently to match some material attribute overrides which I intend
> > applying independently. Is there an existing or planned mechanism for
> > overriding these properties independently?
>
> IMHO - I feel that face culling should be taken out of the GeoState altogether
> and placed in the GeoSet. It's a real pain having to make two different versions
> of a GeoState for (say) a brick material because it is to be used on the exterior
> of a building and on both sides of a wall. Face culling is typically used to
> alter the polygonal geometry of a polygon (ie either single or double-sided) and
> that has little or nothing to do with the material/texture/colour properties of
> the GeoState.
>
> Perhaps pfCullFace should be applicable to either GeoState or GeoSet: either
> like a pfHighlight where the property becomes a property of the GeoSet itself,
> or perhaps by having a different primitive type for a double-sided (ie PFCF_OFF)
> triangle mesh.

        If pfCullFace() were strictly a pfGeoSet mode, then there would
        be no other Performer mechanism to set the face culling mode
        and Performer would be unable to track the face culling mode.
        Consequently, pfCullFace() must be exposed and it follows
        that it should be a pfGeoState mode since all libpr state
        may be set in a pfGeoState.

        However, it makes some sense for pfGeoSets to support
        pfCullFace - we already have a precedent in pfShadeModel.
        Angus, would this solve your problem?


New Message Reply Date view Thread view Subject view Author view

This archive was generated by hypermail 2.0b2 on Mon Aug 10 1998 - 17:50:43 PDT

This message has been cleansed for anti-spam protection. Replace '++at++' in any mail addresses with the '@' symbol.