Video recording with saved views

30 views
Skip to first unread message

Jon

unread,
Jan 8, 2010, 10:32:52 AM1/8/10
to delmia_quest
Hello,

I'm trying to record a video using QUEST's built-in video recording
(saving to the Camtasia codec for later editing), and I have a
sequence of saved views I'd like to fly between while recording. I
can fly very nicely between views using BCL statements, but I'm not
sure of the best way to execute those statements while running the
model.

Currently I have a SCL logic that just executes a scene change, then
delays for a while, then flies to the next, but it's not working out
very well.

I was just wondering if anyone had any information that could help me
get a nice video recorded.

Thanks,

Jon

Joe

unread,
Jan 8, 2010, 11:39:37 AM1/8/10
to delmia_quest
Jon,

I have used this routine for a number of years. It is similar to your
approach. It works well for me. Read the comments for implementation
and hints on making it work more smoothly...

I use the BCL command from the file pulldown to test how the
transitions from one view to another will look. You can also draw a
conveyor and adjust via points to have very fine control over your
views. Simply draw the conveyor, put a part onto the conveyor, and
mount the camera to the part. This takes a long time to get right but
the views are exactly what you want. The first method (shown below)
is the one I use 99% of the time.

One last video note, adjust your color defintions for a better looking
video... Preferences->Color->Define. Look for fully saturated
colors (at 100%) and reduce these numbers to 70% or 80%. The reds and
blues bleed particularly bad. Save the environment file somewhere and
you can reload it whenever you are shooting a video.


Joe

------------------

VAR
view_coreography_required : integer

-- INSERT INTO INIT LOGIC
---------------------------------------------------------------------------
procedure coreographer_init()
VAR
response_options : array[2] of string

BEGIN
response_options[ 0 ] = "NO"
response_options[ 1 ] = "YES"
item_pop_up(" DO YOU WANT VIEW COREOGRAPHY ? ",
response_options, view_coreography_required )
END

-- MAKE A MACHINE AND GIVE IT THIS AS A PROCESS LOGIC
procedure xview_manipulation()
VAR
ret_val : integer
BEGIN

if( view_coreography_required == 0 ) then
suspend_logic
exit
endif

while(TRUE) do
ret_val = BCL(" SET WORLD BACKFACE TO ON")
ret_val = BCL(" SET VIEW TO 'top' " )


-- if you are recording 15 fps on avi output, this will give
you a video that runs 15x real time when played back
-- for real time at 15 fps, use 1/15 for your time interval (.
0666)
-- you can adjust this interval during the recording (at any
point in the script) to jump over periods of your model that are not
as interesting to watch :)
ret_val = BCL(" SET SIMULATION TIME INTERVAL TO 1.0")
delay 10

ret_val = BCL(" LOCATE CAMERA BY -200,0,0 in 29" )
delay 30

-- The "IN" portion of this statement is critical to smooth
operation. Without it, your video will snap from one view to another
-- I am pretty sure that this is 29 updates not 29 seconds but
a quick test will tell you that
ret_val = BCL(" SET VIEW TO 'top1' IN 29" )
-- the BCL command is not time taking so you have to insert a
delay to allow the pan to complete
delay 29

-- delay here would pause at that specific view for a period of
time
delay 20

ret_val = BCL(" SET VIEW TO 'top2' in 29" )
delay 29

ret_val = BCL(" SET VIEW TO 'top3' in 29" )
delay 29

--repeat for as many views as required. you need to name the
views top1, top2, top3, etc for this to work
endwhile

end

Jon

unread,
Jan 8, 2010, 1:19:52 PM1/8/10
to delmia_quest
Hey Joe,

Thanks for the great advice, as always. That seems to work pretty
well, so I'll use that. Also great tip with the colors, makes
everything look much better.

Thanks again,

Jon

Reply all
Reply to author
Forward
0 new messages