浏览代码

Tweaks

/main
André McGrail 5 年前
当前提交
11eb0468
共有 25 个文件被更改,包括 333 次插入358 次删除
  1. 7
      Assets/Data/LightweightAsset.asset
  2. 26
      Assets/Objects/misc/Outline.mat
  3. 28
      Assets/Objects/misc/Title.mat
  4. 2
      Assets/Scripts/Camera/LODTweaker.cs
  5. 205
      Assets/Scripts/System/MiniProfiler.cs
  6. 4
      Assets/Shaders/Vegetation/InputSurfaceVegetation.hlsl
  7. 2
      Assets/Shaders/Vegetation/LWVegetationShader.shader
  8. 4
      Assets/Shaders/Vegetation/ShadowPassVegetation.hlsl
  9. 16
      Assets/Textures/Terrain/TerrainAutoUpgrade/Terrain.mat
  10. 320
      Assets/scenes/Island.unity
  11. 4
      Assets/scenes/Island_Profiles/GlobalGrading_LDR.asset
  12. 5
      Assets/scenes/Island_Profiles/PostVolumeGlobal.asset
  13. 2
      Packages/com.verasl.water-system/Editor/PlanarSettingsDrawer.cs
  14. 2
      Packages/com.verasl.water-system/Scripts/Data/WaterSettingsData.cs
  15. 2
      Packages/com.verasl.water-system/Scripts/MainCameraAlign.cs
  16. 7
      Packages/com.verasl.water-system/Scripts/Rendering/PlanarReflections.cs
  17. 2
      Packages/com.verasl.water-system/Scripts/Rendering/PlanarReflections.cs.meta
  18. 2
      Packages/com.verasl.water-system/Scripts/Water.cs
  19. 17
      Packages/manifest.json
  20. 7
      ProjectSettings/GraphicsSettings.asset
  21. 12
      ProjectSettings/ProjectSettings.asset
  22. 4
      ProjectSettings/ProjectVersion.txt
  23. 11
      ProjectSettings/BurstAotSettings_Android.json
  24. 0
      /Packages/com.verasl.water-system/Scripts/Rendering/PlanarReflections.cs
  25. 0
      /Packages/com.verasl.water-system/Scripts/Rendering/PlanarReflections.cs.meta

7
Assets/Data/LightweightAsset.asset


m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_GeneratorAsset: {fileID: 0}
m_Script: {fileID: 11500000, guid: bf2edee5c58d82540a51f03df9d42094, type: 3}
m_Name: LightweightAsset
m_EditorClassIdentifier:

m_RequireOpaqueTexture: 0
m_OpaqueDownsampling: 1
m_SupportsHDR: 1
m_MSAA: 1
m_RenderScale: 1
m_MSAA: 4
m_RenderScale: 0.6666667
m_MainLightRenderingMode: 1
m_MainLightShadowsSupported: 1
m_MainLightShadowmapResolution: 2048

m_ShadowDepthBias: 0.75
m_ShadowNormalBias: 0.75
m_SoftShadowsSupported: 1
m_UseSRPBatcher: 1
m_UseSRPBatcher: 0
m_SupportsDynamicBatching: 0
m_MixedLightingSupported: 0
m_ShadowType: 1

26
Assets/Objects/misc/Outline.mat


%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!114 &-9150427728414828149
MonoBehaviour:
m_ObjectHideFlags: 11
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3}
m_Name:
m_EditorClassIdentifier:
version: 1
--- !u!21 &2100000
Material:
serializedVersion: 6

m_LightmapFlags: 4
m_EnableInstancingVariants: 0
m_DoubleSidedGI: 0
m_CustomRenderQueue: -1
stringTagMap: {}
m_CustomRenderQueue: 2050
stringTagMap:
RenderType: Opaque
- _BaseMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _BumpMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}

- _Cutoff: 0.5
- _DetailNormalMapScale: 1
- _DstBlend: 0
- _EnvironmentReflections: 1
- _GlossMapScale: 1
- _Glossiness: 0.438
- _GlossyReflections: 1

- _QueueOffset: 0
- _Smoothness: 0.438
- _SmoothnessTextureChannel: 0
- _SpecularHighlights: 1
- _SrcBlend: 1

