You've already forked UnrealEngineUWP
mirror of
https://github.com/izzy2lost/UnrealEngineUWP.git
synced 2026-03-26 18:15:20 -07:00
========================== MAJOR FEATURES + CHANGES ========================== Change 2875025 on 2016/02/20 by Andrew.Rodham Sequencer: Cinematic viewport improvements - Added optional letterbox overlay (defaults to 2.35:1) - Added ability to change safe frame colors - Added selected tracks' keys to the transport range - Added buttons for jumping between selected tracks' keyframes on the transport controls - Removed black padding around the viewport where possible - Added ability to specify whether a combo button/menu anchor should close when its parent receives focus - Separated logic of FGroupedKeyArea into FSequencerKeyCollection, so it can be used independently - Added playback range to the viewport frame numbers - All frame numbers are now spin boxes #jira UE-26429 Change 2875026 on 2016/02/20 by Thomas.Sarkanen Added console commands for recording sequences Changed plugin to a developer plugin so we can load it when the editor is in -game mode. Added Exec commands. Added some more logging to help diagnose problems when using commands. Added loading/saving of config for recorder settings (stored in Editor.ini). Also disabled controls in recorder window when recording. Added auto-saving of assets when in non-editor modes. Moved animation settings from UnrealEd to Engine module. Change 2875036 on 2016/02/20 by Max.Chen Sequencer: Call RedrawAllViewports instead of RedrawLevelEditingViewports. In particular, this fixes some update issues when editing values in the key editors. #jira UE-26960 Change 2875046 on 2016/02/20 by Max.Preussner Sequencer: Fix so that clicking on UMG Animations doesn't dirty the scene. #jira UE-26249 Change 2875047 on 2016/02/20 by Max.Chen Sequencer: Add option to toggle display of channel colors/lines. View->Channel Colors Change 2877138 on 2016/02/23 by Max.Chen Sequencer: Select corresponding track node when selecting key or section. Removed active/inactive selection since it was only being used in deletion and the rules for deletion are now dependent upon what is selected - delete keys and sections before deleting outliner nodes. Change 2877143 on 2016/02/23 by Thomas.Sarkanen Added new math function: WindRelativeAnglesDegrees Given two angles in degrees, 'wind' the angle in Angle1 so that it avoids >180 degree flips. Good for winding rotations previously expressed as quaternions into a euler-angle representation. Change 2877147 on 2016/02/23 by Thomas.Sarkanen Added the ability to import sequencer transforms from the root node of an animation sequence Intended for use after re-importing animations from DCC tools. Available in the right-click menu for transform tracks. Also added FindTrackBinding to UMovieScene so track bindings can be recovered from tracks. Change 2877163 on 2016/02/23 by Max.Chen Sequencer: Add option to create keyframe sections as infinite. Sequencer defaults to true, UMG defaults to false. Change 2877165 on 2016/02/23 by Max.Preussner Sequencer: Drawing vertical position lines when dragging keys Change 2878748 on 2016/02/23 by Max.Chen Curve Editor: Switch curve type to user when flatting or straightening tangents. #jira UE-27277 Change 2878799 on 2016/02/23 by Frank.Fella Sequencer - Add folders support to the outliner. Change 2880769 on 2016/02/24 by Andrew.Rodham Sequencer: Added ability to override runtime spawnable ownership in sequencer - This is exposed as an option on spawnables "Keep Alive Outside Playback Range (In Sequencer)" - Enabling this will stop spawnables from being destroyed when scrubbing outside of the playback range #jira UE-27205 Change 2880770 on 2016/02/24 by Thomas.Sarkanen Sequencer: Added countdown and recording indicator display when recording Also fixed extra popups added post-PIE when animation recordings auto shutdown. Change 2880782 on 2016/02/24 by Max.Chen Sequencer: Snapping now also uses the current time as a possible snap time. #jira UE-26306 Change 2880793 on 2016/02/24 by Max.Chen Sequencer: Add +Animation to Animation track so that it's consistent with all other tracks that have a + button. Change 2880812 on 2016/02/24 by Max.Chen Sequencer: Fix adjusting the leading edge of a shot section so that it cuts into the shot rather than adjusts the start time. #jira UE-26306 Change 2881624 on 2016/02/25 by Andrew.Rodham Changing shader version GUID to fix corrupt shaders in ddc Change 2882408 on 2016/02/25 by Thomas.Sarkanen Asset/actors stored in TLazyObjectPtrs can now reference game content from engine This is a legitimate use case as lazy object ptrs are designed to reference assets/actors cross-domain. Change 2882409 on 2016/02/25 by Thomas.Sarkanen [CL 2899785 by Max Chen in Main branch]
102 lines
3.3 KiB
C++
102 lines
3.3 KiB
C++
// Copyright 1998-2016 Epic Games, Inc. All Rights Reserved.
|
|
|
|
/*=============================================================================
|
|
PostProcessDOF.h: Post process Depth of Field implementation.
|
|
=============================================================================*/
|
|
|
|
#pragma once
|
|
|
|
#include "RenderingCompositionGraph.h"
|
|
|
|
|
|
// down sample and setup DOF input
|
|
// ePId_Input0: SceneColor
|
|
// ePId_Input1: SceneDepth
|
|
// derives from TRenderingCompositePassBase<InputCount, OutputCount>
|
|
class FRCPassPostProcessCircleDOFSetup : public TRenderingCompositePassBase<2, 2>
|
|
{
|
|
public:
|
|
|
|
FRCPassPostProcessCircleDOFSetup(bool bInNearBlurEnabled) : bNearBlurEnabled ( bInNearBlurEnabled ) {}
|
|
|
|
// interface FRenderingCompositePass ---------
|
|
|
|
virtual void Process(FRenderingCompositePassContext& Context) override;
|
|
virtual void Release() override { delete this; }
|
|
virtual FPooledRenderTargetDesc ComputeOutputDesc(EPassOutputId InPassOutputId) const override;
|
|
|
|
private:
|
|
|
|
bool bNearBlurEnabled;
|
|
};
|
|
|
|
|
|
// ePId_Input0: DOFInput or DOFInputTemporalAA
|
|
class FRCPassPostProcessCircleDOFDilate : public TRenderingCompositePassBase<1, 1>
|
|
{
|
|
public:
|
|
|
|
FRCPassPostProcessCircleDOFDilate(void) {}
|
|
|
|
// interface FRenderingCompositePass ---------
|
|
|
|
virtual void Process(FRenderingCompositePassContext& Context) override;
|
|
virtual void Release() override { delete this; }
|
|
virtual FPooledRenderTargetDesc ComputeOutputDesc(EPassOutputId InPassOutputId) const override;
|
|
};
|
|
|
|
|
|
|
|
|
|
// ePId_Input0: setup results for far
|
|
// ePId_Input1: setup results for near, might have been processed by the dilate pass
|
|
// derives from TRenderingCompositePassBase<InputCount, OutputCount>
|
|
class FRCPassPostProcessCircleDOF : public TRenderingCompositePassBase<2, 2>
|
|
{
|
|
public:
|
|
|
|
FRCPassPostProcessCircleDOF(bool bInNearBlurEnabled) : bNearBlurEnabled ( bInNearBlurEnabled ) {}
|
|
|
|
// interface FRenderingCompositePass ---------
|
|
|
|
virtual void Process(FRenderingCompositePassContext& Context) override;
|
|
virtual void Release() override { delete this; }
|
|
virtual FPooledRenderTargetDesc ComputeOutputDesc(EPassOutputId InPassOutputId) const override;
|
|
|
|
private:
|
|
|
|
bool bNearBlurEnabled;
|
|
|
|
template <uint32 NearBlurEnable, uint32 Quality>
|
|
FShader* SetShaderTempl(const FRenderingCompositePassContext& Context);
|
|
};
|
|
|
|
// derives from TRenderingCompositePassBase<InputCount, OutputCount>
|
|
// ePId_Input0: Full res scene color
|
|
// ePId_Input1: output 0 from the DOFSetup (possibly further blurred)
|
|
// ePId_Input2: output 1 from the DOFSetup (possibly further blurred)
|
|
class FRCPassPostProcessCircleDOFRecombine : public TRenderingCompositePassBase<3, 1>
|
|
{
|
|
public:
|
|
|
|
FRCPassPostProcessCircleDOFRecombine(bool bInNearBlurEnabled) : bNearBlurEnabled ( bInNearBlurEnabled ) {}
|
|
|
|
// interface FRenderingCompositePass ---------
|
|
virtual void Process(FRenderingCompositePassContext& Context) override;
|
|
virtual void Release() override { delete this; }
|
|
virtual FPooledRenderTargetDesc ComputeOutputDesc(EPassOutputId InPassOutputId) const override;
|
|
|
|
private:
|
|
|
|
bool bNearBlurEnabled;
|
|
|
|
template <uint32 NearBlurEnable, uint32 Quality>
|
|
FShader* SetShaderTempl(const FRenderingCompositePassContext& Context);
|
|
};
|
|
|
|
// to verify this can be used: http://www.radical.org/aov
|
|
// @return in mm, assuming the sensor in the DepthOfField settings
|
|
float ComputeFocalLengthFromFov(const FSceneView& View);
|
|
|
|
FVector4 CircleDofHalfCoc(const FSceneView& View);
|