1
0
KF2-Dev-Scripts/Engine/Classes/DOFEffect.uc
2020-12-13 18:01:13 +03:00

71 lines
2.1 KiB
Ucode

/**
* Copyright 1998-2013 Epic Games, Inc. All Rights Reserved.
*
* Depth of Field post process effect
*
*/
class DOFEffect extends PostProcessEffect
native
abstract;
/** exponent to apply to blur amount after it has been normalized to [0,1] */
var(DepthOfField) float FalloffExponent;
/** affects the radius of the DepthOfField bohek / how blurry the scene gets */
var(DepthOfField) float BlurKernelSize;
/** [0,1] value for clamping how much blur to apply to items in front of the focus plane */
var(DepthOfField, BlurAmount) float MaxNearBlurAmount<DisplayName=MaxNear>;
/** [0,1] value for clamping how much blur to apply */
var(DepthOfField, BlurAmount) float MinBlurAmount<DisplayName=Min>;
/** [0,1] value for clamping how much blur to apply to items behind the focus plane */
var(DepthOfField, BlurAmount) float MaxFarBlurAmount<DisplayName=MaxFar>;
/** control how the focus point is determined */
var(DepthOfField) enum EFocusType
{
// use distance from the view
FOCUS_Distance,
// use a world space point
FOCUS_Position
} FocusType;
/** inner focus radius */
var(DepthOfField) float FocusInnerRadius;
/** used when FOCUS_Distance is enabled */
var(DepthOfField) float FocusDistance;
/** used when FOCUS_Position is enabled */
var(DepthOfField) vector FocusPosition;
cpptext
{
// UPostProcessEffect interface
/**
* Creates a proxy to represent the render info for a post process effect
* @param WorldSettings - The world's post process settings for the view.
* @return The proxy object.
*/
virtual class FPostProcessSceneProxy* CreateSceneProxy(const FPostProcessSettings* WorldSettings);
/**
* @param View - current view
* @return TRUE if the effect should be rendered
*/
virtual UBOOL IsShown(const FSceneView* View) const;
// UObject inteface
/** callback for changed property */
virtual void PostEditChangeProperty(FPropertyChangedEvent& PropertyChangedEvent);
}
defaultproperties
{
// typical settings
FocusType=FOCUS_Distance
FocusDistance=800
FocusInnerRadius=400
FalloffExponent=2
BlurKernelSize=2
MaxNearBlurAmount=1
MinBlurAmount=0
MaxFarBlurAmount=1
}