re: changing texture internal formats

New Message Reply Date view Thread view Subject view Author view

Michael T. Jones (mtj++at++babar.asd.sgi.com)
Wed, 18 Sep 1996 08:29:38 -0700


Several helpful code fragments have been posted to do this.

Don't forget that there is a "scene geostate" attachment point on
the pfScene node, and if this has been used (as in pfuMakeSceneGState)
then the posted code will not find and change this one.

To make this easier, you might take a look at the pfutil code
in "tex.c", namely:

    pfList* pfuMakeTexList (pfNode *node);

        which gives you a list pointers to the unique textures
        referenced by all objects in the scene graph parented
        by that node.

    pfList* pfuMakeSceneTexList(pfScene *scene);

        which does the same thing, but grabs the texture
        referenced by the scene geostate as well.

You could use something based on this pseudocode to do the job:

function changeInternalFormat (NODE, FORMAT) is
    list = pfuMakeSceneTexList(NODE)
    for each pointer in list
        set internal format of texture to FORMAT
    free list

Michael

Be seeing you, Phone:415.933.1455 Fax:415.965.2658 M/S:8U-590
Michael T. Jones Silicon Graphics, Advanced Systems Division
mtj++at++sgi.com 2011 N. Shoreline Blvd., Mtn. View, CA 94039-7311
                    "Du musst Amboss oder Hammer sein" -- Goethe
=======================================================================
List Archives, FAQ, FTP: http://www.sgi.com/Technology/Performer/
            Submissions: info-performer++at++sgi.com
        Admin. requests: info-performer-request++at++sgi.com


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:53:33 PDT

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