- _ZWrite: 1
m_Colors:
- _BaseColor: {r: 0, g: 0.5448277, b: 1, a: 0.8}
- _Color: {r: 0, g: 0.5448277, b: 1, a: 0.8}
- _EmissionColor: {r: 0, g: 0, b: 0, a: 0}
- _SpecColor: {r: 0.19999996, g: 0.19999996, b: 0.19999996, a: 1}

28
Assets/Objects/misc/Title.mat


m_PrefabAsset: {fileID: 0}
m_Name: Title
m_Shader: {fileID: 4800000, guid: 933532a4fcc9baf4fa0491de14d08ed7, type: 3}
m_ShaderKeywords: _EMISSION _GLOSSYREFLECTIONS_OFF _SPECULARHIGHLIGHTS_OFF
m_ShaderKeywords: _EMISSION _ENVIRONMENTREFLECTIONS_OFF _SPECULARHIGHLIGHTS_OFF
m_CustomRenderQueue: -1
stringTagMap: {}
m_CustomRenderQueue: 2050
stringTagMap:
RenderType: Opaque
- _BaseMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _BumpMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}

- _Cutoff: 0.5
- _DetailNormalMapScale: 1
- _DstBlend: 0
- _EnvironmentReflections: 0
- _GlossMapScale: 1
- _Glossiness: 0
- _GlossyReflections: 0

- _QueueOffset: 0
- _Smoothness: 0
- _SmoothnessTextureChannel: 0
- _SpecularHighlights: 0
- _SrcBlend: 1

- _ZWrite: 1
m_Colors:
- _BaseColor: {r: 1, g: 0.58989424, b: 0.14622638, a: 1}
--- !u!114 &3569825914041488302
MonoBehaviour:
m_ObjectHideFlags: 11
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3}
m_Name:
m_EditorClassIdentifier:
version: 1

2
Assets/Scripts/Camera/LODTweaker.cs


