pfb-Bug with Flatten and DCS's

New Message Reply Date view Thread view Subject view Author view

Rudolf Schmidt (101623.733++at++CompuServe.COM)
06 Nov 96 04:08:09 EST


Hello everybody!

We are doing Vega/Performer-based vizsim on Infinite Reality systems, and seem
to have found a problem with performer-tree flattening, if the tree contains
DCS-nodes.

Our databases are built with MultiGen, using the OpenFlight format versions
14.2. These files are converted to pfb-files, where the tree is flattened and
cleaned.
We noticed that if there are DOF-beads in the Flight-files, the DCS for the
first one of those creates problems when flattening the tree.

Following below is an example of how pfPrint shows the tree. The first tree
excerpt shows the pftree-part of a DCS that got corrupted, the second one shows
a DCS that is OK.
Note that for the corrupt part, the top three lines of the transformation matrix
of the pfSCS that preceeds the pfDCS, are somehow "cycled through" (line 1
becomes line 3, line 2 becomes line 1, line 3 becomes line 2). This results in
a change of rotation axes when applying a rotation to that DCS.

---------------------------------- PfTree Excerpts
------------------------------------------------------
1. Example for trashed DCS
       [5:1]pfSCS pfId=637 0x18d96480 {
              trav masks: cull=0xffffffff draw=0xffffffff isect=0xffffffff
              bsphere: ctr(-1273.930908, 876.419189, 268.298615) rad=2.506492
              Matrix: {0.324238 0.945976 0.000000 0.000000
                           0.000000 0.000000 1.000000 0.000000
                           0.945976 -0.324238 0.000000 0.000000
                           -1272.133545 875.803162 268.298615 1.000000}
              Num Children: 1
            [6:0]pfDCS pfId=638 0x18d965c0 {
                path:
/RgData_070_071/RgData_070_071.flt/Tl_070_071_02.flt/SgHalbschranke_DB.flt/_D0_Bu
S
++at++D
                trav masks: cull=0xffffffff draw=0xffffffff isect=0xffffffff
                bsphere: ctr(0.000000, 0.000000, -1.900000) rad=2.506492
                Matrix: {1.000000 0.000000 0.000000 0.000000
                             0.000000 1.000000 0.000000 0.000000
                             0.000000 0.000000 1.000000 0.000000
                             0.000000 0.000000 0.000000 1.000000}
            Max Scale: 1.000000
                Num Children: 1
              [7:0]pfGeode pfId=639 0x18d96710 {

              [7:0]} pfGeode 639 0x18d96710
            [6:0]} pfDCS 638 0x18d965c0
          [5:1]} pfSCS 637 0x18d96480

2. Example for OK DCS

          [5:1]pfSCS pfId=659 0x18d98480 {
              trav masks: cull=0xffffffff draw=0xffffffff isect=0xffffffff
              bsphere: ctr(-1275.181885, 902.057983, 268.209534) rad=2.506492
              Matrix: {-0.944999 0.327074 0.000000 0.000000
                           -0.327074 -0.944999 0.000000 0.000000
                           0.000000 0.000000 1.000000 0.000000
                           -1276.977417 902.679443 267.209534 1.000000}
              Num Children: 1
            [6:0]pfDCS pfId=660 0x18d89ad0 {
                path:
/RgData_070_071/RgData_070_071.flt/Tl_070_071_02.flt/SgHalbschranke_DB.flt/_D0_Bu
S
++at++D
                trav masks: cull=0xffffffff draw=0xffffffff isect=0xffffffff
                bsphere: ctr(-1.900000, 0.000000, 1.000000) rad=2.506492
                Matrix: {1.000000 0.000000 0.000000 0.000000
                             0.000000 1.000000 0.000000 0.000000
                             0.000000 0.000000 1.000000 0.000000
                             0.000000 0.000000 0.000000 1.000000}
            Max Scale: 1.000000
                Num Children: 1
              [7:0]pfGeode pfId=661 0x18d98560 {

              [7:0]} pfGeode 661 0x18d98560
            [6:0]} pfDCS 660 0x18d89ad0
          [5:1]} pfSCS 659 0x18d98480
 --------------------------------------------------------------------------------

---

We noticed that this corruption does NOT occur, if we deactivate the tree-flattening.

As a workaround for now, we put a dummy DOF-bead in the resulting Flight-file, that has to preceed all other valid DOF's (i.e. dummy has to be the left-most one in the hierarchy view). When doing that, the dummy-DOF gets trashed, but the important ones remain untouched.

Our HW-SW setup is as follows: - SGI ONYX Infinite Reality with R4400, running IRIX 6.2 with patches 1355 and 1366 - Performer 2.1 or Performer 2.2 beta 48 (o32-libraries) - Vega 2.0.2

CAN ANYBODY HELP ???

--------------------------------------------------------------------------------- ------------------------------- Rudi Schmidt Krauss Maffei Simulationstechnik Tel: ++49 (89) 8899 2149 Fax: ++49 (89) 8899 3043 --------------------------------------------------------------------------------- --------------------------------

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

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