浏览代码

Updated packages and added basic debug menu

Fixed shadergraph GUID issue
/main
Andre McGrail 7 年前
当前提交
c4011ea8
共有 44 个文件被更改,包括 3177 次插入178 次删除
  1. 49
      Assets/CinemachinePostProcessingV2/CinemachinePostProcessing.cs
  2. 33
      Assets/CinemachinePostProcessingV2/Editor/CinemachinePostProcessingEditor.cs
  3. 15
      Assets/LightweightAsset.asset
  4. 14
      Assets/Objects/boats/Interceptor 1.mat
  5. 14
      Assets/Objects/boats/Interceptor 2.mat
  6. 14
      Assets/Objects/boats/Interceptor 3.mat
  7. 14
      Assets/Objects/boats/Interceptor.mat
  8. 10
      Assets/Objects/boats/Test/Prefabs/_Boat.prefab
  9. 12
      Assets/Objects/environment/Cliffs/Env_Rocks.fbx.meta
  10. 10
      Assets/Objects/environment/Cliffs/Materials/Env_Cliffs.mat
  11. 10
      Assets/Objects/environment/Cliffs/Materials/Env_HeroCave.mat
  12. 16
      Assets/Objects/environment/Cliffs/Materials/Env_HeroLarge.mat
  13. 10
      Assets/Objects/environment/Cliffs/Materials/Env_Rocks.mat
  14. 37
      Assets/Objects/environment/Terrain/TerrainCustom.mat
  15. 2
      Assets/Objects/props/houses/Materials/Matr_BuildingsJettys.mat
  16. 72
      Assets/Shaders/CustomTerrain.ShaderGraph
  17. 6
      Assets/Shaders/LWVegetationShader.shader
  18. 14
      Assets/Shaders/PackedPBR.ShaderGraph
  19. 21
      Assets/Shaders/Vegetation.hlsl
  20. 871
      Assets/scenes/Island.unity
  21. 934
      Assets/scenes/Island_Profiles/PostVolumeGlobal Profile.asset
  22. 10
      Packages/manifest.json
  23. 2
      ProjectSettings/ProjectSettings.asset
  24. 2
      ProjectSettings/ProjectVersion.txt
  25. 4
      ProjectSettings/QualitySettings.asset
  26. 2
      ProjectSettings/TagManager.asset
  27. 15
      Assets/CinemachineLensPresets.asset
  28. 8
      Assets/CinemachineLensPresets.asset.meta
  29. 424
      Assets/Objects/environment/Cliffs/Env_Rocks_tmp.fbx.meta
  30. 8
      Assets/Scripts/System.meta
  31. 250
      Assets/Textures/case_1041700-BBI_3028_Screenshot.png
  32. 86
      Assets/Textures/case_1041700-BBI_3028_Screenshot.png.meta
  33. 131
      Assets/Textures/umhlanga_sunrise_8k.png.meta
  34. 9
      Packages/manifest_packages.json
  35. 31
      Assets/Scripts/System/MaxLodOption.cs
  36. 11
      Assets/Scripts/System/MaxLodOption.cs.meta
  37. 112
      Assets/Scripts/System/MiniProfiler.cs
  38. 11
      Assets/Scripts/System/MiniProfiler.cs.meta
  39. 50
      Assets/Scripts/System/PerfomanceStats.cs
  40. 11
      Assets/Scripts/System/PerfomanceStats.cs.meta

49
Assets/CinemachinePostProcessingV2/CinemachinePostProcessing.cs


else
{
// Handle Follow Focus
if (!m_FocusTracksTarget || !state.HasLookAt)
if (!m_FocusTracksTarget)
DestroyProfileCopy();
else
{

if (mProfileCopy.TryGetSettings(out dof))
dof.focusDistance.value
= (state.FinalPosition - state.ReferenceLookAt).magnitude + m_FocusOffset;
{
float focusDistance = m_FocusOffset;
if (state.HasLookAt)
focusDistance += (state.FinalPosition - state.ReferenceLookAt).magnitude;
dof.focusDistance.value = Mathf.Max(0, focusDistance);
}
}
// Apply the post-processing

static void OnCameraCut(CinemachineBrain brain)
{
// Debug.Log("Camera cut event");
PostProcessLayer postFX = brain.PostProcessingComponent as PostProcessLayer;
if (postFX == null)
brain.PostProcessingComponent = null; // object deleted
else
PostProcessLayer postFX = GetPPLayer(brain);
if (postFX != null)
postFX.ResetHistory();
}

PostProcessLayer ppLayer = brain.PostProcessingComponent as PostProcessLayer;
PostProcessLayer ppLayer = GetPPLayer(brain);
if (ppLayer == null || !ppLayer.enabled || ppLayer.volumeLayer == 0)
return;

return sVolumes;
}
static void StaticPostFXHandler(CinemachineBrain brain)
static Dictionary<CinemachineBrain, PostProcessLayer> mBrainToLayer
= new Dictionary<CinemachineBrain, PostProcessLayer>();
static PostProcessLayer GetPPLayer(CinemachineBrain brain)
PostProcessLayer postFX = brain.PostProcessingComponent as PostProcessLayer;
if (postFX == null)
PostProcessLayer layer = null;
if (mBrainToLayer.TryGetValue(brain, out layer))
brain.PostProcessingComponent = brain.GetComponent<PostProcessLayer>();
postFX = brain.PostProcessingComponent as PostProcessLayer;
if (postFX != null)
brain.m_CameraCutEvent.AddListener(CinemachinePostProcessing.OnCameraCut);
#if UNITY_EDITOR
// Maybe they added it since we last checked
if (layer != null || Application.isPlaying)
#endif
return layer;
if (postFX != null)
CinemachinePostProcessing.ApplyPostFX(brain);
layer = brain.GetComponent<PostProcessLayer>();
mBrainToLayer[brain] = layer;
if (layer != null)
brain.m_CameraCutEvent.AddListener(OnCameraCut);
else
brain.m_CameraCutEvent.RemoveListener(OnCameraCut);
return layer;
}
#if UNITY_EDITOR

static void InitializeModule()
{
// Afetr the brain pushes the state to the camera, hook in to the PostFX
CinemachineCore.CameraUpdatedEvent.RemoveListener(StaticPostFXHandler);
CinemachineCore.CameraUpdatedEvent.AddListener(StaticPostFXHandler);
CinemachineCore.CameraUpdatedEvent.RemoveListener(ApplyPostFX);
CinemachineCore.CameraUpdatedEvent.AddListener(ApplyPostFX);
}
}
}

33
Assets/CinemachinePostProcessingV2/Editor/CinemachinePostProcessingEditor.cs


