Viewport performance for animation playback - Tips?

Discussions about animating in SOFTIMAGE©
User avatar
sonictk
Posts: 124
Joined: 04 Jan 2012, 04:01
Contact:

Viewport performance for animation playback - Tips?

Post by sonictk » 26 Mar 2013, 17:44

So something has been kind of bugging me ever since I started to start using XSI for more serious animation projects.

Is it just me or is XSI's viewport performance for animation playback rather slow in general? I can never get the viewport to go past 20 FPS for playback, which is extremely annoying.

I've been working with both the Malcolm rig http://www.animschool.com/DownloadOffer.aspx

and the AREA autodesk rigs: http://area.autodesk.com/contest

And in both cases in-viewport performance isn't terrible...but it isn't ideal, buttery-smooth 60fps with no dropped frames either. (Readout shows me 20 FPS average when I set a 60 FPS rate, which is kinda...bad) it's almost impossible to animate finer details without doing a viewport capture and then going off there. Which I hope isn't just a matter of hardware, because I can actually handle more complex scenes in Maya with less slowdown.

But of course...Sys specs! Just in case it really is related to something:
- i5-2500k (quad-core/quad thread 3.3 Ghz /3.7 Turbo)
- 16 GB RAM
- GTX 560 Ti 4 GB vRAM

And on my laptop (which actually performs slightly, barest-of-teeniest-benchmarks worse):
- i7-3630QM (Quad core/8 thread 2.4 GHz / 3.4 Turbo)
- 24 GB RAM
- Quadro k2000m 2GB vRAM

The funny thing is, in both cases scene interaction is actually blinding fast, with no slowdown whatsoever. So I'm not sure if it's just me having certain settings funny or something like that.

Anyone who can offer any tips on animating higher-poly models /complex rigs in XSI while managing to get 1:1 playback performance, would you mind sharing your expertise to a novice animator? I'm very much interested in making sure my skills in XSI for animating are up to scratch, especially since I've been animating in Maya for school projects for a while now and I'd like to be able to work on my own projects in XSI. :D

Thanks!

User avatar
csaez
Posts: 253
Joined: 09 Jul 2012, 15:31
Skype: csaezmargotta
Location: Sydney, Australia
Contact:

Re: Viewport performance for animation playback - Tips?

Post by csaez » 26 Mar 2013, 17:51

Try turning off vsync on your graphics settings (nvidia panel or equivalent) :)

User avatar
sonictk
Posts: 124
Joined: 04 Jan 2012, 04:01
Contact:

Re: Viewport performance for animation playback - Tips?

Post by sonictk » 26 Mar 2013, 18:45

Image

Was already off... =\

I should mention, working with simpler rigs like BeeBoy http://www.creativecrash.com/xsi/downlo ... ge-2011--2 gives me better performance, so at first I thought it was just hardware.

Additional, using fast playback option in XSI gives me a "cache overflow" error and the animation plays back with lots of scene elements (geometry, nulls etc.) missing/not updating =[

User avatar
Draise
Posts: 893
Joined: 09 Oct 2012, 20:48
Skype: ondraise
Location: Colombia

Re: Viewport performance for animation playback - Tips?

Post by Draise » 27 Mar 2013, 00:56

In the playback options you can choose to play only selected geometry or SRT or all or just selected viewport, etc.. I am not sure what is SRT playback is, but that may help in playback speeds. Also going to shaded display mode instead of textured display mode dramatically improves things.

I think these might be... some no brainer solutions you might have tried but ehm......
I would love to hear what are some of the solutions, I will have to try the Vsync option.

User avatar
sonictk
Posts: 124
Joined: 04 Jan 2012, 04:01
Contact:

Re: Viewport performance for animation playback - Tips?

Post by sonictk » 27 Mar 2013, 02:53

- Toggling between shaded/textured doesn't do much (since I am actually playing back a single mesh for now, there's only about 4 1024* maps being loaded in)
- Tried updating only geometry, didn't really do much either (and as an animator, it's bloody annoying to not be able to see my controls updating in the viewport in order to tell what's going on. SRT Playblack ends up being around the same as normal playblack for now, since it updates only elements that have SRT changes (which is in this case, everything, for a single character in a scene)

Thanks for the replies though, I know there aren't as many animators around so I'm grateful for anyone who can help offer any advice they have on this :P Maybe those who work with ICE can offer their input on this as well? Surely simulation playback for you guys isn't 1:1 as well...

User avatar
Draise
Posts: 893
Joined: 09 Oct 2012, 20:48
Skype: ondraise
Location: Colombia

Re: Viewport performance for animation playback - Tips?

Post by Draise » 27 Mar 2013, 17:55

