Guy Premont (silicon-worlds++at++calva.net)
Thu, 10 Apr 1997 18:37:21 +0200
I'm using video texture on an Onyx RE2 with Sirius boards and running
IRIX 5.3 and Performer 2.0.1. There seems to be a problem with the
handling of texture memory. If the only texture in the scene is the
video texture, everything runs fine. However, if I put another texture
on the scene, I sometimes see corruption on the video texture ( I can
actually recognise the other texture). It seems to depend on the order
in which the texture are drawn.
My method is simple. I load a scene, then I check the SceneTexList for
any pfTexture named video. If I find one, I remember the pointer and
initialise it with the proper configuration for a Video texture:
texture->setFormat(PFTEX_SUBLOAD_FORMAT, PF_ON);
texture->setFilter(PFTEX_MINFILTER, PFTEX_BILINEAR);
texture->setLoadSize(...someting that depends on the video
format...);
texture->setFormat(PFTEX_INTERNAL_FORMAT, glTexFormat);
texture->setLoadMode(PFTEX_LOAD_SOURCE, PFTEX_SOURCE_VIDEO);
Then, I search all the GeoStates that use this texture and configure
them:
geostate->setMode(PFSTATE_CULLFACE, PFCF_OFF);
geostate->setAttr(PFSTATE_TEXENV, new(arena) pfTexEnv);
tmat : texture scaling matrix
geostate->setFuncs(loadTextureMatrixCB, loadIDMatrixCB, tmat);
geostate->setMode(PFSTATE_ENTEXTURE, PF_ON);
That's all. The transfer is triggered by a
vlBeginTransfer(vlServer, vlPath, 0, NULL);
Is there something wrong? Could somebody point me towards a source of
information on this subject?
Thanks
Guy Premont
===========================================
Silicon Worlds S.A.
12, rue de Chatillon 75014 Paris France
Tel: +33 (01) 53.90.11.11
Fax: +33 (01) 53.90.11.12
===========================================
=======================================================================
List Archives, FAQ, FTP: http://www.sgi.com/Technology/Performer/
Submissions: info-performer++at++sgi.com
Admin. requests: info-performer-request++at++sgi.com
This archive was generated by hypermail 2.0b2 on Mon Aug 10 1998 - 17:55:02 PDT