ranimate

** Proprietary **

I apologize if this went through more than once...

Hi Everyone,

I was hoping someone could give me a quick pointer with using ranimate.
(or perhaps this is a case where I should be using ranimove?)

I have a building where I would like to make an animation of the sun
moving across the space. It seems that if you have a static scene and a
dynamic view, then you use the OCTREE (say OCTREE= scene.oct) variable
in the ranfile while the view variable and file contains all the
different views (one per frame). However in my case I would have a
static view and a dynamic octree.

Say I have sky files; sky1.rad sky2.rad ... skyN.rad

Then how would my ANIMATE variable look in the ranfile? There is no
example in the man page.

ANIMATE= ???

If there is a more appropriate place to ask this type of question,
please let me know. Thanks in advance if anyone can help out.

Mark de la Fuente
William Tao & Associates
Electrical Project Engineer
349 Marshall Avenue
Suite 200
Webster Groves, MO 63119
v. 314.961.5252
f. 314.961.5258

Mark de la Fuente wrote:

I have a building where I would like to make an animation of the sun
moving across the space. It seems that if you have a static scene and a
dynamic view, then you use the OCTREE (say OCTREE= scene.oct) variable
in the ranfile while the view variable and file contains all the
different views (one per frame). However in my case I would have a
static view and a dynamic octree.

Hi Mark,

I have no experience with ranimate or ranimove, so I can't say for certain that there's no way to do that with those tools. However, There *is* a way to animate your sun, simply using rpict and some shell scripting. John Mardaljevic's script in "Rendering with Radiance" is a prime example. The basic idea is that you set up a for-each loop for each timeslice you want to render. John's script plugs the variable into the time parameter for gensky. Alternately you could feed the variable to sed to directly modify a sky.rad file. That way, you could use rad to produce the renderings.

Also, if you're primarily concerned with seeing the movement of the sun patch, a neat trick (again John M's idea) is to render the stills with -ab 0 and assign some decent -av so that you can at least see the rest of the space. By eliminating the ambient calculation, your stills will render ultra-quickly; you can be watching the sun path in minutes, rather than hours. As Martha Stewart used to say, that's a Good Thing. (These days, she says "I swear to tell the truth, the whole truth and nothing but the truth.") =8-)

···

----

      Rob Guglielmetti

e. [email protected]
w. www.rumblestrip.org

** Proprietary **

Rob, thank you. I actually stumbled upon the script last night as well. Had I noticed that " ' " is not the same as " ` " I would have gotten it to work much sooner!

But just for anyone who runs into this in the future... ranimate pipes the output of the ANIMATE variable into rpict just like it would if you were using the OCTREE variable. Only since our scene is dynamic, a script is needed that will produce an octree but not actually store it in a file.

In my case I was using a file called genoctree.script, so my ranfile included ANIMATE= genoctree.script

As I recall, genoctree.script looked something like this:

frame=$1
time=`ev "6+($frame/2)"`
gensky 1 28 $time > sun.rad
oconv -i scene.oct -f sun.rad
rm sun.rad

Where I'm telling the computer I want to create my sky starting from 6:30 AM and every frame from then on will add = � hour.

Now, if anyone can help me figure out a way to get a time stamp on each frame, that would be great!

Mark de la Fuente
[email protected]

Mark de la Fuente wrote:

I have a building where I would like to make an animation of the sun
moving across the space. It seems that if you have a static scene and a
dynamic view, then you use the OCTREE (say OCTREE= scene.oct) variable
in the ranfile while the view variable and file contains all the
different views (one per frame). However in my case I would have a
static view and a dynamic octree.

Hi Mark,

I have no experience with ranimate or ranimove, so I can't say for
certain that there's no way to do that with those tools. However, There
*is* a way to animate your sun, simply using rpict and some shell
scripting. John Mardaljevic's script in "Rendering with Radiance" is a
prime example. The basic idea is that you set up a for-each loop for
each timeslice you want to render. John's script plugs the variable
into the time parameter for gensky. Alternately you could feed the
variable to sed to directly modify a sky.rad file. That way, you could
use rad to produce the renderings.

Also, if you're primarily concerned with seeing the movement of the sun
patch, a neat trick (again John M's idea) is to render the stills with
-ab 0 and assign some decent -av so that you can at least see the rest
of the space. By eliminating the ambient calculation, your stills will
render ultra-quickly; you can be watching the sun path in minutes,
rather than hours. As Martha Stewart used to say, that's a Good Thing.
  (These days, she says "I swear to tell the truth, the whole truth and
nothing but the truth.") =8-)

···

----

      Rob Guglielmetti

e. [email protected]
w. www.rumblestrip.org

** Proprietary **

Rob, thank you. I actually stumbled upon the script last night
as well. Had I noticed that " ' " is not the same as " ` "
I would have gotten it to work much sooner!

But just for anyone who runs into this in the future...
ranimate pipes the output of the ANIMATE variable into rpict just
like it would if you were using the OCTREE variable. Only since
our scene is dynamic, a script is needed that will produce an
octree but not actually store it in a file.

In my case I was using a file called genoctree.script, so my
ranfile included ANIMATE= genoctree.script

As I recall, genoctree.script looked something like this:

frame=$1
time=`ev "6+($frame/2)"`
gensky 1 28 $time > sun.rad
oconv -i scene.oct -f sun.rad
rm sun.rad

You should use a different name for the sun.rad file for each
frame. If you have more than one process runing, one might delete
the sun.rad of another (though this may be an unlikely coincidence,
it's still possible).

Where I'm telling the computer I want to create my sky starting
from 6:30 AM and every frame from then on will add = � hour.

Now, if anyone can help me figure out a way to get a time stamp
on each frame, that would be great!

Create expressions to rename the file from <basename>frame.pic to
<basename>timestamp.pic and append them to a file you can run as
a script after the rendering.

There might be a built-in solution, but this will work as well:

#! /bin/bash
frame=$1
time=`ev "6+(${frame}/2)"`
gensky 1 28 ${time} > sun_${frame}.rad
oconv -i scene.oct -f sun_${frame}.rad
rm sun_${frame}.rad
# create rename-cmds
echo "mv /path/to/*_${frame}.pic /path/to/room_at_${time}.pic" >> rename.sh

Thomas

···

On Wed, Jan 28, 2004 at 06:34:59PM -0600, Mark de la Fuente wrote: