Re: Channel viewpoint stepping

New Message Reply Date view Thread view Subject view Author view

Alejandro Saez (cano++at++silicon.cl)
Tue, 21 Apr 1998 18:45:20 -0400


On Apr 21, 5:01pm, Jean-Luc Dery wrote:
> Subject: Channel viewpoint stepping
> Hi people,
>
> We are having problems with the way the channel viewpoint is being updated.
Our
> channel viewpoint steps every time the channel frame rate drops from 60Hz to
> 30Hz due to scene complexity. This happens only during the transitions. We
are
> quite sure that the problem comes from the way the channel viewpoint is
managed
> within our Performer based application since when frame rate is stable (30Hz
or
> 60Hz), the viewpoint movements are perfectly fluid. The problem occurs only
> when the frame rate changes. The value used for the viewpoint setting is
> computed and updated in a parallele process which always runs at 60Hz.
>
> Is the channel viewpoint set in the APP from pfChannel API frame conherent in
> the 3 stage APP CULL DRAW pipeline? I would suspect so since the pfChannel is
a
> libpf object.
>
> When the frame rate drops at frame 5 (D3) in the phase lock mode
>
> frame 1 2 3 4 5 6 7
> APP A1 | A2 | A3 | A4 | A5 | A6 | A7
> CULL | C1 | C2 | C3 | C4 | C5 | C6
> DRAW | | D1 | D2 | D3.|. | D5
>
> Is the viewpoint used to draw at frame 7 (D5) really set from A5 ?
>
> How can we guaranty channel viewpoint fluid movement, or what could we be
doing
> wrong that could cause the stepping in our application. Is there a need to
> interpolate viewpoint when frame rate changes.
>
> Thanks in advance for any help,
>
> Jean-Luc
>
> --
> _____________________________________________________________________________
>
> Jean-Luc Dery Discreet Logic
> System Engineer 10 Duke Street
> 3-D Graphics Technology Montreal (Quebec), Canada, H3C 2L7
> Tel: (514) 954-7239
> Email: jean-lucD++at++discreet.com Fax: (514) 393-0110
> _____________________________________________________________________________
> =======================================================================
> List Archives, FAQ, FTP: http://www.sgi.com/Technology/Performer/
> Submissions: info-performer++at++sgi.com
> Admin. requests: info-performer-request++at++sgi.com
>-- End of excerpt from Jean-Luc Dery

This could well be a visual effect. But just to make sure... How or who is
updating the viewpoint. Most of the time this is done by giving a trajectory
path and a velocity which combined give the speed vector. Since the velocity
must be calculated by discreet steps during every frame there is usually a
calculation of the form:

        Velocity[Km/Hr} --->Velocity[mts/sec] and then,

        Velocity[mts/sec]/Frame Rate[frames/sec]=Velocity [mts/frame]

        which would give the distance in meters (or any other unit) you must
travel during each frame to get the desired velocity in [mts/sec]. If you
assume constant frame rate then this is just a matter of multiplying current
speed by a pre-calculated constant. But if the frame rate drops down and you
are still assuming it's constant then you'll end up traveling at half the speed
since the above calculation is only done half as many times as it should during
the same period of time. If you were moving at constant 60[mts/sec] then the
above calculation will tell you that at 60Hz you should move 1 meter for each
frame, after 60 frames (1 second at 60Hz) you have move 60 times 1 meter, thus
60 meters/sec. If you suddenly drop down to 30Hz, then after 1 second (30
frames) you have only moved 30 times 1 meter --> 30 mts/sec.

-- 
------------------------------------------------------------------------
Alejandro Saez
Software Engineer
Silicon Chile S.A.
                                        Avda. Andres Bello 2777, Of. 602
E-mail: asaez++at++silicon.cl              	Providencia
Phone:  +56 (2) 203 3371 Ext. 105       Santiago
Fax:    +56 (2) 203 3370                Chile
------------------------------------------------------------------------
=======================================================================
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:57:17 PDT

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