Um....... ok, maybe the viewport isn't so good for playback. Well here is something else I usually do to animate, have a small viewport, have vsync off, play on active viewport only (at a small size, dont foget - like 640x480 or something), shaded mode only, sometimes textured when needed (prefer textured), and make sure playback is at RT, or realtime instead of ALL (which plays each frame without dropframe playback) (RT playback is choppy sometimes though...)

Maybe that will help... also, also try hide the simulated meshes, or particles. Like clothes. I usually can't playback anything decent with simulations, even cached ones (though caching it does help)

Ah, and have a good video card. :-j

User avatar
sonictk
Posts: 124
Joined: 04 Jan 2012, 04:01
Contact:

Re: Viewport performance for animation playback - Tips?

Post by sonictk » 28 Mar 2013, 13:37

Draise wrote:Um....... ok, maybe the viewport isn't so good for playback. Well here is something else I usually do to animate, have a small viewport, have vsync off, play on active viewport only (at a small size, dont foget - like 640x480 or something), shaded mode only, sometimes textured when needed (prefer textured), and make sure playback is at RT, or realtime instead of ALL (which plays each frame without dropframe playback) (RT playback is choppy sometimes though...)

Maybe that will help... also, also try hide the simulated meshes, or particles. Like clothes. I usually can't playback anything decent with simulations, even cached ones (though caching it does help)

Ah, and have a good video card. :-j
>_< At first I was really prepared to write it off as XSI's viewport performance, but...

http://youtu.be/yFxzYbgctvU?t=2m45s

Is it just me or are their animations playing back at much better performance than what I'm getting? I mean, look at Lightning HOWS THEY DOES THAT

(And yes, I have RT playback on :P)

EDIT: after some fiddling, I realized if I set the fast playback cache to something insane, like 10 MB/Frame and let it cache for about 8-10 playbacks it works, but I don't get to see my textures...apparently fast playback doesn't support it. =\
Last edited by sonictk on 28 Mar 2013, 14:55, edited 1 time in total.

User avatar
druitre
Posts: 471
Joined: 25 Jun 2009, 23:35

Re: Viewport performance for animation playback - Tips?

Post by druitre » 28 Mar 2013, 14:47

sonictk wrote: Thanks for the replies though, I know there aren't as many animators around so I'm grateful for anyone who can help offer any advice they have on this :P Maybe those who work with ICE can offer their input on this as well? Surely simulation playback for you guys isn't 1:1 as well...
For simulations I don't expect 1-on-1 realtime playback, for animating it's essential though. I've never been able to figure out how to get that, though, just like you. So far I've managed to get by with captures, but I don't like it at all. If it is possible by any kind of combination of settings within SI, I'd like/expect there to be a preset for this - a barebones, stripped of all but the essentials animation mode that's optimized for RT playback. That keeps to a fluid, exact framerate of 25 fps or whatever you set it to.

Never tried the vsync setting, I'll have a look at that, thanks.

Oh, btw, not many animators around?? Where do you get that? As far as I know, SI is built as a CA tool, originally, all the simulation stuff is relatively recent.

User avatar
sonictk
Posts: 124
Joined: 04 Jan 2012, 04:01
Contact:

Re: Viewport performance for animation playback - Tips?

Post by sonictk » 28 Mar 2013, 15:09

druitre wrote:
sonictk wrote: Thanks for the replies though, I know there aren't as many animators around so I'm grateful for anyone who can help offer any advice they have on this :P Maybe those who work with ICE can offer their input on this as well? Surely simulation playback for you guys isn't 1:1 as well...
For simulations I don't expect 1-on-1 realtime playback, for animating it's essential though. I've never been able to figure out how to get that, though, just like you. So far I've managed to get by with captures, but I don't like it at all. If it is possible by any kind of combination of settings within SI, I'd like/expect there to be a preset for this - a barebones, stripped of all but the essentials animation mode that's optimized for RT playback. That keeps to a fluid, exact framerate of 25 fps or whatever you set it to.

Never tried the vsync setting, I'll have a look at that, thanks.

Oh, btw, not many animators around?? Where do you get that? As far as I know, SI is built as a CA tool, originally, all the simulation stuff is relatively recent.
/fellow animator waves madly

I think I've been in school too long, where even professors sometimes walk over my workstation and see me doing my models with XSI and go "what the hell are you using" :P . But it seems that most people around on XSI talk about ICE and simulation all day long and while I'm desperately trying to keep up, most of the math is going right over my head... -__-" I know there's a ton of animators on XSI around the world but it seems like everyone's on Maya/max now for most stuff in the US. =\

(The VSync option should be off by default though, btw)

