Philippe Chiwy (depinxi++at++pophost.eunet.be)
Wed, 28 Feb 1996 23:48:42 +0100
We experience a problem with 'movie texturing'.
Thanks for any help, as this is an emergency problem.
We try to assign a sequence of images to a polygon by the following code.
It is inspired by the movietex.c (in the demos directory).
{
_itsTexture->setFormat(PFTEX_SUBLOAD_FORMAT, 1);
_itsTexture->setFilter( PFTEX_MINFILTER, PFTEX_BILINEAR);
_itsTexture->setFilter( PFTEX_MAGFILTER, PFTEX_BILINEAR);
_itsTexture->setLoadMode(PFTEX_LOAD_LIST, PFTEX_LIST_AUTO_SUBLOAD);
for (i = _startFrame; i <= _stopFrame; i++)
{
currTexName = (char *)pfCalloc(128,1);
sprintf(currTexName,"%s%d",baseName,i);
tex = new(arena) pfTexture;
pfNotify(PFNFY_ALWAYS, PFNFY_PRINT,"\tLoading tex %s as
frame %d\n", currTexName, i);
tex->loadFile(currTexName);
tex->setFormat(PFTEX_SUBLOAD_FORMAT, 1);
tex->setFilter(PFTEX_MINFILTER, PFTEX_BILINEAR);
tex->setFilter(PFTEX_MAGFILTER, PFTEX_BILINEAR);
aTexList->add(tex);
}
_itsTexture->setList(aTexList);
}
// movie update is done by the following :
_itsTexture->setFrame(_currFrame);
_itsTexture->apply();
_currFrame++;
if (_currFrame == _stopFrame)
_currFrame = _startFrame;
If we compile it in openGL, it runs perfectly on a High Impact.
... but if we compile it with IRIS GL, it kills the windows manager
on a Crimson RealityOne.... ONLY if we look at this polygon on certain
angle ( +/- from backside).
If we use the openGL version on the crimson, we get a core dump some-
where in the texturing of that polygon :
> 0 _bcopy(0x0, 0x1015f450, 0x400, 0x1015f450) ["bcopy.s":137,
0xfac0ae0]
1 CreateLevel(0x1015f1d8, 0x0, 0x8041, 0x1015f450)
["../VENICE/ven_texture.c":3148, 0xdb34150]
2 __glvenlc_TexImage(0x2, 0xde1, 0x0, 0x8041)
["../VENICE/ven_texture.c":4536, 0xdb36ef8]
3 __glvenlc_TexImage2D(0xde1, 0x0, 0x8041, 0x20)
["../VENICE/ven_texture.c":4566, 0xdb37104]
4 pfTexture::pr_format(int,int)(0x18732790, 0x1015f450,
0x7ffd, 0xc) ["../../../lib/libpr/pfTexture.C":2669, 0x5c5f44ec]
5 pfTexture::pr_subload(int,int,int,int,unsigned
int*,int,int,int,int,int,int,int)(0x18732790, 0x1, 0x801, 0x1)
["../../../lib/libpr/pfTexture.C":2761, 0x5c5f73b4]
6 pfTexture::pr_apply(void)(0x18732790, 0x1015f450, 0x400,
0x1015f450) ["../../../lib/libpr/pfTexture.C":3407, 0x5c5b7c1c]
7 pfTexture::apply(void)(0x0, 0x0, 0x5c5e21c4, 0x3)
["../../../lib/libpr/pfTexture.C":2061, 0x5c5c35d8]
8 pfGeoState::pr_unwind(void)(0x18732700, 0x1015f450, 0x400,
0x1015f450) ["../../../lib/libpr/pfGeoState.C":1784, 0x5c5c2ad8]
9 pfGeoState::pr_imApply(void)(0x18732700, 0x1015f450,
0x400, 0x1015f450) ["../../../lib/libpr/pfGeoState.C":1754, 0x5c5f8768]
10
pfGeoSet::pr_draw(pfGeoState*,pfDispList*,pfStatsValGeom*)(0x187325b0,
0x18732700, 0x0, 0x1015f450) ["../../../lib/libpr/pfGeoSet.C":1698,
0x5c5c3104]
11 _pfCuller::nb_draw(int)(0x187e6400, 0x0, 0x400,
0x1015f450) ["../../../lib/libpf/pfCuller.C":1419, 0x5c5c9404]
12 beginDraw(int)(0x5d584910, 0x1015f450, 0x400, 0x1015f450)
["../../../lib/libpf/pfProcess.C":3847, 0x5c5eb0bc]
13 pfDraw(0x0, 0x1015f450, 0x400, 0x1015f450)
["../../../lib/libpf/pfProcess.C":3873, 0x5c5f1700]
14 DrawFunc(pfChannel*,void*)() ["../../common/main.C":242,
0x41a2e0]
de pinxi sa/nv
Av. Huart Hamoir 46
B-1030 Brussels
Phone : 32 2 245 75 01
Fax : 32 2 215 72 06
This archive was generated by hypermail 2.0b2 on Mon Aug 10 1998 - 17:52:28 PDT