Monday, January 23, 2012

10 TIPS TO MAKING BETTER MACHINIMA

A great article by the amazing Quinn Ying


Here's an article by one of my favorite people in Second Life, the very smart and very kind Quinn Ying.
It's great, great advice.

Getting a faster Second Life: 10 tips to get some smoother machinima

by Quinn Ying


For many machinima works, the perceived quality of the job is often influenced by the quality the movie has been shot in terms of smoothness of movements and choppy camera movements. While this is not always the case, this gude is aimed to help new directors to achieve some better quality shots, aiming at optimizing what their viewer can provide in terms of rendered frames per second, or FPS.
(A hint to check the improvements you get at any modification you make: hit CTRL-SHIFT-1 to get a window reporting your current framerate, plus some other useful information)



Read all 10 Tips after the break.


1) Be sure to have your Global Illumination (GI) turned off
Being a commonly used function in 3D rendering, it's been implemented in SL viewers, but with lesser results. In many viewers, this option is turned on automatically the first time you run them, if it thinks your computer is powerful enough to hold it, or when you set your graphics to ultra. I've never noticed noticeable improvements in image quality when enabling it, and experiencing it as the most resource eating effect I've found. So while its a nice thing to experiment while shooting still pictures, I'd definitely discourage its use while filming.

2) Tune your draw distance
This is a feature nice to keep in mind when filming. This parameter determines the maximum distance a prim or avatar has to be far from you to be drawn and seen in your viewer. Set in a correct way, it helps greatly in reducing the number of details your viewer has to render and hence, its speed in rendering each frame.
It turns really useful when shooting in interiors... Suppose you're in a 20 meters wide room, and you're not interested in filming its outside, because mostly hidden by walls: reducing your draw distance to 20 will not affect in any way the details you'll film inside the room, while saving your viewer from rendering irrelevant details placed outside of it. It's a great way to help you in filming in outdoors too, especially when filming in urban sims cluttered by buildings and details outside of your view!

3) Reduce your window size
Suppose you're going to encode a film to be seen in dvd resolution (720p) or lesser... filming while having your window set exactly at the resolution you need will save your fraps from unnecessary work. This will lead it to a lower size for your footage and a lot less work for your editing software when working and encoding it! In case you're pointing to reduce the jagged edges that may form around sharp edges, you may resort to increasing antialiasing to 2x or more: This will be always less demanding than shooting at double or more the size you need and then shrinking the size to the detail you need :)

4) Turn off Antialiasing
This is a common effect when shooting still pictures, helping to reduce jagged edges that form around shapes. Its effect on framerate depends greatly on the graphic card you're using, the most recent ones being able to render it without any noticeable slowdown, while older one suffering much more, due to outdated techniques.

5) Reduce shadow quality
While not every director uses shadows, keep in mind that this effect can drain a lot of resources. What can cause you a lot of loss in framerate is a shadow quality set too high. If not required by the particular shot youre making, usually a quality value of 1 or less will suffice. Increasing this parameter over the value of 2 will cause a noticeable loss in performance.

6) Increase F number
When using Depth of Field effect, take care at the value you set the F-Number parameter. As stated by SL Wiki "This is a simulated f-stop as you'd see on a camera with and adjustable aperture... In general, a smaller f-number will result in a narrower depth of field.". The effect on performance is inverse to this value, the smaller value the greater the impact on your graphice performance. After experimenting a few values, I found that a value bigger than 100 helps a lot in keeping a good framerate.

6) RendervolumeLODFactor
This is a debug setting, tuneable when having your "Advanced" menu enabled (trough ctrl-alt-D) selecting it in "Show Debug Settings" window. its purpose is to enhance the detail your viewer uses to render prims and sculpts. It can account to up an improvement of a factor of two in your framerate. When shooting scenes including far details you can keep it as low you can, even below its default value of 1, while you'll need it to be set high in closeup scenes, to avoid blocky attachments and badly rendered sculpts and meshes. You'll have to try out yourself which value suits better your scene, of course a lower value will give you smoother shots.

7) Reduce texture memory
This is a trick I've found myself testing for different values. I think its effectivenes must be evaluated basing on the memory your graphic card has on board... A value set higher than that did really slow down my framerate, while a lower level showed a significant improvement. The drawback in using a low value is that some textures might appear blurry, especially when shooting scenes full of details, which can happen easily when filming outdoors. In some movies, I easily masked this downside by using depth of field and a bit of fog effect in windlight settings.

8) Smoothing your cam movements
Not leading to any improvement in fps in itself, this technique will allow you to achieve better visuals, by  allowing you to achieve smoother camera movements. Not all the viewers allow you to directly modify the parameters controlling your cam, forcing you to modify them manually as debug settings:
To do this, show your advanced settings menu (CTRL-ALT-D to show it)
Go to Advanced - Show Debug settings. I provided the values I’m currently using, feel free to test different values to match your tastes.
ZoomTime = 2.5 (Time of transition between different camera modes (in seconds)
CameraPositionSmoothing = 8.6 (Smooths camera position over time)
DynamicCameraStrength= 16 (Amount camera lags behind avatar motion (0=none, 30=avatar velocity)

9) Restrict your viewing angle
When using wide screen formats, your cam will comprise a fair amount of details, which can be unwanted sometimes, and can be cut off, saving some resources for a smoother rendering. The setting to change the angle your cam uses is located in Preferences-Move & View.

10) Tune your Fraps framerate
This is a final optimization you'll better make last, basing it of the best framerate you can get, given your computer capabilities and the particular scene you're shooting. Usually Fraps is set to record 30 frames per second, causing your framerate to drop due to the intense resource drain needed by the program to save a massive quantity of information to your harddrive. But if your viewer renders your scenes at, say, 15 fps it means that fraps records twice every frame, using twice as resources than necessary. By lowering down Fraps recording rate to 15 or less you'll be able to reduce the impact usually this program has on your shooting efficiency.

Hoping this small guide will help you to get the best from your current equipment, I wish you to have all the fun you can get from filming! Hugs :)

Some resources:
http://aeneaideas.wordpress.com/2006/12/02/machinima-in-sl-on-mac-os-x-a-tutorial/

http://blog.nalates.net/2010/12/17/graphics-tweaking-for-second-life/

http://blog.nalates.net/2011/11/30/how-to-get-a-faster-second-life/6/

http://speedtest.net/

No comments:

Post a Comment