BTW, unless there's an actual solution to this problem, I think after playing around...the easiest way for an actual fix would be to:

- change the fast playback to a auto-cache toggle that we can turn on/off by hotkey, have it support anything from simple wireframe to full on HQV!!!!...or at least textures+basic lighting shaders
- allow us to set the cache directory manually (so I can have it write to SSD/eSATA drive instead of RAM or the local disk)

(Also have this as a plugin instead of SI 2015. :X )

angus_davidson
Posts: 583
Joined: 20 Dec 2012, 05:13
Skype: ithacapellin

Re: Viewport performance for animation playback - Tips?

Post by angus_davidson » 28 Mar 2013, 17:17

We always get our students to capture when they need to test timing. Even though we are not on bad machines we have always had issues when it comes to realtime playback. We have always suggested the following

a) Work in layers so you can easily toggle off things you dont need.
b) Wireframe what you need but dont interact with directly.
c) Use proxy geometry (about the only place I still use nurbs) to get 95% of the animation curves into place. specifically for scenes where it mostly full body movement.

Once you get that done move onto specifics like micro aligning fingers/feet and facial expressions in head-shots and other things that do require the full geometry to be visible.

Its always bothered me that for all of the gazillion polygons our graphics cards are supposed to be able to throw around that 3D apps battle so much to get anywhere decent graphics performance. Maybe ADSK needs to work much more closely with NVIDIA and AMD to get proper performance drivers for business apps. When you buy a quadro specifically for 3D you shouldnt have a standard 650 kick all kinds of shit out of it performance wise.

Forgot to add on a tech level you can also have 3 separate drives for your 1) operating system, 2) Autodesk program files, 3) and lastly one purely for caching. Having a SSD for the drives also helps a lot.

Maya (MAc version) on my Mac Book Pro (15"baby retina 650m) can run my current scene at 30fps no propblem, but the same thing on Maya for Windows on my dell T5500 (quadro 4000) only gets 20-25 fps (both are the 2013 version)
--
Technomancer at Digital Arts
Wits University

User avatar
druitre
Posts: 471
Joined: 25 Jun 2009, 23:35

Re: Viewport performance for animation playback - Tips?

Post by druitre » 28 Mar 2013, 18:20

Playback set to RT actually has never seemed to do what it's supposed to do... in a light scene I get my framerate allright, but if I add characters (deformations seem to be the main problem) it simply starts to drop speed (taking longer for the same amount of frames). Shouldn't it drop frames so timing remains constant? It's weird that when I scrub the timeline I can easily have that.

The fast playback option is sort of a step in the right direction, but (as you said sonictk) it should autoclear/refresh with each animation adjustment to be not so disruptive to workflow. Supporting more scene features and maybe do 'smart' caching (only update what's been modified and keep the rest) could help here.

But, indeed one would think it should be possible on today's hardware to get better performance. Maya seems to do so? How's Max in this regard?

User avatar
sonictk
Posts: 124
Joined: 04 Jan 2012, 04:01
Contact:

Re: Viewport performance for animation playback - Tips?

Post by sonictk » 28 Mar 2013, 18:28

angus_davidson wrote:We always get our students to capture when they need to test timing. Even though we are not on bad machines we have always had issues when it comes to realtime playback. We have always suggested the following

a) Work in layers so you can easily toggle off things you dont need.
b) Wireframe what you need but dont interact with directly.
c) Use proxy geometry (about the only place I still use nurbs) to get 95% of the animation curves into place. specifically for scenes where it mostly full body movement.

Once you get that done move onto specifics like micro aligning fingers/feet and facial expressions in head-shots and other things that do require the full geometry to be visible.

Its always bothered me that for all of the gazillion polygons our graphics cards are supposed to be able to throw around that 3D apps battle so much to get anywhere decent graphics performance. Maybe ADSK needs to work much more closely with NVIDIA and AMD to get proper performance drivers for business apps. When you buy a quadro specifically for 3D you shouldnt have a standard 650 kick all kinds of shit out of it performance wise.

Forgot to add on a tech level you can also have 3 separate drives for your 1) operating system, 2) Autodesk program files, 3) and lastly one purely for caching. Having a SSD for the drives also helps a lot.

