set up AS to only render on-screen vectors/objects?

Wondering how to accomplish a certain animation task? Ask here.

Moderators: Víctor Paredes, Belgarath, slowtiger

Post Reply
rpc9943
Posts: 227
Joined: Tue Dec 06, 2005 11:10 pm

set up AS to only render on-screen vectors/objects?

Post by rpc9943 »

This is quite preliminary of me to ask, but in a test render of beoug, with two characters in separate locations, I noticed it took a far longer time than expected in a single render- noticed that characters were being rendered even if they were off-camera... This seems quite strange to me. Is there an option to "cull" out things not in view?!?
Anime Studio, Xara Xtreme 4, Magix Movie Edit Pro 11, Papagayo, Ableton Live 8, Artrage Deluxe
User avatar
Víctor Paredes
Site Admin
Posts: 5818
Joined: Wed Jan 26, 2005 12:18 am
Location: Barcelona/Chile
Contact:

Post by Víctor Paredes »

actually I think it's more complex that only not render objects out of the screen. meanwhile, you can do what all us do, give invisibility to layers in the moments you don't want to render them.
Image Image Image Image Image Image
Moho co-owner

Previously Rigged animation supervisor: My father's dragon, Wolfwalkers & Star Wars Visions "Screecher's Reach"
My personal Youtube Channel
sbtamu
Posts: 1915
Joined: Tue Dec 15, 2009 5:05 am
Location: Texas
Contact:

Post by sbtamu »

selgin wrote:actually I think it's more complex that only not render objects out of the screen. meanwhile, you can do what all us do, give invisibility to layers in the moments you don't want to render them.
What Selgin says is about the only option i know of.

The reason it renders everything is so you can have stuff translate in and out like background etc.
Sorry for bad animation

http://www.youtube.com/user/sbtamu
User avatar
Mikdog
Posts: 1901
Joined: Tue Jul 05, 2005 3:51 pm
Location: South Africa
Contact:

Post by Mikdog »

If you're using AS6, click the drop-down arrow in the layer you want to make invisible and uncheck VISIBLE. This will set a keyframe in the timeline for visibility. Turn it back on when needed.

Quite right - even if something's out of shot it will be calculated and rendered, taking up time and cpu power. Turn things off if necessary.
rpc9943
Posts: 227
Joined: Tue Dec 06, 2005 11:10 pm

Post by rpc9943 »

i'd have to say this is kind of frustrating. i wish there were an auto function to make any objects invisible when not in camera view...

RonC
Anime Studio, Xara Xtreme 4, Magix Movie Edit Pro 11, Papagayo, Ableton Live 8, Artrage Deluxe
User avatar
jahnocli
Posts: 3471
Joined: Fri Oct 29, 2004 2:13 pm
Location: UK

Post by jahnocli »

rpc9943 wrote:i'd have to say this is kind of frustrating. i wish there were an auto function to make any objects invisible when not in camera view...

RonC
Sounds like a feature request...
You can't have everything. Where would you put it?
Genete
Posts: 3483
Joined: Tue Oct 17, 2006 3:27 pm
Location: España / Spain

Post by Genete »

I remember a post from slowtiger complaining on that some edges of thick outliens becomes not rendered when they are outside the camera view. I cannot confirm it but I bet that for pure vector (without any effect applied) the shapes and the oulines that lie outside the camera or the current view scope, are not rendered.
Other story is to not render objects that are out of visible scope but that are affected by effects that spread results beyond the boundaries of the object itself (i.e. large blurs, soft edges, or shadows).

-G
User avatar
Víctor Paredes
Site Admin
Posts: 5818
Joined: Wed Jan 26, 2005 12:18 am
Location: Barcelona/Chile
Contact:

Post by Víctor Paredes »

Genete wrote:I remember a post from slowtiger complaining on that some edges of thick outliens becomes not rendered when they are outside the camera view. I cannot confirm it but I bet that for pure vector (without any effect applied) the shapes and the oulines that lie outside the camera or the current view scope, are not rendered.
Other story is to not render objects that are out of visible scope but that are affected by effects that spread results beyond the boundaries of the object itself (i.e. large blurs, soft edges, or shadows).
Yeah, I remembered that thread too, but find it too hard to explain :lol:
Image Image Image Image Image Image
Moho co-owner

Previously Rigged animation supervisor: My father's dragon, Wolfwalkers & Star Wars Visions "Screecher's Reach"
My personal Youtube Channel
User avatar
slowtiger
Posts: 6257
Joined: Thu Feb 16, 2006 6:53 pm
Location: Berlin, Germany
Contact:

Post by slowtiger »

The task could be described like this:

"Before rendering a frame, check if content of layers is inside the project area. Don't render those which aren't."

This might be OK with image layers because their bounding box is easy to retrieve. With vector layers it gets more complicated because the bounding box must be calculated first, which means going through all points ... in that time the layer might be rendered as well.

And even if all points are safely outside the project window, a part of the shape may not, and surely not the outline of that shape. And don't let me start about blurred layers or those casting a shadow ...

Of course a solution for all these little difficulties is possible. I could think of a task list like this:

"function don't_render_outside;
// this creates a list of layers not to be rendered
- if layer contains shadow or blur, except from list
// these will render always, just to be safe
- calculate bounding box for all other layers and store with scene
- calculate safe zone around project size (to catch outlines and tricky curves), maybe + P*0.5 on each side
- calculate all size and position changes on all timelines (nested!) to update list on certain frames
- check for collision, if not, put on list
- render what's not on that list."

But I think if we really want to speed up rendering we need something more, especially some measurements to not render the same things again and again. AS should be able to go through all timelines and mark frame areas where no change happens at all, so there's only one frame rendered, then repeated.

Again there will be tricky situations, like moving outlines or noise. Getting this done in a satisfying way only works with a hierarchical analysis of the whole project and will, I suppose, involve the introduction of several temporary buffers. I don't know how this is handled in the 3D world, but suspect that it's not easy.
rpc9943
Posts: 227
Joined: Tue Dec 06, 2005 11:10 pm

Post by rpc9943 »

I actually worked in blender 3d before, working on graphics and gui on a 3d game using the engine... My team partner coded a "culling engine" which was lacking in the engine. It isn't too foreign in the 3d rendering world to have culling. It would be awesome to actually have maybe an option to set the distance of objects from the camera to not render...

I suppose then also if I want to create quick two scene dialogue, for instance someone outside talking on a radio to someone in a base (a specific idea I set), instead of the camera switching positions, I could set the two scenes as the top of heirarchies and play with the visible on/off, and keeping the scenes overlapping each other.... Good food for workflow ideas here.

Maybe for now it is truly best to do it manually.

Thank you

RonC
Anime Studio, Xara Xtreme 4, Magix Movie Edit Pro 11, Papagayo, Ableton Live 8, Artrage Deluxe
Post Reply