query geosets on paging ASDs....

New Message Reply Date view Thread view Subject view Author view

Simon Pigot (simon++at++dpiwe.tas.gov.au)
Sun, 07 Nov 1999 00:15:05 +1100


Is there anything special/extra that needs to be done/taken into consideration
when using pfASDAddQueryGeoset on a paging ASD? The scenario I have is that the
query geoset on a paging ASD (built using ASDGen and convasd) gives a seg
violation (stack trace follows) in my modified version of asdfly. The query
geoset consists of two triangles (that form a quad). The idea is that:

1. the fluxed geoset resulting from the query will be textured with a pfTexture
driven from a pfImageCache
2. replacement query geosets and changes to the imagecache centre will be
generated according to changes in the vehicle position

The effect should be a high detail texture tile moving over the paging ASD
according to the vehicle position. (For completeness the paging ASD will be
textured with a low res background texture as well).

If I try some of the simple example terrain geosets such as the road from
logo_lights.pos (which work ok under the non paging ASD used by run_logo) I get
endlessly repeating errors about degenerate triangles from the pfd
ASDalign/ASDproject functions (I can supply this error if necessary) as these
are called before pfASDAddQueryGeoset. My query geoset is ok and my
pfuLightPoints.c function (pfNewTextureDetailNode) which sets up the fluxed
result geoset is very similar (except for the imagecache driven texture which
happens after the seg violation anyway) to the example in
/usr/share/Performer/src/pguide/libpf/C/ASD_decal2.c. Any ideas on what could be
going wrong?

Thanks,
Simon

BTW: I've tried this under 6.2 + performer 2.2 on Crimson RealityEngine with
RM5s and 6.5 + performer 2.2.6 on Octane SI+Tex - same result.