{
serializedObject.Update();
if (m_FocusTracksTarget.boolValue)
{
bool valid = false;
DepthOfField dof;
if (Target.m_Profile != null && Target.m_Profile.TryGetSettings(out dof))
valid = dof.enabled && dof.active && dof.focusDistance.overrideState;
if (!valid)
EditorGUILayout.HelpBox(
"Focus Tracking requires an active DepthOfField/FocusDistance effect in the profile",
MessageType.Warning);
else
{
if (!Target.VirtualCamera.State.HasLookAt)
EditorGUILayout.HelpBox(
"Focus Offset is relative to the Camera position",
MessageType.Info);
else
EditorGUILayout.HelpBox(
"Focus Offset is relative to the Target position",
MessageType.Info);
}
}
var rect = GUILayoutUtility.GetRect(1, EditorGUIUtility.singleLineHeight); rect.y += 2;
float checkboxWidth = rect.height + 5;
rect = EditorGUI.PrefixLabel(rect, new GUIContent(m_FocusTracksTarget.displayName));

EditorGUIUtility.labelWidth = textDimensions.x;
EditorGUI.PropertyField(rect, m_FocusOffset, offsetText);
EditorGUIUtility.labelWidth = oldWidth;
bool valid = false;
DepthOfField dof;
if (Target.m_Profile != null && Target.m_Profile.TryGetSettings<DepthOfField>(out dof))
valid = dof.enabled && dof.active && dof.focusDistance.overrideState
&& Target.VirtualCamera.LookAt != null;
if (!valid)
EditorGUILayout.HelpBox(
"Focus Tracking requires a LookAt target on the Virtual Camera, and an active DepthOfField/FocusDistance effect in the profile",
MessageType.Warning);
}
DrawProfileInspectorGUI();

15
Assets/LightweightAsset.asset


m_Script: {fileID: 11500000, guid: bf2edee5c58d82540a51f03df9d42094, type: 3}
m_Name: LightweightAsset
m_EditorClassIdentifier:
kAssetVersion: 3
k_AssetVersion: 3
m_MaxPixelLights: 1
m_SupportsVertexLight: 0
m_RequireDepthTexture: 0

m_SupportsHDR: 0
m_MSAA: 4
m_MSAA: 2
m_SupportsDynamicBatching: 1
m_ShadowAtlasResolution: 4096
m_ShadowAtlasResolution: 2048
m_ShadowCascades: 0
m_ShadowCascades: 2
m_Cascade2Split: 0.25
m_Cascade4Split: {x: 0.067, y: 0.2, z: 0.467}
m_LocalShadowsSupported: 0

m_KeepAdditionalLightVariants: 0
m_KeepVertexLightVariants: 0
m_KeepAdditionalLightVariants: 1
m_KeepVertexLightVariants: 1
m_KeepLocalShadowVariants: 0
m_KeepLocalShadowVariants: 1
m_KeepSoftShadowVariants: 1
m_ResourcesAsset: {fileID: 11400000, guid: aac5a08c32552a14c89394b703f1978a, type: 2}
m_ShadowType: 2

14
Assets/Objects/boats/Interceptor 1.mat


Material:
serializedVersion: 6
m_ObjectHideFlags: 0
m_PrefabParentObject: {fileID: 0}
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInternal: {fileID: 0}
m_Name: Interceptor 1
m_Shader: {fileID: 4800000, guid: 7cc6d8245162d41df970ab2856566de3, type: 3}

