Home

Awesome

ProcAmp

screenshot

gif

ProcAmp is a utility shader for adjusting videos. It's developed to provide optional functionalities of video playback with the VideoPlayer component that is newly introduced in Unity 5.6.

System Requirements

ProcAmp is compatible with all the platforms that supports VideoPlayer. If you find any problem with compatibility, plaese report it to Issues.

Features

Implementation

There are two variants of implementation of ProcAmp.

Examples of Use Cases

Apply ProcAmp and blit to the screen.

The ProcAmp component provides a simple rendering functionality that blits the resulting video to the screen with fit-to-screen scaling. This would be a handy option when trying to show the video in full-screen mode.

Typical steps to use

Apply ProcAmp and show in a RawImage UI element.

When considering to support multiple resolution/aspect ratio, it's recommended using the RawImage component of the UI system to handle the situation properly. The TargetImage property of ProcAmp is used in such cases. With setting a RawImage to the property, it starts to update the RawImage with resulting video.

Typical steps to use

Use ProcAmp as a shader.

The ProcAmp shader ("Klak/Video/ProcAmp") is an unlit shader combined with the functionalities of ProcAmp. It's useful when using a material/renderer pair to display a video.

Typical steps to use

Apply ProcAmp and output to a RenderTexture.

When a RenderTexture is given to the TargetTexture property, it updates the given RenderTexture with resulting videos. This is useful when trying to use the video with other shaders or renderers.

Apply ProcAmp as an image effect.

The ProcAmp component works as an image effect when it's attached to a camera object. It overlays the resulting video onto the screen with fit-to-screen scaling.

Acknowledgement

The footage used in the example is originally created by LaBeouf, Rönkkö and Turner. That work was released under a Creative Commons Attribution Non- Commercial Share-Alike licence. See Acknowledgement.txt for further details.