Getting Started
1. Add a Cutscheme prefab to your scene (or add a Cutscheme Controller script to an object in your scene).
Prefab location: Cutscheme/Prefabs
Script location: Cutscheme/Scripts/CutschemeSystem
2. Add the camera you want to control into Cutscheme Controller's 'Main Camera' field.
Cutscheme will use this camera for zooming/filters/etc.
3. If the above camera needs to be disabled after the cutscene, check the Disposable Camera toggle.
The Main Camera for the cutscene will be disabled at the end of the cutscene.
4. Add Camera Shots to the Camera Shots array.
Cutscheme automatically adds and removes camera transforms to the scene as children of the Cutscheme Controller's game object.
5. Manually position and rotate each of the Camera Shots into their places for the cutscene.
Cutscheme system follows these positions in index order instead of numerical order, so you can reorder the positions.
Camera Shots
1. Set the duration of the shot before transitioning.
This is how long the camera stays still before transitioning. Duration can be zero and the camera will transition immediately. (Useful for consecutive panning shots.)
2. Zoom in or out.
Setting zoom to true creates fields for the new camera FOV (perspective) and speed of the zoom. Cutscheme will 'zoom' any extra, active cameras in and out by the percent difference between Main Camera's FOV and the camera shot's New FOV.
3. Shake the camera.
Setting shake to true creates a field for the magnitude at which you want the camera to shake. The higher the power the heavier the shake.
4. Adjust timeScale.
Choose a timeScale between 0.1 - 2 to speed up or slow down time during this shot.
5. Play an audio clip.
This sound will play at the start of the shot. This can be left null.
6. Cut instantly or pan/rotate to the next shot.
Make sure to set cut instantly or set a pan speed/rotate speed for each shot, else the camera will get stuck.
Cutscheme Audio
Cutscheme creates its own Audio Source at runtime and places it on the Cutscheme's Main Camera.
Cutscheme creates its own Audio Source at runtime and places it on the Cutscheme's Main Camera. This audio source is set up as follows:
Priority: 1
Stereo Pan: 0
Spatial Blend: 1
Reverb Zone Mix: 1
Doppler Level: 1
Rolloff: Custom (Gradual), Max Distance: 500
1. Choose whether only cutscene audio should play during the cutscene.
If true, Cutscheme pauses the Audio Listener in the scene. All Cutscheme audio and any objects with AudioSources that are enabled, disabled, or moved with Helpful Scripts will ignore the pause on the listener.
2. Add an audio clip to the Main Audio field.
This audio will play at the start of the cutscene.
3. Loop the main audio of the cutscene.
This will not loop sounds added to Camera Shots.
4. Choose the volume level for the cutscene.
This controls the volume level for the main audio and any sounds in Camera Shots.
5. Fade the main audio in and/or out at the beginning and end of the cutscene.
6. Set the spread angle of Cutscheme audio.
Cutscheme Options
1. Fade in and out.
Cutscheme creates a black panel at runtime for this purpose and displays it over the camera via a Canvas.
If no Canvas exists in the scene, Cutscheme will create one at runtime. Created canvases and panels for cutscenes are removed from the scene after the cutscene ends.
2. Reset camera FOV & position.
Cutscheme saves the original size of the controlled camera before the cutscene starts. Reset the camera (or cameras, if multiple) to their original FOV after the cutscene ends.
3. Make the cutscene skippable.
Whether the cutscene can be skipped by the player. If true, Cutscheme skip the cutscene if any key is pressed after three seconds.
4. Ignore time scale.
If true, Cutscheme's timers ignore time scale by using unscaledDeltaTime. If false, Cutscheme's timers use the scene's time scale and use deltaTime.
5. Change to a new scene.
If true, Cutscheme loads new scene via build index after the cutscene ends. If false, cutscheme disables itself after ending.
Object Control
Hide or show objects/enabled or disable Behaviours during cutscenes.
Hidden Until Cutscene
Objects or their Behaviours that are added to Hidden Until Cutscene are disabled before runtime by the Cutscheme Controller Editor, and enabled on cutscene start.
1. Add a GameObject to this list. That's all you need to do in order to disable this object until the cutscene.
2. Click "Disable Behaviours" in order to enable the Behaviours list. Cutscheme will automatically add all of that object's Behaviours to this list.
3. Remove any Behaviours that you do not want Cutscheme to affect. Leave any Behaviours you want to disable/enable.
Hidden During Cutscene
Objects or their Behaviours that are added to Hidden During Cutscene are disabled on cutscene start and enabled after the cutscene ends.
1. Add a GameObject to this list. That's all you need to do in order to disable this object during the cutscene.
2. Click "Disable Behaviours" in order to enable the Behaviours list. Cutscheme will automatically add all of that object's Behaviours to this list.
3. Remove any Behaviours that you do not want Cutscheme to affect. Leave any Behaviours you want to disable/enable.
Hidden After Cutscene
Objects or their Behaviours that are added to Hidden After Cutscene are disabled after the cutscene ends.
1. Add a GameObject to this list. That's all you need to do in order to disable this object after the cutscene.
2. Click "Disable Behaviours" in order to enable the Behaviours list. Cutscheme will automatically add all of that object's Behaviours to this list.
3. Remove any Behaviours that you do not want Cutscheme to affect. Leave any Behaviours you want to disable/enable.
Cutscheme VFX Systems
Cutscheme Effect System
(Universal Render Pipeline only)
Cutscheme Effect System provides premade effects that you can add to your cutscene.
1. Add your scene's volume to the 'Scene Volume' field.
The system will make a copy of your current volume, use the copy during the cutscene, and then disable the copy and enable your original scene volume after the cutscene ends.
2. Choose one or multiple effects from 'Camera Shots' 'Camera Effects' section.
Customization
The override values of Vignette, Grainy, and Hazy can be customized in the Cutscheme Controller.
Cutscheme Filter System
(Built-In Renderer Pipeline only)
Cutscheme Filter System allows you to display up to two camera filters at a time during the cutscene.
1. Change the value of the 'Quantity' field to add or remove filters.
Drag your own filters (Materials) into the created Material fields, or use the filters that come with this package. Any filters added here will be added to Camera Shots.
2. Choose up to two filters for each camera position in Camera Shots' 'Camera Filters' section.
Prefabs
All Cutscheme prefabs can be found at Cutscheme/Prefabs.
Cutscheme
This prefab is for making Cutscheme cutscenes from scratch. See the 'Making a Cutscheme Cutscene' section for instructions.
DelayedOneShotCutscheme
This prefab is a time-enabled version of OneShotCutscheme. The prefab deactivates its Cutscheme and Camera after its duration and returns focus to the scene's Main Camera.
Drag a DelayedOneShotCutscheme prefab into your scene and position it. Input the amount of Time To Wait before enabling this Cutscheme.
EnableCutscheme
The EnableCutscheme prefab lets you enable a Cutscheme cutscene after a period of time.
Drag an EnableCutscheme prefab into your hierarchy. Input the amount of Time To Wait and add the Cutscheme you want to enable to the Obj To Enable field.
OneShotCutscheme
This prefab is an editable, pre-built Cutscheme intended to display an alternative camera angle for a brief period during runtime. The prefab deactivates its Cutscheme and Camera after its duration and returns focus to the scene's Main Camera.
Drag a OneShotCutscheme prefab into your scene and position it. Its transform will be the position of the camera shot for the cutscene.
TriggerCutscheme
The TriggerCutscheme prefab lets you trigger a Cutscheme cutscene upon collision with another object.
Drag a TriggerCutscheme prefab into the scene and position it where another object will collide with it in order to trigger the Cutscheme. Add the Cutscheme you want to trigger into the Obj To Enable field.
TriggeredOneShotCutscheme
This prefab is the triggerable version of OneShotCutscheme. The prefab deactivates its Cutscheme and Camera after its duration and returns focus to the scene's Main Camera.
Drag a TriggeredOneShotCutscheme prefab into your scene and position it. It has a child called TriggerCutscheme. Position TriggerCutscheme where another object will collide with it in order to trigger the Cutscheme.