Sampling System
From HLAEwiki
Contents |
Motivation
The example test images show a scene from a Counter-Strike 1.6 mod match where the player we are watching in-eye is turning to the left:
A moving picture example created by Martin V. can be found here: http://www.megaupload.com/?d=UVVBE8AP
The human eye is good at spotting things that don't seem to be continuous motion. For a real movie camera the Shutter speed allows to control motion blur, or in other words the time a frame is exposed to the scene.
Now a single image we get from the Half-Life engine is as if no time had passed at all when it was taken. This would result in a animation looking much more jittery than what you'd expect from a real camera.
The sampling systems allows to approximate what you'd get from a real camera by taking more images from the engine and using several of those to calculate a single frame outputted in the end. This of course comes at the cost of increased render time.
Quickstart
The default settings allow getting started instantly, so just enter mirv_sample_enable 1 to enable the sampling system and then you can proceed working as usual, except that you are currently limited to the mainstream (see #Limitations).
Limitations
Not all streams support sampling, those streams will be outputted unsampled, this applies i.e. to camera motion data, hud and depth streams.
Mattes and sampling
Obviously color matte keying is no good for sampling, thus we recommend the alpha matte instead, see mirv_matte_method.
Command Summary
- mirv_movie_fps
- output frame rate in frames per second
- mirv_sample_enable
- enable / disable sampling system
- mirv_sample_sps
- frame rate the game is run at in samples per second; higher values can increase quality and will increase rendering time
Advanced
- mirv_sample_exposure
- controls exposure time / simulates a camera shutter
- __mirv_sample_smethod
- approximation method (quality vs. speed)
- __mirv_sample_frame_strength
- allows extra motion blur