/// Check to see if rendering the planar reflection camera, if so, lower LOD bias
/// </summary>
/// <param name="cam">The currently rendering camera from LWRP</param>
void SetMaxLOD(Camera cam)
void SetMaxLOD(ScriptableRenderContext src, Camera cam)
{
if (cam == Camera.main || cam.cameraType == CameraType.SceneView || cam.cameraType == CameraType.Reflection)
QualitySettings.lodBias = 3;

205
Assets/Scripts/System/MiniProfiler.cs


using UnityEngine;
using UnityEngine.Profiling;
using UnityEngine.Rendering;
public class MiniProfiler : MonoBehaviour {
namespace UnityEngine.Experimental.Rendering
{
public class MiniProfiler : MonoBehaviour
{
private bool m_Enable = true;
private bool m_CurrentBatcherEnable = false;
private const float kAverageStatDuration = 1.0f; // stats refresh each second
private int m_frameCount;
private float m_AccDeltaTime;
private string m_statsLabel;
private GUIStyle m_style;
public bool m_Enable = false;
internal class RecorderEntry
{
public string name;
public int callCount;
public float accTime;
public Recorder recorder;
};
enum SRPBMarkers
{
kStdRenderDraw,
kStdShadowDraw,
kSRPBRenderDraw,
kSRPBShadowDraw,
kRenderThreadIdle,
kStdFlush,
kSRPBFlush,
};
RecorderEntry[] recordersList =
{
// Warning: Keep that list in the exact same order than SRPBMarkers enum
new RecorderEntry() { name="RenderLoop.Draw" },
new RecorderEntry() { name="Shadows.Draw" },
new RecorderEntry() { name="RenderLoopNewBatcher.Draw" },
new RecorderEntry() { name="ShadowLoopNewBatcher.Draw" },
new RecorderEntry() { name="RenderLoopDevice.Idle" },
new RecorderEntry() { name="BatchRenderer.Flush" },
new RecorderEntry() { name="SRPBatcher.Flush" },
};
void Awake()
{
for (int i = 0; i < recordersList.Length; i++)
{
var sampler = Sampler.Get(recordersList[i].name);
if (sampler.isValid)
recordersList[i].recorder = sampler.GetRecorder();
}
private int frameCount = 0;
private const int kAverageFrameCount = 64;
private float m_AccDeltaTime;
private float m_AvgDeltaTime;
m_style =new GUIStyle();
m_style.fontSize = 30;
m_style.normal.textColor = Color.white;
internal class RecorderEntry
{
public string name;
public float time;
public int count;
public float avgTime;
public float avgCount;
public float accTime;
public int accCount;
public Recorder recorder;
};
ResetStats();
RecorderEntry[] recordersList =
{
new RecorderEntry() { name="RenderLoop.Draw" },
new RecorderEntry() { name="CullScriptable" },
new RecorderEntry() { name="Gfx.WaitForPresent" }
};
}
void Awake()
{
for (int i=0;i<recordersList.Length;i++)
void RazCounters()
var sampler = Sampler.Get(recordersList[i].name);
if ( sampler != null )
m_AccDeltaTime = 0.0f;
m_frameCount = 0;
for (int i = 0; i < recordersList.Length; i++)
recordersList[i].recorder = sampler.GetRecorder();
recordersList[i].accTime = 0.0f;
recordersList[i].callCount = 0;
}
void ResetStats()
{
m_statsLabel = "Gathering data...";
RazCounters();
}
void Update()
{
void Update()
{
if (m_Enable)
{
if (Input.GetKeyDown(KeyCode.F9))
{
GraphicsSettings.useScriptableRenderPipelineBatching = !GraphicsSettings.useScriptableRenderPipelineBatching;
}
// get timing & update average accumulators
for (int i = 0; i < recordersList.Length; i++)
if (Input.GetKeyDown(KeyCode.F8))
recordersList[i].time = recordersList[i].recorder.elapsedNanoseconds / 1000000.0f;
recordersList[i].count = recordersList[i].recorder.sampleBlockCount;
recordersList[i].accTime += recordersList[i].time;
recordersList[i].accCount += recordersList[i].count;
m_Enable = !m_Enable;
ResetStats();
m_AccDeltaTime += Time.deltaTime;
if ( m_CurrentBatcherEnable != GraphicsSettings.useScriptableRenderPipelineBatching )
{
ResetStats();
m_CurrentBatcherEnable = GraphicsSettings.useScriptableRenderPipelineBatching;
}
frameCount++;
// time to time, update average values & reset accumulators
if (frameCount >= kAverageFrameCount)
if (m_Enable)
bool SRPBatcher = GraphicsSettings.useScriptableRenderPipelineBatching;
m_AccDeltaTime += Time.unscaledDeltaTime;
m_frameCount++;
// get timing & update average accumulators
recordersList[i].avgTime = recordersList[i].accTime * (1.0f / kAverageFrameCount);
recordersList[i].avgCount = recordersList[i].accCount * (1.0f / kAverageFrameCount);
recordersList[i].accTime = 0.0f;
recordersList[i].accCount = 0;
if (recordersList[i].recorder != null)
{
recordersList[i].accTime += recordersList[i].recorder.elapsedNanoseconds / 1000000.0f; // acc time in ms
recordersList[i].callCount += recordersList[i].recorder.sampleBlockCount;
}
m_AvgDeltaTime = m_AccDeltaTime / kAverageFrameCount;
m_AccDeltaTime = 0.0f;
frameCount = 0;
}
}
if (m_AccDeltaTime >= kAverageStatDuration)
{
}
float ooFrameCount = 1.0f / (float)m_frameCount;
float avgStdRender = recordersList[(int)SRPBMarkers.kStdRenderDraw].accTime * ooFrameCount;
float avgStdShadow = recordersList[(int)SRPBMarkers.kStdShadowDraw].accTime * ooFrameCount;
float avgSRPBRender = recordersList[(int)SRPBMarkers.kSRPBRenderDraw].accTime * ooFrameCount;
float avgSRPBShadow = recordersList[(int)SRPBMarkers.kSRPBShadowDraw].accTime * ooFrameCount;
float RTIdleTime = recordersList[(int)SRPBMarkers.kRenderThreadIdle].accTime * ooFrameCount;
void OnGUI()
{
m_statsLabel = string.Format("Accumulated time for RenderLoop.Draw and ShadowLoop.Draw (all threads)\n{0:F2}ms CPU Rendering time ( incl {1:F2}ms RT idle )\n", avgStdRender + avgStdShadow + avgSRPBRender + avgSRPBShadow, RTIdleTime);
if (SRPBatcher)
{
m_statsLabel += string.Format(" {0:F2}ms SRP Batcher code path ({1} flush(s))\n", avgSRPBRender + avgSRPBShadow, recordersList[(int)SRPBMarkers.kSRPBFlush].callCount / (int)m_frameCount);
m_statsLabel += string.Format(" {0:F2}ms All objects\n", avgSRPBRender);
m_statsLabel += string.Format(" {0:F2}ms Shadows\n", avgSRPBShadow);
}
m_statsLabel += string.Format(" {0:F2}ms Standard code path ({1} flush(s))\n", avgStdRender + avgStdShadow, recordersList[(int)SRPBMarkers.kStdFlush].callCount / (int)m_frameCount);
m_statsLabel += string.Format(" {0:F2}ms All objects\n", avgStdRender);
m_statsLabel += string.Format(" {0:F2}ms Shadows\n", avgStdShadow);
m_statsLabel += string.Format("Global Main Loop: {0:F2}ms ({1} FPS)\n", m_AccDeltaTime * 1000.0f * ooFrameCount, (int)(((float)m_frameCount) / m_AccDeltaTime));
if (m_Enable)
RazCounters();
}
}
}
void OnGUI()
GUI.color = new Color(0, 0.54f, 1, 0.8f);
float w = 500, h = 140;
if (m_Enable)
{
bool SRPBatcher = GraphicsSettings.useScriptableRenderPipelineBatching;
// GUI.skin.label.fontSize = 15;
GUI.color = new Color(1, 1, 1, 1);
float w = 1000, h = 356;
GUILayout.BeginArea(new Rect(10, 10, w, h), "Mini Profiler", GUI.skin.window);
GUI.color = new Color(1, 0.9f, 0.3f, 1f);
if ( SRPBatcher )
GUILayout.BeginArea(new Rect(32, 50, w, h), "(SRP batcher ON)", GUI.skin.window);
else
GUILayout.BeginArea(new Rect(32, 50, w, h), "(SRP batcher OFF)", GUI.skin.window);
float avgMs = m_AvgDeltaTime * 1000.0f;
float avgWait = recordersList[2].avgTime;
GUILayout.Label(m_statsLabel, m_style);
string sLabel = System.String.Format("<b>Total {0:F2} FPS ({1:F2}ms)</b>\n", 1.0f / m_AvgDeltaTime, avgMs);
sLabel += System.String.Format("<b>CPU {0:F2}ms</b>\n", avgMs - avgWait);
sLabel += System.String.Format("<b>GPU(guess) {0:F2}ms</b>\n", avgWait);
for (int i = 0; i < recordersList.Length; i++)
{
sLabel += string.Format("{0:F2}ms (*{1:F2})\t({2:F2}ms *{3:F2})\t<b>{4}</b>\n", recordersList[i].avgTime, recordersList[i].avgCount, recordersList[i].time, recordersList[i].count, recordersList[i].name);
GUILayout.EndArea();
GUILayout.Label(sLabel);
GUILayout.EndArea();
}

4
Assets/Shaders/Vegetation/InputSurfaceVegetation.hlsl


inline void InitializeStandardLitSurfaceData(float2 uv, out SurfaceData outSurfaceData)
{
half4 albedoAlpha = SampleAlbedoAlpha(uv, TEXTURE2D_PARAM(_BaseMap, sampler_BaseMap));
half4 albedoAlpha = SampleAlbedoAlpha(uv, TEXTURE2D_ARGS(_BaseMap, sampler_BaseMap));
outSurfaceData.alpha = Alpha(albedoAlpha.a, 1, _Cutoff);

outSurfaceData.specular = half3(0.0h, 0.0h, 0.0h);
outSurfaceData.smoothness = _Gloss;
outSurfaceData.normalTS = SampleNormal(uv, TEXTURE2D_PARAM(_BumpMap, sampler_BumpMap));
outSurfaceData.normalTS = SampleNormal(uv, TEXTURE2D_ARGS(_BumpMap, sampler_BumpMap));
outSurfaceData.occlusion = 1;
outSurfaceData.emission = 0;
}

2
Assets/Shaders/Vegetation/LWVegetationShader.shader


half4 DepthOnlyFragment(VegetationVertexOutput IN) : SV_TARGET
{
half alpha = SampleAlbedoAlpha(IN.uv.xy, TEXTURE2D_PARAM(_BaseMap, sampler_BaseMap)).a;
half alpha = SampleAlbedoAlpha(IN.uv.xy, TEXTURE2D_ARGS(_BaseMap, sampler_BaseMap)).a;
clip(alpha - _Cutoff);
#ifdef LOD_FADE_CROSSFADE // enable dithering LOD transition if user select CrossFade transition in LOD group
LODDitheringTransition(IN.clipPos, unity_LODFade.x);

4
Assets/Shaders/Vegetation/ShadowPassVegetation.hlsl


#if _VERTEXANIMATION
/////////////////////////////////////vegetation stuff//////////////////////////////////////////////////
float3 objectOrigin = UNITY_ACCESS_INSTANCED_PROP(Props, _Position).xyz;
input.positionOS.xyz = VegetationDeformation(input.positionOS, objectOrigin, input.normalOS, input.color.x, input.color.z, input.color.y);
input.positionOS.xyz = VegetationDeformation(input.positionOS.xyz, objectOrigin, input.normalOS.xyz, input.color.x, input.color.z, input.color.y);
//////////////////////////////////////////////////////////////////////////////////////////////////////
#endif

half4 ShadowPassVegetationFragment(VertexOutput IN) : SV_TARGET
{
half alpha = SampleAlbedoAlpha(IN.uv, TEXTURE2D_PARAM(_BaseMap, sampler_BaseMap)).a;
half alpha = SampleAlbedoAlpha(IN.uv, TEXTURE2D_ARGS(_BaseMap, sampler_BaseMap)).a;
clip(alpha - _Cutoff);
return 1;
}

16
Assets/Textures/Terrain/TerrainAutoUpgrade/Terrain.mat


serializedVersion: 6
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInternal: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: Terrain
m_Shader: {fileID: 4800000, guid: 69c1f799e772cb6438f56c23efccb782, type: 3}
m_ShaderKeywords:

- _Smoothness3: 0.5
m_Colors:
- _Color: {r: 1, g: 1, b: 1, a: 1}
--- !u!114 &5142664710411977395
MonoBehaviour:
m_ObjectHideFlags: 11
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: d0353a89b1f911e48b9e16bdc9f2e058, type: 3}
m_Name:
m_EditorClassIdentifier:
version: 1

320
Assets/scenes/Island.unity
文件差异内容过多而无法显示
查看文件

4
Assets/scenes/Island_Profiles/GlobalGrading_LDR.asset


m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_GeneratorAsset: {fileID: 0}
m_Script: {fileID: 11500000, guid: 8e6292b2c06870d4495f009f912b9600, type: 3}
m_Name: GlobalGrading_LDR
m_EditorClassIdentifier:

m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_GeneratorAsset: {fileID: 0}
active: 0
active: 1
enabled:
overrideState: 1
value: 1

5
Assets/scenes/Island_Profiles/PostVolumeGlobal.asset


m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_GeneratorAsset: {fileID: 0}
m_Script: {fileID: 11500000, guid: 8e6292b2c06870d4495f009f912b9600, type: 3}
m_Name: PostVolumeGlobal
m_EditorClassIdentifier:

m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_GeneratorAsset: {fileID: 0}
m_Script: {fileID: 11500000, guid: 48a79b01ea5641d4aa6daa2e23605641, type: 3}
m_Name: Bloom
m_EditorClassIdentifier:

m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_GeneratorAsset: {fileID: 0}
m_Script: {fileID: 11500000, guid: 9b77c5407dc277943b591ade9e6b18c5, type: 3}
m_Name: LensDistortion
m_EditorClassIdentifier:

m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_GeneratorAsset: {fileID: 0}
m_Script: {fileID: 11500000, guid: 6050e2d5de785ce4d931e4dbdbf2d755, type: 3}
m_Name: ChromaticAberration
m_EditorClassIdentifier:

m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_GeneratorAsset: {fileID: 0}
m_Script: {fileID: 11500000, guid: 40b924e2dad56384a8df2a1e111bb675, type: 3}
m_Name: Vignette
m_EditorClassIdentifier:

2
Packages/com.verasl.water-system/Editor/PlanarSettingsDrawer.cs


namespace WaterSystem
{
[CustomPropertyDrawer(typeof(PlanerReflections.PlanarReflectionSettings))]
[CustomPropertyDrawer(typeof(PlanarReflections.PlanarReflectionSettings))]
public class PlanarSettingsDrawer : PropertyDrawer
{
public override void OnGUI(Rect position, SerializedProperty property, GUIContent label)

2
Packages/com.verasl.water-system/Scripts/Data/WaterSettingsData.cs


public GeometryType waterGeomType; // The type of geometry, either vertex offset or tessellation
public ReflectionType refType = ReflectionType.PlanarReflection; // How the reflecitons are generated
// planar
public PlanerReflections.PlanarReflectionSettings planarSettings; // Planar reflection settings
public PlanarReflections.PlanarReflectionSettings planarSettings; // Planar reflection settings
// cubemap
public Cubemap cubemapRefType; // custom cubemap reference

2
Packages/com.verasl.water-system/Scripts/MainCameraAlign.cs


RenderPipelineManager.beginCameraRendering -= UpdatePosition;
}
void UpdatePosition(Camera cam)
void UpdatePosition(ScriptableRenderContext src, Camera cam)
{
Vector3 newPos = cam.transform.TransformPoint(Vector3.forward * forwards);
newPos.y = yOffset;

7
Packages/com.verasl.water-system/Scripts/Rendering/PlanarReflections.cs


namespace UnityEngine.Rendering.LWRP
{
[ImageEffectAllowedInSceneView]
public class PlanerReflections : MonoBehaviour, IBeforeCameraRender
public class PlanarReflections : MonoBehaviour, IBeforeCameraRender
{
[System.Serializable]
public enum ResolutionMulltiplier

typeof(Camera));
LWRPAdditionalCameraData lwrpCamData =
go.AddComponent(typeof(LWRPAdditionalCameraData)) as LWRPAdditionalCameraData;
LWRPAdditionalCameraData lwrpCamDataCurrent = currentCamera.GetComponent<LWRPAdditionalCameraData>();
lwrpCamData.renderShadows = false; // turn off shadows for the reflection camera
lwrpCamData.requiresColorOption = CameraOverrideOption.Off;
lwrpCamData.requiresDepthOption = CameraOverrideOption.Off;

reflectionCamera.depth = -10;
reflectionCamera.enabled = false;
reflectionCamera.allowHDR = currentCamera.allowHDR;
go.hideFlags = HideFlags.DontSave;
go.hideFlags = HideFlags.HideAndDontSave;
return reflectionCamera;
}

if (m_ReflectionTexture == null)
{
m_ReflectionTexture = RenderTexture.GetTemporary(res.x, res.y, 16,
GraphicsFormatUtility.GetGraphicsFormat(RenderTextureFormat.DefaultHDR, true));
GraphicsFormatUtility.GetGraphicsFormat(RenderTextureFormat.RGB111110Float, true));
}

2
Packages/com.verasl.water-system/Scripts/Rendering/PlanarReflections.cs.meta


fileFormatVersion: 2
guid: 62d2ec625e93e8d40b72db412b9db648
guid: 3971d89a730cd5846a1944ab0228bf76
MonoImporter:
externalObjects: {}
serializedVersion: 2

2
Packages/com.verasl.water-system/Scripts/Water.cs


_waveBuffer.Dispose();
}
private void BeginCameraRendering(Camera cam)
private void BeginCameraRendering(ScriptableRenderContext src, Camera cam)
{
Vector3 fwd = cam.transform.forward;
fwd.y = 0;

17
Packages/manifest.json


{
"registry": "https://staging-packages.unity.com",
"dependencies": {
"com.unity.ads": "2.0.8",
"com.unity.analytics": "3.2.2",
"com.unity.burst": "0.2.4-preview.40",
"com.unity.analytics": "3.3.2",
"com.unity.burst": "0.2.4-preview.45",
"com.unity.collab-proxy": "1.2.15",
"com.unity.mathematics": "0.0.12-preview.19",
"com.unity.mathematics": "0.0.12-preview.21",
"com.unity.postprocessing": "2.1.2",
"com.unity.render-pipelines.core": "file:/Users/andremcgrail/Documents/UnityProjects/Github/SRP_Master/com.unity.render-pipelines.core",
"com.unity.render-pipelines.lightweight": "file:/Users/andremcgrail/Documents/UnityProjects/Github/SRP_Master/com.unity.render-pipelines.lightweight",
"com.unity.shadergraph": "file:/Users/andremcgrail/Documents/UnityProjects/Github/SRP_Master/com.unity.shadergraph",
"com.unity.postprocessing": "2.1.3",
"com.unity.render-pipelines.core": "file:../../SRP/com.unity.render-pipelines.core",
"com.unity.render-pipelines.lightweight": "file:../../SRP/com.unity.render-pipelines.lightweight",
"com.unity.shadergraph": "file:../../SRP/com.unity.shadergraph",
"com.unity.xr.legacyinputhelpers": "1.0.0",
"com.unity.modules.ai": "1.0.0",
"com.unity.modules.animation": "1.0.0",
"com.unity.modules.assetbundle": "1.0.0",

7
ProjectSettings/GraphicsSettings.asset


- {fileID: 16000, guid: 0000000000000000f000000000000000, type: 0}
- {fileID: 17000, guid: 0000000000000000f000000000000000, type: 0}
- {fileID: 16001, guid: 0000000000000000f000000000000000, type: 0}
- {fileID: 16003, guid: 0000000000000000f000000000000000, type: 0}
m_PreloadedShaders: []
m_SpritesDefaultMaterial: {fileID: 10754, guid: 0000000000000000f000000000000000,
type: 0}

m_Settings:
standardShaderQuality: 0
renderingPath: 1
hdrMode: 1
hdrMode: 2
realtimeGICPUUsage: 25
useReflectionProbeBoxProjection: 0
useReflectionProbeBlending: 0

m_Settings:
standardShaderQuality: 1
renderingPath: 1
hdrMode: 1
hdrMode: 2
realtimeGICPUUsage: 25
useReflectionProbeBoxProjection: 0
useReflectionProbeBlending: 0

m_Settings:
standardShaderQuality: 1
renderingPath: 1
hdrMode: 1
hdrMode: 2
realtimeGICPUUsage: 25
useReflectionProbeBoxProjection: 0
useReflectionProbeBlending: 0

12
ProjectSettings/ProjectSettings.asset


disableDepthAndStencilBuffers: 1
androidStartInFullscreen: 1
androidRenderOutsideSafeArea: 0
androidUseSwappy: 0
androidBlitType: 2
defaultIsNativeResolution: 1
macRetinaSupport: 1

height: 180
banner: {fileID: 0}
androidGamepadSupportLevel: 0
AndroidValidateAppBundleSize: 1
AndroidAppBundleSizeToValidate: 100
resolutionDialogBanner: {fileID: 0}
m_BuildTargetIcons: []
m_BuildTargetPlatformIcons:

m_APIs: 02000000
m_Automatic: 0
- m_BuildTarget: AndroidPlayer
m_APIs: 150000000b000000
m_APIs: 0b00000015000000
m_Automatic: 0
- m_BuildTarget: MacStandaloneSupport
m_APIs: 10000000

26: UNITY_POST_PROCESSING_STACK_V2
27: UNITY_POST_PROCESSING_STACK_V2
28: UNITY_POST_PROCESSING_STACK_V2
29: UNITY_POST_PROCESSING_STACK_V2
Android: 1
Android: 0
Standalone: 0
il2cppCompilerConfiguration: {}
managedStrippingLevel: {}

XboxOneAllowedProductIds: []
XboxOnePersistentLocalStorageSize: 0
XboxOneXTitleMemory: 8
xboxOneScriptCompiler: 0
xboxOneScriptCompiler: 1
XboxOneOverrideIdentityName:
vrEditorSettings:
daydream:

m_PortalFolderPath:
luminCert:
m_CertPath:
m_PrivateKeyPath:
m_SignPackage: 1
luminIsChannelApp: 0
luminVersion:
m_VersionCode: 1

4
ProjectSettings/ProjectVersion.txt


m_EditorVersion: 2019.1.0b1
m_EditorVersionWithRevision: 2019.1.0b1 (83b3ba1f99df)
m_EditorVersion: 2019.2.0a6
m_EditorVersionWithRevision: 2019.2.0a6 (5612105fae18)

11
ProjectSettings/BurstAotSettings_Android.json


{
"MonoBehaviour": {
"m_Enabled": true,
"m_EditorHideFlags": 0,
"m_Name": "",
"m_EditorClassIdentifier": "",
"DisableOptimisations": false,
"DisableSafetyChecks": true,
"DisableBurstCompilation": false
}
}

/Packages/com.verasl.water-system/Scripts/Rendering/PlanerReflections.cs → /Packages/com.verasl.water-system/Scripts/Rendering/PlanarReflections.cs

/Packages/com.verasl.water-system/Scripts/Rendering/PlanerReflections.cs.meta → /Packages/com.verasl.water-system/Scripts/Rendering/PlanarReflections.cs.meta

正在加载...
取消
保存