Maya (MAc version) on my Mac Book Pro (15"baby retina 650m) can run my current scene at 30fps no propblem, but the same thing on Maya for Windows on my dell T5500 (quadro 4000) only gets 20-25 fps (both are the 2013 version)
Yea, I usually take the "pose everything at once" approach when it comes to 3D though, layering stuff makes it kinda tough to go pose-to-pose. I might have to change my approach specifically for XSI since this is getting a little annoying. At least in Maya I usually would only do playblasts for final tweaks to timing...in XSI it's downright impossible on larger scenes to be able to view those changes without doing a viewport capture, straight out.

Is it possible to specify a custom directory for XSI to store the cache files for fast animation playback? I was trying to look around for this option in the docs but didn't come up with anything...I'm usually blind when it comes to these things though so bear with me :P

Thanks for the reminders about proxying using NURBs though, going to have to have a go at that and see if it helps some...

EDIT: @druitre: The main concern I have is that with similar complicated rigs (Dave/Gwen/Rascal, Malcolm) across Maya/Max/XSI it seems to me that for viewport performance-wise I get the best playback speed out of Maya's viewport, of all things.

EDIT 2: Hmm, finally tried importing 3 animation rigs and test animating all of them at one go. Results? Averaging 6 FPS for a RT playback in-viewport :P Oddly enough, setting the scene to bounding box display doesn't improve things by much...but if I run a polygon reduction filter to bring the models down to under 3k polys (total scene polycount under 10k) then playback becomes to start becoming close to acceptable...averaging 20FPS.

angus_davidson
Posts: 583
Joined: 20 Dec 2012, 05:13
Skype: ithacapellin

Re: Viewport performance for animation playback - Tips?

Post by angus_davidson » 28 Mar 2013, 19:49

sonictk wrote:
Yea, I usually take the "pose everything at once" approach when it comes to 3D though, layering stuff makes it kinda tough to go pose-to-pose. I might have to change my approach specifically for XSI since this is getting a little annoying. At least in Maya I usually would only do playblasts for final tweaks to timing...in XSI it's downright impossible on larger scenes to be able to view those changes without doing a viewport capture, straight out..
Sorry I should have been more specific. I wasnt talking about animating in layers. Rather using the scene layers purely to toggle visibility. So if you have 2 characters in the scene interacting for example, you would toggle the visibility of everything else except maybe the floor to off. Its also useful for quickly being able to just easily render out what you are looking at specifically.
--
Technomancer at Digital Arts
Wits University

User avatar
druitre
Posts: 471
Joined: 25 Jun 2009, 23:35

Re: Viewport performance for animation playback - Tips?

Post by druitre » 28 Mar 2013, 22:51

sonictk wrote: Oddly enough, setting the scene to bounding box display doesn't improve things by much...but if I run a polygon reduction filter to bring the models down to under 3k polys (total scene polycount under 10k) then playback becomes to start becoming close to acceptable...averaging 20FPS.
Yes, I just tried running six Species characters in one scene, fps around 10. With just control objects visible and no meshes it's back to 25 - it's the deformation that's killing framerate, seems.

User avatar
sonictk
Posts: 124
Joined: 04 Jan 2012, 04:01
Contact:

Re: Viewport performance for animation playback - Tips?

Post by sonictk » 29 Mar 2013, 08:57

Thanks to all who replied! Right now I'm experimenting with different ways of making proxy geometry to get better performance, but I'm running into a few teeny issues:

Basically, is there any way to have a high-res mesh as a starting point, create a low-res proxy of it, and use the low-res proxy for animating and have it auto-render using the high-res mesh? I tried using the subdivision model feature in Create > Poly > SubD, but that only goes low - high res...

I tried duplicating the high res, and then making the low-res off of that and hiding the high-res for playback...but then adjusting the model in viewport becomes super slow (I think it's because of trying to drive both meshes at the same time even though the high-res version is hidden, the control shapes are still deforming it in the background)

Here's my current workflow:

This is Dave. Say hi to Dave.
Image
Dave is pretty high-poly.
Image
Time to fix that.
Image
Dave is now 4000 tris and playback speed is becoming better.
Image

Unfortunately, while playback speed is cool now, trying to animate him becomes next to impossible due to the slowdown in viewport interaction every time a control is changed. Even when the high-res mesh is hidden.

Anyone who could provide a quick rundown of what exactly I should do when it comes to proxy-ing geometry, given a high-res mesh source and no available low-res, I'd really appreciate it! :X

angus_davidson
Posts: 583
Joined: 20 Dec 2012, 05:13
Skype: ithacapellin

Re: Viewport performance for animation playback - Tips?

Post by angus_davidson » 29 Mar 2013, 09:48

Hi Dave !

That might very well be a bug. I havent had any issues when hiding meshes. The speed up is very noticeable. (this is only using Gear or the built in rigs)

What you can do is duplicate the rig with controls so you have one without any polygon mesh attached. Parent simple nurbs geometry onto the second rig like so

Image

Animate the major movement with the second rig and then GATOR it across to the first rig.
--
Technomancer at Digital Arts
Wits University

Post Reply

Who is online

Users browsing this forum: No registered users and 48 guests