m_SavedProperties:
serializedVersion: 3
m_TexEnvs:
- Texture2D_3637FDC3:
m_Texture: {fileID: 2800000, guid: 38cb46170a3af4223840f9dcdd1cd226, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- Texture2D_5C2FBDE6:
m_Texture: {fileID: 2800000, guid: f5227ae6cb5d6410b8e28d489c88f244, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- Texture2D_C2C29284:
m_Texture: {fileID: 2800000, guid: d6d26acf8cf2f4eec91705947f7dee16, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- Texture_3637FDC3:
m_Texture: {fileID: 2800000, guid: 38cb46170a3af4223840f9dcdd1cd226, type: 3}
m_Scale: {x: 1, y: 1}

14
Assets/Objects/boats/Interceptor 2.mat


Material:
serializedVersion: 6
m_ObjectHideFlags: 0
m_PrefabParentObject: {fileID: 0}
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInternal: {fileID: 0}
m_Name: Interceptor 2
m_Shader: {fileID: 4800000, guid: 7cc6d8245162d41df970ab2856566de3, type: 3}

m_SavedProperties:
serializedVersion: 3
m_TexEnvs:
- Texture2D_3637FDC3:
m_Texture: {fileID: 2800000, guid: 38cb46170a3af4223840f9dcdd1cd226, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- Texture2D_5C2FBDE6:
m_Texture: {fileID: 2800000, guid: f5227ae6cb5d6410b8e28d489c88f244, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- Texture2D_C2C29284:
m_Texture: {fileID: 2800000, guid: d6d26acf8cf2f4eec91705947f7dee16, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- Texture_3637FDC3:
m_Texture: {fileID: 2800000, guid: 38cb46170a3af4223840f9dcdd1cd226, type: 3}
m_Scale: {x: 1, y: 1}

14
Assets/Objects/boats/Interceptor 3.mat


Material:
serializedVersion: 6
m_ObjectHideFlags: 0
m_PrefabParentObject: {fileID: 0}
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInternal: {fileID: 0}
m_Name: Interceptor 3
m_Shader: {fileID: 4800000, guid: 7cc6d8245162d41df970ab2856566de3, type: 3}

m_SavedProperties:
serializedVersion: 3
m_TexEnvs:
- Texture2D_3637FDC3:
m_Texture: {fileID: 2800000, guid: 38cb46170a3af4223840f9dcdd1cd226, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- Texture2D_5C2FBDE6:
m_Texture: {fileID: 2800000, guid: f5227ae6cb5d6410b8e28d489c88f244, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- Texture2D_C2C29284:
m_Texture: {fileID: 2800000, guid: d6d26acf8cf2f4eec91705947f7dee16, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- Texture_3637FDC3:
m_Texture: {fileID: 2800000, guid: 38cb46170a3af4223840f9dcdd1cd226, type: 3}
m_Scale: {x: 1, y: 1}

14
Assets/Objects/boats/Interceptor.mat


Material:
serializedVersion: 6
m_ObjectHideFlags: 0
m_PrefabParentObject: {fileID: 0}
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInternal: {fileID: 0}
m_Name: Interceptor
m_Shader: {fileID: 4800000, guid: 7cc6d8245162d41df970ab2856566de3, type: 3}

m_SavedProperties:
serializedVersion: 3
m_TexEnvs:
- Texture2D_3637FDC3:
m_Texture: {fileID: 2800000, guid: 38cb46170a3af4223840f9dcdd1cd226, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- Texture2D_5C2FBDE6:
m_Texture: {fileID: 2800000, guid: f5227ae6cb5d6410b8e28d489c88f244, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- Texture2D_C2C29284:
m_Texture: {fileID: 2800000, guid: d6d26acf8cf2f4eec91705947f7dee16, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- Texture_3637FDC3:
m_Texture: {fileID: 2800000, guid: 38cb46170a3af4223840f9dcdd1cd226, type: 3}
m_Scale: {x: 1, y: 1}

10
Assets/Objects/boats/Test/Prefabs/_Boat.prefab


m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 0
m_IsActive: 1
--- !u!1 &1073097268604762
GameObject:
m_ObjectHideFlags: 1

m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 0
m_IsActive: 1
--- !u!1 &1553288845585282
GameObject:
m_ObjectHideFlags: 0

startSize:
serializedVersion: 2
minMaxState: 0
scalar: 6
scalar: 3
minScalar: 1
maxCurve:
serializedVersion: 2

m_Curve:
- serializedVersion: 3
time: 0
value: 0.27764893
value: 0.64193726
inSlope: 0.6356516
outSlope: 0.6356516
tangentMode: 0

m_RenderMode: 2
m_SortMode: 0
m_MinParticleSize: 0
m_MaxParticleSize: 1
m_MaxParticleSize: 0.5
m_CameraVelocityScale: 0
m_VelocityScale: 0
m_LengthScale: 2

12
Assets/Objects/environment/Cliffs/Env_Rocks.fbx.meta


fileFormatVersion: 2
guid: d26d9decbd70a483885e93c275492b2e
ModelImporter:
serializedVersion: 22
serializedVersion: 23
fileIDToRecycleName:
100000: Cliff_Full_01
100002: Cliff_Full_02

- 0.125
- 0.01
globalScale: 1
meshCompression: 0
meshCompression: 1
importBlendShapes: 1
importCameras: 1
importLights: 1
importBlendShapes: 0
importCameras: 0
importLights: 0
swapUVChannels: 0
generateSecondaryUV: 0
useFileUnits: 1

secondaryUVHardAngle: 88
secondaryUVPackMargin: 4
useFileScale: 1
previousCalculatedGlobalScale: 1
hasPreviousCalculatedGlobalScale: 0
tangentSpace:
normalSmoothAngle: 60
normalImportMode: 0

10
Assets/Objects/environment/Cliffs/Materials/Env_Cliffs.mat


Material:
serializedVersion: 6
m_ObjectHideFlags: 0
m_PrefabParentObject: {fileID: 0}
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInternal: {fileID: 0}
m_Name: Env_Cliffs
m_Shader: {fileID: 4800000, guid: 7cd247c7cbda54323b0e395ea419af3d, type: 3}

m_SavedProperties:
serializedVersion: 3
m_TexEnvs:
- Texture2D_AE91C5C2:
m_Texture: {fileID: 2800000, guid: 73448ca97ea5f4b4f88686c2976cd24b, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- Texture2D_DE8BF47E:
m_Texture: {fileID: 2800000, guid: d92549beef5b94c4ba98098ec343e438, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- Texture_7F042A:
m_Texture: {fileID: 2800000, guid: d92549beef5b94c4ba98098ec343e438, type: 3}
m_Scale: {x: 1, y: 1}

10
Assets/Objects/environment/Cliffs/Materials/Env_HeroCave.mat


Material:
serializedVersion: 6
m_ObjectHideFlags: 0
m_PrefabParentObject: {fileID: 0}
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInternal: {fileID: 0}
m_Name: Env_HeroCave
m_Shader: {fileID: 4800000, guid: 7cd247c7cbda54323b0e395ea419af3d, type: 3}

m_SavedProperties:
serializedVersion: 3
m_TexEnvs:
- Texture2D_AE91C5C2:
m_Texture: {fileID: 2800000, guid: 5ab9468c2f0ac4d958d4fab8b7a332b6, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- Texture2D_DE8BF47E:
m_Texture: {fileID: 2800000, guid: 72fa33764de20416585e91ba2cbf1769, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- Texture_7F042A:
m_Texture: {fileID: 2800000, guid: 72fa33764de20416585e91ba2cbf1769, type: 3}
m_Scale: {x: 1, y: 1}

16
Assets/Objects/environment/Cliffs/Materials/Env_HeroLarge.mat


Material:
serializedVersion: 6
m_ObjectHideFlags: 0
m_PrefabParentObject: {fileID: 0}
m_CorrespondingSourceObject: {fileID: 0}
m_ShaderKeywords: _GLOSSINESS_FROM_BASE_ALPHA _NORMALMAP _SPECULAR_COLOR
m_ShaderKeywords:
m_LightmapFlags: 4
m_EnableInstancingVariants: 1
m_DoubleSidedGI: 1

m_SavedProperties:
serializedVersion: 3
m_TexEnvs:
- Texture2D_AE91C5C2:
m_Texture: {fileID: 2800000, guid: 2bdd7d6ad79724736b1b84446305dfbb, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- Texture2D_DE8BF47E:
m_Texture: {fileID: 2800000, guid: c904612e24dae4b598a7c6276fdbcb96, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- Texture_7F042A:
m_Texture: {fileID: 2800000, guid: c904612e24dae4b598a7c6276fdbcb96, type: 3}
m_Scale: {x: 1, y: 1}

m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
m_Floats:
- _AlphaClip: 0
- _Blend: 0
- _Cull: 2
- _Cutoff: 0.5
- _DetailNormalMapScale: 1
- _DstBlend: 0

- _SpecSource: 0
- _SpecularHighlights: 1
- _SrcBlend: 1
- _Surface: 0
- _UVSec: 0
- _WorkflowMode: 1
- _ZWrite: 1

10
Assets/Objects/environment/Cliffs/Materials/Env_Rocks.mat


Material:
serializedVersion: 6
m_ObjectHideFlags: 0
m_PrefabParentObject: {fileID: 0}
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInternal: {fileID: 0}
m_Name: Env_Rocks
m_Shader: {fileID: 4800000, guid: 7cd247c7cbda54323b0e395ea419af3d, type: 3}

m_SavedProperties:
serializedVersion: 3
m_TexEnvs:
- Texture2D_AE91C5C2:
m_Texture: {fileID: 2800000, guid: de66a605dcddb493bac5bf7d4c20f431, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- Texture2D_DE8BF47E:
m_Texture: {fileID: 2800000, guid: 9dcfebd3827a5451894d55ba9c19dab2, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- Texture_7F042A:
m_Texture: {fileID: 2800000, guid: 9dcfebd3827a5451894d55ba9c19dab2, type: 3}
m_Scale: {x: 1, y: 1}

37
Assets/Objects/environment/Terrain/TerrainCustom.mat


m_SavedProperties:
serializedVersion: 3
m_TexEnvs:
- Texture2D_2D2A40E:
m_Texture: {fileID: 2800000, guid: d32e7607f71a3e6449c16ae86a4f459a, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- Texture2D_4CCF661D:
m_Texture: {fileID: 28079174106953648, guid: f46269ea1099c4fb4bc7191f76fcfab3,
type: 2}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- Texture2D_5F5D1FE1:
m_Texture: {fileID: 2800000, guid: 58c621426b0004e43b875f1bfbbbf2d9, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- Texture2D_8EA5BCC6:
m_Texture: {fileID: 2800000, guid: 9b83018dda05e4cffb3ca62e0d54d252, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- Texture2D_BC9E4820:
m_Texture: {fileID: 2800000, guid: b793a644029c648a286a2ebd00e9e848, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- Texture2D_CE9C74A7:
m_Texture: {fileID: 2800000, guid: 36283a22a982c44448b4a62732a0866f, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- Texture2D_D3E53D6C:
m_Texture: {fileID: 2800000, guid: 9b6c255f1b0f84e4caab0ca53ff3d44a, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- Texture2D_E3D097C6:
m_Texture: {fileID: 2800000, guid: d389fa646f8a74bae9368b04367ad643, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- Texture2D_FC50AADC:
m_Texture: {fileID: 2800000, guid: b3c2ab157efdd44c79666fe44e45e75e, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- Texture_2D2A40E:
m_Texture: {fileID: 2800000, guid: d32e7607f71a3e6449c16ae86a4f459a, type: 3}
m_Scale: {x: 1, y: 1}

2
Assets/Objects/props/houses/Materials/Matr_BuildingsJettys.mat


Material:
serializedVersion: 6
m_ObjectHideFlags: 0
m_PrefabParentObject: {fileID: 0}
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInternal: {fileID: 0}
m_Name: Matr_BuildingsJettys
m_Shader: {fileID: 4800000, guid: 933532a4fcc9baf4fa0491de14d08ed7, type: 3}

72
Assets/Shaders/CustomTerrain.ShaderGraph
文件差异内容过多而无法显示
查看文件

6
Assets/Shaders/LWVegetationShader.shader


OUTPUT_SH(o.normal.xyz, o.vertexSH);
half3 vertexLight = VertexLighting(o.posWS, o.normal.xyz);
half fogFactor = ComputeFogFactor(o.clipPos.z);
#if defined(FOG_EXP)
half fogFactor = ComputeGlobalFogFactor(posWS);
#else
half fogFactor = ComputeFogFactor(o.clipPos.z);
#endif
o.fogFactorAndVertexLight = half4(fogFactor, vertexLight);
#ifdef _SHADOWS_ENABLED

14
Assets/Shaders/PackedPBR.ShaderGraph
文件差异内容过多而无法显示
查看文件

21
Assets/Shaders/Vegetation.hlsl


/////////////////////////////////////vegetation stuff//////////////////////////////////////////////////
half4 SmoothCurve( half4 x ) {
return x * x *( 3.0 - 2.0 * x );
return x * x * ( 3.0 - 2.0 * x );
return abs( frac( x + 0.5 ) * 2.0 - 1.0 );
return abs( frac( x + 0.5) * 2.0 - 1.0 );
}
half4 SmoothTriangleWave( half4 x ) {

position = normalize(vNewPos.xyz) * fLength;
////////Detail blending
float fSpeed = 0.25;//leaf occil
float fDetailFreq = 0.3;//detail leaf occil
float fSpeed = 0.5;//leaf occil
float fDetailFreq = 0.5;//detail leaf occil
float fDetailAmp = 0.1;//leaf edge amplitude of movement
float fDetailAmp = 0.05;//leaf edge amplitude of movement
float fDetailPhase = phaseOffset * 1.2;// detail phase(red)
float fBranchAmp = 5.5;//branch amplitude of movement
float fBranchPhase = phaseOffset * 3.3;//leaf phase(green)
float fBranchAmp = 0.25;//branch amplitude of movement
float fBranchPhase = phaseOffset * 3.3;// leaf phase(green)
float fVtxPhase = dot(position, fBranchPhase + fBranchPhase);
float fVtxPhase = dot(position, fDetailPhase + fBranchPhase);
float4 vWaves = (frac( vWavesIn.xxyy * float4(1.975, 0.793, 0.375, 0.193) ) * 2.0 - 1.0 ) * fSpeed * fDetailFreq;
float4 vWaves = (( vWavesIn.xxyy * float4(1.975, 0.793, 0.375, 0.193) ) * 2.0 - 1.0 ) * fSpeed * fDetailFreq;
// Edge (xy) and branch bending (z)
// Edge (xz) and branch bending (y)
return position + vWavesSum.xyx * float3(fEdgeAtten * fDetailAmp * normal.x, fBranchAtten * fBranchAmp, fEdgeAtten * fDetailAmp * normal.z);
}
//////////////////////////////////////////////////////////////////////////////////////////////////////

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

934
Assets/scenes/Island_Profiles/PostVolumeGlobal Profile.asset
文件差异内容过多而无法显示
查看文件

10
Packages/manifest.json


{
"registry": "https://staging-packages.unity.com",
"dependencies": {
"com.unity.cinemachine": "2.1.13",
"com.unity.mathematics": "0.0.12-preview.2",
"com.unity.render-pipelines.lightweight": "2.0.1-preview",
"com.unity.cinemachine": "2.2.0-preview.3",
"com.unity.mathematics": "0.0.12-preview.5",
"com.unity.package-manager-ui": "1.9.9",
"com.unity.postprocessing": "file:/Users/andremcgrail/Documents/UnityProjects/SRP/ScriptableRenderPipeline/Assets/com.unity.postprocessing",
"com.unity.render-pipelines.core": "file:/Users/andremcgrail/Documents/UnityProjects/SRP/ScriptableRenderPipeline/Assets/com.unity.render-pipelines.core",
"com.unity.render-pipelines.lightweight": "file:/Users/andremcgrail/Documents/UnityProjects/SRP/ScriptableRenderPipeline/Assets/com.unity.render-pipelines.lightweight",
"com.unity.shadergraph": "file:/Users/andremcgrail/Documents/UnityProjects/SRP/ScriptableRenderPipeline/Assets/com.unity.shadergraph",
"com.unity.textmeshpro": "1.2.3"
}
}

2
ProjectSettings/ProjectSettings.asset


m_BuildTargetBatching:
- m_BuildTarget: iPhone
m_StaticBatching: 1
m_DynamicBatching: 0
m_DynamicBatching: 1
- m_BuildTarget: Standalone
m_StaticBatching: 1
m_DynamicBatching: 0

2
ProjectSettings/ProjectVersion.txt


m_EditorVersion: 2018.2.0b4
m_EditorVersion: 2018.2.0b6

4
ProjectSettings/QualitySettings.asset


blendWeights: 2
textureQuality: 0
anisotropicTextures: 1
antiAliasing: 4
antiAliasing: 2
lodBias: 4
lodBias: 2
maximumLODLevel: 0
streamingMipmapsActive: 0
streamingMipmapsAddAllCameras: 1

2
ProjectSettings/TagManager.asset


-
-
-
-
- Blocker
m_SortingLayers:
- name: Default
uniqueID: 0

15
Assets/CinemachineLensPresets.asset


%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!114 &11400000
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInternal: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 87edaa385191f4e43ac1e2831a02159f, type: 3}
m_Name: CinemachineLensPresets
m_EditorClassIdentifier:
m_Presets: []
m_PhysicalPresets: []

8
Assets/CinemachineLensPresets.asset.meta


fileFormatVersion: 2
guid: 6c907cb77c14a4b03b9a8b294d55521f
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:

424
Assets/Objects/environment/Cliffs/Env_Rocks_tmp.fbx.meta


fileFormatVersion: 2
guid: d66a745cfc146458dadc63efa5ea7bed
ModelImporter:
serializedVersion: 23
fileIDToRecycleName:
100000: Cliff_Full_01_LOD0
100002: Cliff_Full_01_LOD1
100004: Cliff_Full_01_LOD2
100006: Cliff_Full_02_LOD0
100008: Cliff_Full_02_LOD1
100010: Cliff_Full_02_LOD2
100012: Cliff_Full_03_LOD0
100014: Cliff_Full_03_LOD1
100016: Cliff_Full_03_LOD2
100018: Cliff_Wall_01_LOD0
100020: Cliff_Wall_01_LOD1
100022: Cliff_Wall_01_LOD2
100024: Cliff_Wall_02_LOD0
100026: Cliff_Wall_02_LOD1
100028: Cliff_Wall_02_LOD2
100030: Cliff_Wall_03_LOD0
100032: Cliff_Wall_03_LOD1
100034: Cliff_Wall_03_LOD2
100036: Cliffs
100038: //RootNode
100040: Hero_Cave_LOD0
100042: Hero_Cave_LOD1
100044: Hero_Cave_LOD2
100046: Hero_CaveEntrance_LOD0
100048: Hero_CaveEntrance_LOD1
100050: Hero_CaveEntrance_LOD2
100052: Hero_CaveExit_LOD0
100054: Hero_CaveExit_LOD1
100056: Hero_CaveExit_LOD2
100058: Hero_Mountain_LOD0
100060: Hero_Mountain_LOD1
100062: Hero_Mountain_LOD2
100064: Hero_Tower_LOD0
100066: Hero_Tower_LOD1
100068: Hero_Tower_LOD2
100070: HeroCave
100072: HeroLarge
100074: Rock_Large_01_LOD0
100076: Rock_Large_01_LOD1
100078: Rock_Large_01_LOD2
100080: Rock_Large_02_LOD0
100082: Rock_Large_02_LOD1
100084: Rock_Large_02_LOD2
100086: Rock_Medium_01_LOD0
100088: Rock_Medium_01_LOD1
100090: Rock_Medium_01_LOD2
100092: Rock_Medium_02_LOD0
100094: Rock_Medium_02_LOD1
100096: Rock_Medium_02_LOD2
100098: Rock_Medium_03_LOD0
100100: Rock_Medium_03_LOD1
100102: Rock_Medium_03_LOD2
100104: Rock_Medium_04_LOD0
100106: Rock_Medium_04_LOD1
100108: Rock_Medium_04_LOD2
100110: Rock_Small_01_LOD0
100112: Rock_Small_01_LOD1
100114: Rock_Small_01_LOD2
100116: Rock_Small_02_LOD0
100118: Rock_Small_02_LOD1
100120: Rock_Small_02_LOD2
100122: Rock_Small_03_LOD0
100124: Rock_Small_03_LOD1
100126: Rock_Small_03_LOD2
100128: Rock_Small_04_LOD0
100130: Rock_Small_04_LOD1
100132: Rock_Small_04_LOD2
100134: Rocks
400000: Cliff_Full_01_LOD0
400002: Cliff_Full_01_LOD1
400004: Cliff_Full_01_LOD2
400006: Cliff_Full_02_LOD0
400008: Cliff_Full_02_LOD1
400010: Cliff_Full_02_LOD2
400012: Cliff_Full_03_LOD0
400014: Cliff_Full_03_LOD1
400016: Cliff_Full_03_LOD2
400018: Cliff_Wall_01_LOD0
400020: Cliff_Wall_01_LOD1
400022: Cliff_Wall_01_LOD2
400024: Cliff_Wall_02_LOD0
400026: Cliff_Wall_02_LOD1
400028: Cliff_Wall_02_LOD2
400030: Cliff_Wall_03_LOD0
400032: Cliff_Wall_03_LOD1
400034: Cliff_Wall_03_LOD2
400036: Cliffs
400038: //RootNode
400040: Hero_Cave_LOD0
400042: Hero_Cave_LOD1
400044: Hero_Cave_LOD2
400046: Hero_CaveEntrance_LOD0
400048: Hero_CaveEntrance_LOD1
400050: Hero_CaveEntrance_LOD2
400052: Hero_CaveExit_LOD0
400054: Hero_CaveExit_LOD1
400056: Hero_CaveExit_LOD2
400058: Hero_Mountain_LOD0
400060: Hero_Mountain_LOD1
400062: Hero_Mountain_LOD2
400064: Hero_Tower_LOD0
400066: Hero_Tower_LOD1
400068: Hero_Tower_LOD2
400070: HeroCave
400072: HeroLarge
400074: Rock_Large_01_LOD0
400076: Rock_Large_01_LOD1
400078: Rock_Large_01_LOD2
400080: Rock_Large_02_LOD0
400082: Rock_Large_02_LOD1
400084: Rock_Large_02_LOD2
400086: Rock_Medium_01_LOD0
400088: Rock_Medium_01_LOD1
400090: Rock_Medium_01_LOD2
400092: Rock_Medium_02_LOD0
400094: Rock_Medium_02_LOD1
400096: Rock_Medium_02_LOD2
400098: Rock_Medium_03_LOD0
400100: Rock_Medium_03_LOD1
400102: Rock_Medium_03_LOD2
400104: Rock_Medium_04_LOD0
400106: Rock_Medium_04_LOD1
400108: Rock_Medium_04_LOD2
400110: Rock_Small_01_LOD0
400112: Rock_Small_01_LOD1
400114: Rock_Small_01_LOD2
400116: Rock_Small_02_LOD0
400118: Rock_Small_02_LOD1
400120: Rock_Small_02_LOD2
400122: Rock_Small_03_LOD0
400124: Rock_Small_03_LOD1
400126: Rock_Small_03_LOD2
400128: Rock_Small_04_LOD0
400130: Rock_Small_04_LOD1
400132: Rock_Small_04_LOD2
400134: Rocks
2100000: Env_Cliffs
2100002: Env_Rocks
2100004: Env_HeroLarge
2100006: Env_HeroCave
2300000: Cliff_Full_01_LOD0
2300002: Cliff_Full_01_LOD1
2300004: Cliff_Full_01_LOD2
2300006: Cliff_Full_02_LOD0
2300008: Cliff_Full_02_LOD1
2300010: Cliff_Full_02_LOD2
2300012: Cliff_Full_03_LOD0
2300014: Cliff_Full_03_LOD1
2300016: Cliff_Full_03_LOD2
2300018: Cliff_Wall_01_LOD0
2300020: Cliff_Wall_01_LOD1
2300022: Cliff_Wall_01_LOD2
2300024: Cliff_Wall_02_LOD0
2300026: Cliff_Wall_02_LOD1
2300028: Cliff_Wall_02_LOD2
2300030: Cliff_Wall_03_LOD0
2300032: Cliff_Wall_03_LOD1
2300034: Cliff_Wall_03_LOD2
2300036: Hero_Cave_LOD0
2300038: Hero_Cave_LOD1
2300040: Hero_Cave_LOD2
2300042: Hero_CaveEntrance_LOD0
2300044: Hero_CaveEntrance_LOD1
2300046: Hero_CaveEntrance_LOD2
2300048: Hero_CaveExit_LOD0
2300050: Hero_CaveExit_LOD1
2300052: Hero_CaveExit_LOD2
2300054: Hero_Mountain_LOD0
2300056: Hero_Mountain_LOD1
2300058: Hero_Mountain_LOD2
2300060: Hero_Tower_LOD0
2300062: Hero_Tower_LOD1
2300064: Hero_Tower_LOD2
2300066: Rock_Large_01_LOD0
2300068: Rock_Large_01_LOD1
2300070: Rock_Large_01_LOD2
2300072: Rock_Large_02_LOD0
2300074: Rock_Large_02_LOD1
2300076: Rock_Large_02_LOD2
2300078: Rock_Medium_01_LOD0
2300080: Rock_Medium_01_LOD1
2300082: Rock_Medium_01_LOD2
2300084: Rock_Medium_02_LOD0
2300086: Rock_Medium_02_LOD1
2300088: Rock_Medium_02_LOD2
2300090: Rock_Medium_03_LOD0
2300092: Rock_Medium_03_LOD1
2300094: Rock_Medium_03_LOD2
2300096: Rock_Medium_04_LOD0
2300098: Rock_Medium_04_LOD1
2300100: Rock_Medium_04_LOD2
2300102: Rock_Small_01_LOD0
2300104: Rock_Small_01_LOD1
2300106: Rock_Small_01_LOD2
2300108: Rock_Small_02_LOD0
2300110: Rock_Small_02_LOD1
2300112: Rock_Small_02_LOD2
2300114: Rock_Small_03_LOD0
2300116: Rock_Small_03_LOD1
2300118: Rock_Small_03_LOD2
2300120: Rock_Small_04_LOD0
2300122: Rock_Small_04_LOD1
2300124: Rock_Small_04_LOD2
3300000: Cliff_Full_01_LOD0
3300002: Cliff_Full_01_LOD1
3300004: Cliff_Full_01_LOD2
3300006: Cliff_Full_02_LOD0
3300008: Cliff_Full_02_LOD1
3300010: Cliff_Full_02_LOD2
3300012: Cliff_Full_03_LOD0
3300014: Cliff_Full_03_LOD1
3300016: Cliff_Full_03_LOD2
3300018: Cliff_Wall_01_LOD0
3300020: Cliff_Wall_01_LOD1
3300022: Cliff_Wall_01_LOD2
3300024: Cliff_Wall_02_LOD0
3300026: Cliff_Wall_02_LOD1
3300028: Cliff_Wall_02_LOD2
3300030: Cliff_Wall_03_LOD0
3300032: Cliff_Wall_03_LOD1
3300034: Cliff_Wall_03_LOD2
3300036: Hero_Cave_LOD0
3300038: Hero_Cave_LOD1
3300040: Hero_Cave_LOD2
3300042: Hero_CaveEntrance_LOD0
3300044: Hero_CaveEntrance_LOD1
3300046: Hero_CaveEntrance_LOD2
3300048: Hero_CaveExit_LOD0
3300050: Hero_CaveExit_LOD1
3300052: Hero_CaveExit_LOD2
3300054: Hero_Mountain_LOD0
3300056: Hero_Mountain_LOD1
3300058: Hero_Mountain_LOD2
3300060: Hero_Tower_LOD0
3300062: Hero_Tower_LOD1
3300064: Hero_Tower_LOD2
3300066: Rock_Large_01_LOD0
3300068: Rock_Large_01_LOD1
3300070: Rock_Large_01_LOD2
3300072: Rock_Large_02_LOD0
3300074: Rock_Large_02_LOD1
3300076: Rock_Large_02_LOD2
3300078: Rock_Medium_01_LOD0
3300080: Rock_Medium_01_LOD1
3300082: Rock_Medium_01_LOD2
3300084: Rock_Medium_02_LOD0
3300086: Rock_Medium_02_LOD1
3300088: Rock_Medium_02_LOD2
3300090: Rock_Medium_03_LOD0
3300092: Rock_Medium_03_LOD1
3300094: Rock_Medium_03_LOD2
3300096: Rock_Medium_04_LOD0
3300098: Rock_Medium_04_LOD1
3300100: Rock_Medium_04_LOD2
3300102: Rock_Small_01_LOD0
3300104: Rock_Small_01_LOD1
3300106: Rock_Small_01_LOD2
3300108: Rock_Small_02_LOD0
3300110: Rock_Small_02_LOD1
3300112: Rock_Small_02_LOD2
3300114: Rock_Small_03_LOD0
3300116: Rock_Small_03_LOD1
3300118: Rock_Small_03_LOD2
3300120: Rock_Small_04_LOD0
3300122: Rock_Small_04_LOD1
3300124: Rock_Small_04_LOD2
4300000: Cliff_Full_01_LOD2
4300002: Cliff_Full_02_LOD2
4300004: Cliff_Full_03_LOD2
4300006: Cliff_Wall_01_LOD2
4300008: Cliff_Wall_02_LOD2
4300010: Cliff_Wall_03_LOD2
4300012: Cliff_Full_01_LOD1
4300014: Cliff_Full_02_LOD1
4300016: Cliff_Full_03_LOD1
4300018: Cliff_Wall_01_LOD1
4300020: Cliff_Wall_02_LOD1
4300022: Cliff_Wall_03_LOD1
4300024: Cliff_Full_01_LOD0
4300026: Cliff_Full_02_LOD0
4300028: Cliff_Full_03_LOD0
4300030: Cliff_Wall_01_LOD0
4300032: Cliff_Wall_02_LOD0
4300034: Cliff_Wall_03_LOD0
4300036: Rock_Small_04_LOD1
4300038: Rock_Large_01_LOD1
4300040: Rock_Large_02_LOD1
4300042: Rock_Medium_01_LOD1
4300044: Rock_Medium_02_LOD1
4300046: Rock_Medium_03_LOD1
4300048: Rock_Medium_04_LOD1
4300050: Rock_Small_01_LOD1
4300052: Rock_Small_02_LOD1
4300054: Rock_Small_03_LOD1
4300056: Rock_Small_04_LOD2
4300058: Rock_Large_01_LOD2
4300060: Rock_Large_02_LOD2
4300062: Rock_Medium_01_LOD2
4300064: Rock_Medium_02_LOD2
4300066: Rock_Medium_03_LOD2
4300068: Rock_Medium_04_LOD2
4300070: Rock_Small_01_LOD2
4300072: Rock_Small_02_LOD2
4300074: Rock_Small_03_LOD2
4300076: Rock_Small_04_LOD0
4300078: Rock_Large_01_LOD0
4300080: Rock_Large_02_LOD0
4300082: Rock_Medium_01_LOD0
4300084: Rock_Medium_02_LOD0
4300086: Rock_Medium_03_LOD0
4300088: Rock_Medium_04_LOD0
4300090: Rock_Small_01_LOD0
4300092: Rock_Small_02_LOD0
4300094: Rock_Small_03_LOD0
4300096: Hero_Mountain_LOD1
4300098: Hero_Tower_LOD1
4300100: Hero_Tower_LOD2
4300102: Hero_Mountain_LOD2
4300104: Hero_Tower_LOD0
4300106: Hero_Mountain_LOD0
4300108: Hero_CaveEntrance_LOD1
4300110: Hero_Cave_LOD1
4300112: Hero_CaveExit_LOD1
4300114: Hero_CaveEntrance_LOD2
4300116: Hero_Cave_LOD2
4300118: Hero_CaveExit_LOD2
4300120: Hero_Cave_LOD0
4300122: Hero_CaveExit_LOD0
4300124: Hero_CaveEntrance_LOD0
7400000: Take 001
9500000: //RootNode
20500000: //RootNode
2186277476908879412: ImportLogs
externalObjects: {}
materials:
importMaterials: 1
materialName: 0
materialSearch: 1
materialLocation: 1
animations:
legacyGenerateAnimations: 4
bakeSimulation: 0
resampleCurves: 1
optimizeGameObjects: 0
motionNodeName:
rigImportErrors:
rigImportWarnings:
animationImportErrors:
animationImportWarnings:
animationRetargetingWarnings:
animationDoRetargetingWarnings: 0
importAnimatedCustomProperties: 0
importConstraints: 0
animationCompression: 1
animationRotationError: 0.5
animationPositionError: 0.5
animationScaleError: 0.5
animationWrapMode: 0
extraExposedTransformPaths: []
extraUserProperties: []
clipAnimations: []
isReadable: 1
meshes:
lODScreenPercentages:
- 0.25
- 0.125
- 0.01
globalScale: 1
meshCompression: 0
addColliders: 0
importVisibility: 1
importBlendShapes: 1
importCameras: 1
importLights: 1
swapUVChannels: 0
generateSecondaryUV: 0
useFileUnits: 1
optimizeMeshForGPU: 1
keepQuads: 0
weldVertices: 1
preserveHierarchy: 0
indexFormat: 0
secondaryUVAngleDistortion: 8
secondaryUVAreaDistortion: 15.000001
secondaryUVHardAngle: 88
secondaryUVPackMargin: 4
useFileScale: 1
previousCalculatedGlobalScale: 0.01
hasPreviousCalculatedGlobalScale: 1
tangentSpace:
normalSmoothAngle: 60
normalImportMode: 0
tangentImportMode: 3
normalCalculationMode: 4
importAnimation: 1
copyAvatar: 0
humanDescription:
serializedVersion: 2
human: []
skeleton: []
armTwist: 0.5
foreArmTwist: 0.5
upperLegTwist: 0.5
legTwist: 0.5
armStretch: 0.05
legStretch: 0.05
feetSpacing: 0
rootMotionBoneName:
rootMotionBoneRotation: {x: 0, y: 0, z: 0, w: 1}
hasTranslationDoF: 0
hasExtraRoot: 0
skeletonHasParents: 1
lastHumanDescriptionAvatarSource: {instanceID: 0}
animationType: 2
humanoidOversampling: 1
additionalBone: 0
userData:
assetBundleName:
assetBundleVariant:

8
Assets/Scripts/System.meta


fileFormatVersion: 2
guid: cbca2e7b41fb94a54ac6ad5258118569
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

250
Assets/Textures/case_1041700-BBI_3028_Screenshot.png

之前 之后
宽度: 800  |  高度: 600  |  大小: 34 KiB

86
Assets/Textures/case_1041700-BBI_3028_Screenshot.png.meta


fileFormatVersion: 2
guid: 460c2f43bd47a4d9cb1a0c46dfab853e
TextureImporter:
fileIDToRecycleName: {}
externalObjects: {}
serializedVersion: 6
mipmaps:
mipMapMode: 0
enableMipMap: 1
sRGBTexture: 1
linearTexture: 0
fadeOut: 0
borderMipMap: 0
mipMapsPreserveCoverage: 0
alphaTestReferenceValue: 0.5
mipMapFadeDistanceStart: 1
mipMapFadeDistanceEnd: 3
bumpmap:
convertToNormalMap: 0
externalNormalMap: 0
heightScale: 0.25
normalMapFilter: 0
isReadable: 0
streamingMipmaps: 0
streamingMipmapsPriority: 0
grayScaleToAlpha: 0
generateCubemap: 6
cubemapConvolution: 0
seamlessCubemap: 0
textureFormat: 1
maxTextureSize: 2048
textureSettings:
serializedVersion: 2
filterMode: -1
aniso: -1
mipBias: -100
wrapU: -1
wrapV: -1
wrapW: -1
nPOTScale: 1
lightmap: 0
compressionQuality: 50
spriteMode: 0
spriteExtrude: 1
spriteMeshType: 1
alignment: 0
spritePivot: {x: 0.5, y: 0.5}
spritePixelsToUnits: 100
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
spriteGenerateFallbackPhysicsShape: 1
alphaUsage: 1
alphaIsTransparency: 0
spriteTessellationDetail: -1
textureType: 0
textureShape: 1
singleChannelComponent: 0
maxTextureSizeSet: 0
compressionQualitySet: 0
textureFormatSet: 0
platformSettings:
- serializedVersion: 2
buildTarget: DefaultTexturePlatform
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
spriteSheet:
serializedVersion: 2
sprites: []
outline: []
physicsShape: []
bones: []
spriteID:
vertices: []
indices:
edges: []
weights: []
spritePackingTag:
userData:
assetBundleName:
assetBundleVariant:

131
Assets/Textures/umhlanga_sunrise_8k.png.meta


fileFormatVersion: 2
guid: 0a83d5b40c1554d1398c766a7c04fef4
TextureImporter:
fileIDToRecycleName:
8900000: generatedCubemap
externalObjects: {}
serializedVersion: 6
mipmaps:
mipMapMode: 0
enableMipMap: 1
sRGBTexture: 1
linearTexture: 0
fadeOut: 0
borderMipMap: 0
mipMapsPreserveCoverage: 0
alphaTestReferenceValue: 0.5
mipMapFadeDistanceStart: 1
mipMapFadeDistanceEnd: 3
bumpmap:
convertToNormalMap: 0
externalNormalMap: 0
heightScale: 0.25
normalMapFilter: 0
isReadable: 0
streamingMipmaps: 0
streamingMipmapsPriority: 0
grayScaleToAlpha: 0
generateCubemap: 6
cubemapConvolution: 0
seamlessCubemap: 0
textureFormat: 1
maxTextureSize: 2048
textureSettings:
serializedVersion: 2
filterMode: -1
aniso: -1
mipBias: -100
wrapU: -1
wrapV: -1
wrapW: -1
nPOTScale: 1
lightmap: 0
compressionQuality: 50
spriteMode: 0
spriteExtrude: 1
spriteMeshType: 1
alignment: 0
spritePivot: {x: 0.5, y: 0.5}
spritePixelsToUnits: 100
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
spriteGenerateFallbackPhysicsShape: 1
alphaUsage: 1
alphaIsTransparency: 0
spriteTessellationDetail: -1
textureType: 0
textureShape: 2
singleChannelComponent: 0
maxTextureSizeSet: 0
compressionQualitySet: 0
textureFormatSet: 0
platformSettings:
- serializedVersion: 2
buildTarget: DefaultTexturePlatform
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
- serializedVersion: 2
buildTarget: Standalone
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
- serializedVersion: 2
buildTarget: iPhone
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
- serializedVersion: 2
buildTarget: Android
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
- serializedVersion: 2
buildTarget: WebGL
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
spriteSheet:
serializedVersion: 2
sprites: []
outline: []
physicsShape: []
bones: []
spriteID:
vertices: []
indices:
edges: []
weights: []
spritePackingTag:
userData:
assetBundleName:
assetBundleVariant:

9
Packages/manifest_packages.json


{
"registry": "https://staging-packages.unity.com",
"dependencies": {
"com.unity.cinemachine": "2.1.13",
"com.unity.mathematics": "0.0.12-preview.2",
"com.unity.render-pipelines.lightweight": "1.1.8-preview",
"com.unity.textmeshpro": "1.2.3"
}
}

31
Assets/Scripts/System/MaxLodOption.cs


using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;
public class MaxLodOption : MonoBehaviour {
private int curlevel;
public Text displayText;
private void Start() {
curlevel = QualitySettings.maximumLODLevel;
displayText.text = curlevel.ToString();
}
public void IncreaseLevel()
{
if(curlevel < 7)
curlevel++;
QualitySettings.maximumLODLevel = curlevel;
displayText.text = curlevel.ToString();
}
public void DecreaseLevel()
{
if (curlevel > 0)
curlevel--;
QualitySettings.maximumLODLevel = curlevel;
displayText.text = curlevel.ToString();
}
}

11
Assets/Scripts/System/MaxLodOption.cs.meta


fileFormatVersion: 2
guid: 96d31d8b678c0406c95a885821a53bb0
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

112
Assets/Scripts/System/MiniProfiler.cs


using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.Profiling;
public class MiniProfiler : MonoBehaviour {
public bool m_Enable = false;
private int frameCount = 0;
private const int kAverageFrameCount = 64;
private float m_AccDeltaTime;
private float m_AvgDeltaTime;
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;
};
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++)
{
var sampler = Sampler.Get(recordersList[i].name);
if ( sampler != null )
{
recordersList[i].recorder = sampler.GetRecorder();
}
}
}
void Update()
{
if (m_Enable)
{
// get timing & update average accumulators
for (int i = 0; i < recordersList.Length; i++)
{
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_AccDeltaTime += Time.deltaTime;
frameCount++;
// time to time, update average values & reset accumulators
if (frameCount >= kAverageFrameCount)
{
for (int i = 0; i < recordersList.Length; i++)
{
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;
}
m_AvgDeltaTime = m_AccDeltaTime / kAverageFrameCount;
m_AccDeltaTime = 0.0f;
frameCount = 0;
}
}
}
void OnGUI()
{
if (m_Enable)
{
GUI.color = new Color(0, 0.54f, 1, 0.8f);
float w = 500, h = 140;
GUILayout.BeginArea(new Rect(10, 10, w, h), "Mini Profiler", GUI.skin.window);
GUI.color = new Color(1, 0.9f, 0.3f, 1f);
float avgMs = m_AvgDeltaTime * 1000.0f;
float avgWait = recordersList[2].avgTime;
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.Label(sLabel);
GUILayout.EndArea();
}
}
}

11
Assets/Scripts/System/MiniProfiler.cs.meta


fileFormatVersion: 2
guid: 12170cf0581b249279bf9ba0eda0b212
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

50
Assets/Scripts/System/PerfomanceStats.cs


using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.Profiling;
using UnityEngine.UI;
public class PerfomanceStats : MonoBehaviour {
// Frame time stats
private List<float> samples = new List<float>();
private int totalSamples = 250;
// UI display
public Text frametimeDisplay;
void Start () {
}
void Update () {
frametimeDisplay.text = "";
// sample frametime
samples.Insert(0, Time.deltaTime); // add sample at the start
if(samples.Count >= totalSamples - 1)
{
samples.RemoveAt(totalSamples);
}
UpdateFrametime();
long totalMem = Profiler.GetTotalAllocatedMemoryLong();
frametimeDisplay.text += string.Format("Total Memory:{0}Mbs\n", ((float)totalMem / 1000000).ToString("##.00"));
long gpuMem = Profiler.GetAllocatedMemoryForGraphicsDriver();
frametimeDisplay.text += string.Format("GPU Memory:{0}Mbs\n", ((float)gpuMem / 1000000).ToString("##.00"));
//frametimeDisplay.text += string.Format("RenderPipe:{0}ms", "d");
}
void UpdateFrametime()
{
float avgFrametime = 0f;
float sampleDivision = 1f / samples.Count;
for(var i = 0; i < samples.Count; i++)
{
avgFrametime += samples[i] * sampleDivision;
}
frametimeDisplay.text += string.Format("Total time:{0}ms fps:{1}\n", (avgFrametime * 1000).ToString("00.00"), (1f / avgFrametime).ToString("###.00"));
}
}

11
Assets/Scripts/System/PerfomanceStats.cs.meta


fileFormatVersion: 2
guid: b99026fb20fae4573aac6cb1c44371ea
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

部分文件因为文件数量过多而无法显示

正在加载...
取消
保存