CLICK HERE to visit the new NS2 Wiki! Please do not rely on any information here as it may be inaccurate and/or out of date! For help with NS2, hop onto the official Discord server!

Cinematic editor

From NS2 community wiki
Jump to: navigation, search

The Cinematic Editor is a tool for rendering camera guided scenes in the Natural Selection 2 engine.


The main interface is divided into the main window (top left), Selection (top right), Preview (bottom left) and Curves (bottom right). Rendering is from the Preview window perspective. The curves window allows an overview and control over variables that change over time.



Time Settings dialog

The Cinematic Editor can be started from the Spark engine's Launch Pad. To select a level, use Scene -> Set Level..., and choose one from the "maps" subfolder.

To set up the cinematic's number of frames and FPS, click on the Time Settings button in the lower right corner of the main window. The length of the cinematic is implicitly given by the division of the number of frames with the FPS. For example: 250 frames at 25 FPS would create a 10 second cinematic.


Basic navigation is via the top left cornered main window. Use WASD-keys and hold the right mouse button for free look. Most cinematics should at least contain a chosen level and a camera. With the timeline at the bottom of the main window, you can easily select and go through different frames. For the start, make sure to keep it at frame 0. Objects like cameras can be created using the icon bar at the top. They will be placed roughly in the center of the main screen.

Create a camera at a suitable position and use the preview window navigation to finely adjust its position. The cinematic could now be rendered, but would be static. To animate the camera movement, the Cinematic Editor uses a keyframe system. Keyframes are frames in which you specify values for camera positions, or a number of other variables in the cinematic's objects. The Editor then calculates the positions in between with a smoothing spline interpolation. For a simple A to B movement, just drag the timeline to another time frame, and then adjust the camera position in the preview or main window. The frames with keyframes will be marked with a red rectangle on the timeline. Note that the cameras position can be changed in the main window too, but that will affect all keyframes, not just the one at the currently selected frame. After Two keyframes have been created, sliding on the timeline should show the animated camera path.


Curves window

Keyframes can be viewed, edited, removed or added in the Curves Window. Expand the properties you want to view, and check the box to add it to the curve viewer. There, keyframes and the interpolated spline in between become visible and can be manipulated. The middle mouse button can be used to pan around, the mousewheel to zoom in and out. Note that the vertical scale is arbitrary for different values and not labeled, so high values can sometimes be hard to see. When keyframes are selected, the right mouse button can be used to switch the interpolation type between the standard splines and linear interpolation.

Other Objects

Similar to cameras, objects like lights, emitters or models can be added. Some of their properties like visibility or light intensity can also be animated by the use of keyframes.

Keyframe recording

Another way to animate object's position or rotation other than steering the camera directly in the preview window or manually edit keyframes in the curves window is using the record keyframes feature. To use it, first create a keyframe for an objects position at a starting time using the key icon in the main window. Then use the timeline to go to another frame. Then click the red Record Key Frames button and drag the object to the intended position in the main window. Click it again to stop the recording and add a keyframe there. The interpolation in between is generated automatically as always. Note that although it's called recording, only the end position matters, not the movement in between.


In the Render -> Render Setup... dialog, the resolution, frame range and codec can be selected. The engine renders each frame individually rather than in real time, so it doesn't matter if the game would run smoothly on the selected settings. That allows high resolution and high FPS renderings. The rendering process can be started with Render -> Render or the icon in the toolbar.


Skybox settings for ns2_summit

The Editor has some instabilities, particularly when deleting objects, so frequent saving is advised.

Also, loaded maps start without their default sky so it'll be rendered black. To set it to the ingame sky, a skybox object has to be added and manually set up.

The default keframe interpolation is set so that the derivative of the interpolation splines is 0 at each keyframe, so movements are "stopping" at each one.

The rendering doesn't currently work with the huffyuv codec, but uncompressed and others do. When using uncompressed output, very large files (4gb+) are written with a corrupted frame index which upsets some programs. The actual frames are intact though, so the file can be used in VirtualDub etc.