> 0 pfBox::isect(const pfSeg*,float*,float*) const(0x68a575c0, 0x7fff28d8, 0x7d
cf8090, 0x7dcf8094, 0x0, 0x7dcf8094, 0x1a3bffc, 0x2) ["/pfdata/build/perf2.2.6-b
uild/perf/lib/libpr/pfGeoMath.C":1903, 0x529cdc4]
   1 pfTerrain::BFSSearchPointFinestPositionNormal(pfTerrainQueryInfo*,int*,int)
(0x64045a90, 0x7fff28d8, 0x7dcf80c0, 0x7dcf8094, 0x0, 0x7dcf8094, 0x1a3bffc, 0x2
) ["/pfdata/build/perf2.2.6-build/perf/lib/libpf/pfTerrainQuery.C":6927, 0x5266c
2c]
   2 pfTerrain::BFSSearchPointFinestPositionNormal(pfTerrainQueryInfo*,int*,int)
(0x64045a90, 0x7fff28d8, 0x64045a90, 0x7dcf8094, 0x0, 0x7dcf8094, 0x1a3bffc, 0x2
) ["/pfdata/build/perf2.2.6-build/perf/lib/libpf/pfTerrainQuery.C":6999, 0x5266f
68]
   3 pfTerrain::BFSSearchPointFinestPositionNormal(pfTerrainQueryInfo*,int*,int)
(0x64045a90, 0x7fff28d8, 0x64045a90, 0x7dcf8094, 0x0, 0x7dcf8094, 0x1a3bffc, 0x2
) ["/pfdata/build/perf2.2.6-build/perf/lib/libpf/pfTerrainQuery.C":6999, 0x5266f
68]
   4 pfTerrain::BFSSearchPointFinestPositionNormal(pfTerrainQueryInfo*,int*,int)
(0x64045a90, 0x7fff28d8, 0x64045a90, 0x7dcf8094, 0x0, 0x7dcf8094, 0x1a3bffc, 0x2
) ["/pfdata/build/perf2.2.6-build/perf/lib/libpf/pfTerrainQuery.C":6999, 0x5266f
68]
   5 pfTerrain::BFSSearchPointFinestPositionNormal(pfTerrainQueryInfo*,int*,int)
(0x64045a90, 0x7fff28d8, 0x64045a90, 0x7dcf8094, 0x0, 0x7dcf8094, 0x1a3bffc, 0x2
) ["/pfdata/build/perf2.2.6-build/perf/lib/libpf/pfTerrainQuery.C":6999, 0x5266f
68]
   6 pfTerrain::BFSSearchPointFinestPositionNormal(pfTerrainQueryInfo*,int*,int)
(0x64045a90, 0x7fff28d8, 0x64045a90, 0x7dcf8094, 0x0, 0x7dcf8094, 0x1a3bffc, 0x2
) ["/pfdata/build/perf2.2.6-build/perf/lib/libpf/pfTerrainQuery.C":6999, 0x5266f
68]
   7 pfTerrain::BFSSearchPointFinestPositionNormal(pfTerrainQueryInfo*,int*,int)
(0x64045a90, 0x7fff28d8, 0x64045a90, 0x7dcf8094, 0x0, 0x7dcf8094, 0x1a3bffc, 0x2
) ["/pfdata/build/perf2.2.6-build/perf/lib/libpf/pfTerrainQuery.C":6999, 0x5266f
68]
   8 pfTerrain::searchPointFinestPositionNormal(float*,float*,float*,float*,unsi
gned int)(0x68a575c0, 0x7fff28d8, 0x7dcf8090, 0x7dcf8094, 0x0, 0x7dcf8094, 0x1a3
bffc, 0x2) ["/pfdata/build/perf2.2.6-build/perf/lib/libpf/pfTerrainQuery.C":6849
, 0x5266998]
   9 pfTerrain::projectPointFinestPosition(float*,float*,unsigned int,float*)(0x
68a575c0, 0x0, 0x7dcf8090, 0x7dcf8094, 0x0, 0x7dcf8094, 0x1a3bffc, 0x2) ["/pfdat
a/build/perf2.2.6-build/perf/lib/libpf/pfTerrainQuery.C":2404, 0x525c4c0]
   10 pfTerrain::registerTriangle(float*,float*,float*,float*,float*)(0x64045a90
, 0x1, 0x6b90d574, 0x7fff29a0, 0x0, 0x7fff2990, 0x1a3bffc, 0x2) ["/pfdata/build/
perf2.2.6-build/perf/lib/libpf/pfTerrainQuery.C":5059, 0x52590c0]
   11 pfASD::nb_addQueryGeoSet(pfGeoSet*,float*,unsigned int,pfFlux*)(0x0, 0x6b8
e2c34, 0x10040510, 0x0, 0x64045a90, 0x7dcf8094, 0x0, 0x2) ["/pfdata/build/perf2.
2.6-build/perf/lib/libpf/pfASD.C":2783, 0x5189aec]
   12 ::pfASDAddQueryGeoSet(0x68a575c0, 0x0, 0x0, 0x0, 0x0, 0x7dcf8094, 0x1a3bff
c, 0x2) ["/pfdata/build/perf2.2.6-build/perf/lib/libpf/cASD.C":1112, 0x51ec84c]
   13 pfNewTextureDetailNode(0x6b8e2b50, 0x7fff28d8, 0x6b8e2d00, 0x6b8e3b10, 0x6
4045810, 0x7dcf8094, 0x1a3bffc, 0x2) ["/home/simon/performer/asdfly/pfuLightPoin
ts.c":936, 0x100230f0]
   14 flyLightsInit(0x64045810, 0x7fff28d8, 0x7dcf8090, 0x7dcf8094, 0x0, 0x7dcf8
094, 0x1a3bffc, 0x2) ["/home/simon/performer/asdfly/flyLightPoints.c":297, 0x100
1e7a4]
   15 initSceneGraph(0x64045770, 0x7fff28d8, 0x7dcf8090, 0x7dcf8094, 0x0, 0x0, 0
x1a3bffc, 0x2) ["/home/simon/performer/asdfly/perfly.c":631, 0x10018790]
   16 InitScene(0x68a575c0, 0x7fff28d8, 0x7dcf8090, 0x7dcf8094, 0x0, 0x7dcf8094,
 0x1a3bffc, 0x2) ["/usr/share/Performer/src/sample/C/common/generic.c":365, 0x10
00f0e0]
   17 main(0x10040230, 0x0, 0x7dcf8090, 0x7dcf8094, 0x0, 0x7dcf8094, 0x1a3bffc,
0x2) ["/usr/share/Performer/src/sample/C/common/main.c":124, 0x1001bce8]
   18 __start() ["/xlv55/kudzu-apr12/work/irix/lib/libc/libc_n32_M4/csu/crt1text
.s":177, 0x1000bc88]


New Message Reply Date view Thread view Subject view Author view

This archive was generated by hypermail 2.0b2 on Sat Nov 06 1999 - 05:13:03 PST

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