Material 최적화 및 플레이어 이동 로직 수정 중

+ MaterialPropertyBlock 사용 금지 -> Material Instance 방식으로 변경 (MaterialPropertyBlock은 URP프로젝트 중 SRP Batcher를 사용하는 경우 비추천 방식)
+ 플레이어 이동 방식 velocity 형태로 변경 중
This commit is contained in:
Nam Tae Gun 2024-07-01 04:05:24 +09:00
parent 74c2a14855
commit 54582acbf4
26 changed files with 168 additions and 96 deletions

View File

@ -71,8 +71,15 @@ namespace BlueWater.Enemies.Bosses
base.InitializeComponents();
SpriteRenderer = VisualLook.GetComponent<SpriteRenderer>();
SpriteRenderer.enabled = false;
Animator = VisualLook.GetComponent<Animator>();
AnimationController = GetComponent<AnimationController>();
MaterialInstance = Instantiate(SpriteRenderer.material);
SpriteRenderer.material = MaterialInstance;
BossHealthPoint.SetMaterialInstance(MaterialInstance);
IsInitialized = true;
}
#endregion
@ -84,26 +91,23 @@ namespace BlueWater.Enemies.Bosses
{
if (!IsDissolveActive)
{
MaterialPropertyBlock.SetFloat(_dissolveValueHash, end);
SpriteRenderer.SetPropertyBlock(MaterialPropertyBlock);
MaterialInstance.SetFloat(_dissolveValueHash, end);
yield break;
}
MaterialPropertyBlock.SetFloat(_dissolveValueHash, start);
SpriteRenderer.SetPropertyBlock(MaterialPropertyBlock);
MaterialInstance.SetFloat(_dissolveValueHash, start);
SpriteRenderer.enabled = true;
var elapsedTime = 0f;
while (elapsedTime <= dissolveTime)
{
var value = Mathf.Lerp(start, end, elapsedTime / dissolveTime);
MaterialPropertyBlock.SetFloat(_dissolveValueHash, value);
SpriteRenderer.SetPropertyBlock(MaterialPropertyBlock);
MaterialInstance.SetFloat(_dissolveValueHash, value);
elapsedTime += Time.deltaTime;
yield return null;
}
MaterialPropertyBlock.SetFloat(_dissolveValueHash, end);
SpriteRenderer.SetPropertyBlock(MaterialPropertyBlock);
MaterialInstance.SetFloat(_dissolveValueHash, end);
}
private void FlipVisualLook()

View File

@ -4,7 +4,6 @@ using BlueWater.Interfaces;
using Pathfinding;
using Sirenix.OdinInspector;
using UnityEngine;
using UnityEngine.Serialization;
namespace BlueWater.Enemies.Bosses
{
@ -38,7 +37,7 @@ namespace BlueWater.Enemies.Bosses
SpikeBarrage
}
public abstract class Boss : MonoBehaviour, ITarget
public abstract class Boss : MonoBehaviour, ITarget, IMaterialInstance
{
// Variables
#region Variables
@ -77,7 +76,7 @@ namespace BlueWater.Enemies.Bosses
public Collider Target { get; protected set; }
public IAstarAI AstarAi;
protected MaterialPropertyBlock MaterialPropertyBlock;
public Material MaterialInstance { get; protected set; }
[Title("디졸브 스폰 효과")]
[SerializeField]
@ -88,6 +87,8 @@ namespace BlueWater.Enemies.Bosses
[SerializeField]
protected float DieDissolveTime = 1f;
protected bool IsInitialized;
// Hashes
protected static readonly int _dissolveValueHash = Shader.PropertyToID("_DissolveValue");
@ -153,9 +154,6 @@ namespace BlueWater.Enemies.Bosses
BossSkillController = GetComponent<BossSkillController>();
AstarAi = GetComponent<IAstarAI>();
MaterialPropertyBlock = new MaterialPropertyBlock();
BossHealthPoint.SetMaterialPropertyBlock(MaterialPropertyBlock);
}
#endregion

View File

@ -16,9 +16,6 @@ namespace BlueWater.Enemies.Bosses
[SerializeField]
private CapsuleCollider _characterCollider;
[SerializeField]
private Renderer _renderer;
[SerializeField]
private Transform _particleInstantiateLocation;
@ -49,6 +46,7 @@ namespace BlueWater.Enemies.Bosses
[SerializeField]
private ParticleSystem _dieParticle;
private Material _materialInstance;
private FieldBossHealthPointUi _fieldBossHealthPointUi;
private WaitForSeconds _flashWhiteWaitTime;
private Coroutine _flashWhiteCoroutine;
@ -56,7 +54,6 @@ namespace BlueWater.Enemies.Bosses
private bool _enableHealthChangedEvent;
private string _bossName;
private MaterialPropertyBlock _materialPropertyBlock;
// Hashes
private static readonly int _isHitHash = Shader.PropertyToID("_IsHit");
@ -89,7 +86,6 @@ namespace BlueWater.Enemies.Bosses
private void InitializeComponent()
{
_characterCollider = GetComponent<CapsuleCollider>();
_renderer = GetComponentInChildren<Renderer>();
}
public void Initialize(bool enableHealthChangedEvent, int maxHealthPoint, string bossName, Transform particleInstantiateLocation = null)
@ -179,13 +175,11 @@ namespace BlueWater.Enemies.Bosses
private IEnumerator FlashWhiteCoroutine()
{
_materialPropertyBlock.SetInteger(_isHitHash, 1);
_renderer.SetPropertyBlock(_materialPropertyBlock);
_materialInstance.SetInt(_isHitHash, 1);
yield return _flashWhiteWaitTime;
_materialPropertyBlock.SetInteger(_isHitHash, 0);
_renderer.SetPropertyBlock(_materialPropertyBlock);
_materialInstance.SetInt(_isHitHash, 0);
Utils.EndUniqueCoroutine(this, ref _flashWhiteCoroutine);
}
@ -196,6 +190,6 @@ namespace BlueWater.Enemies.Bosses
Utils.EndUniqueCoroutine(this, ref _damageIntervalCoroutine);
}
public void SetMaterialPropertyBlock(MaterialPropertyBlock materialPropertyBlock) => _materialPropertyBlock = materialPropertyBlock;
public void SetMaterialInstance(Material materialInstance) => _materialInstance = materialInstance;
}
}

View File

@ -51,6 +51,7 @@ namespace BlueWater.Enemies.Bosses.Rhinoceros
SetMoveSpeed(RhinocerosData.MoveSpeed);
StopMove();
yield return IsInitialized;
yield return StartCoroutine(DissolveCoroutine(0f, 1f, SpawnDissolveTime));
BehaviorTree.EnableBehavior();

View File

@ -1,6 +1,5 @@
using System.Collections;
using BlueWater.Audios;
using Sirenix.OdinInspector;
using UnityEngine;
namespace BlueWater.Enemies.Bosses.SandMole
@ -24,6 +23,7 @@ namespace BlueWater.Enemies.Bosses.SandMole
SetMoveSpeed(SandMoleData.MoveSpeed);
StopMove();
yield return IsInitialized;
yield return StartCoroutine(DissolveCoroutine(0f, 1f, SpawnDissolveTime));
SpineController.SetSkin(SandMoleSkin.Normal.ToString());

View File

@ -108,7 +108,8 @@ namespace BlueWater.Enemies.Bosses.SandMole
BossSkillController.Initialize(BossData.SkillDataList);
SetMoveSpeed(SandMoleData.MoveSpeed);
StopMove();
yield return IsInitialized;
yield return StartCoroutine(DissolveCoroutine(0f, 1f, SpawnDissolveTime));
SpineController.SetSkin(SandMoleSkin.Normal.ToString());

View File

@ -2,6 +2,7 @@
using BlueWater.Interfaces;
using BlueWater.Players;
using Sirenix.OdinInspector;
using Spine.Unity;
using UnityEngine;
namespace BlueWater.Enemies.Bosses
@ -39,6 +40,19 @@ namespace BlueWater.Enemies.Bosses
// Unity events
#region Unity events
protected override void Start()
{
base.Start();
var originalMaterial = SpineController.SkeletonAnimation.SkeletonDataAsset.atlasAssets[0].PrimaryMaterial;
var newMaterial = SpineController.SkeletonAnimation.CustomMaterialOverride[originalMaterial];
MaterialInstance = Instantiate(newMaterial);
SpineController.SkeletonAnimation.CustomMaterialOverride[originalMaterial] = MaterialInstance;
BossHealthPoint.SetMaterialInstance(MaterialInstance);
IsInitialized = true;
}
protected override void Update()
{
base.Update();
@ -58,7 +72,15 @@ namespace BlueWater.Enemies.Bosses
base.InitializeComponents();
MeshRenderer = VisualLook.GetComponent<MeshRenderer>();
MeshRenderer.enabled = false;
SpineController = GetComponent<SpineController>();
// var originalMaterial = VisualLook.GetComponent<SkeletonAnimation>().SkeletonDataAsset.atlasAssets[0].PrimaryMaterial;
// MaterialInstance = Instantiate(MeshRenderer.material);
// SpineController.SkeletonAnimation.CustomMaterialOverride[originalMaterial] = MaterialInstance;
// print($"originalMaterial : {originalMaterial.name}, custom : {SpineController.SkeletonAnimation.CustomMaterialOverride[originalMaterial]}");
//
// BossHealthPoint.SetMaterialInstance(MaterialInstance);
}
#endregion
@ -70,26 +92,23 @@ namespace BlueWater.Enemies.Bosses
{
if (!IsDissolveActive)
{
MaterialPropertyBlock.SetFloat(_dissolveValueHash, end);
MeshRenderer.SetPropertyBlock(MaterialPropertyBlock);
MaterialInstance.SetFloat(_dissolveValueHash, end);
yield break;
}
MaterialPropertyBlock.SetFloat(_dissolveValueHash, start);
MeshRenderer.SetPropertyBlock(MaterialPropertyBlock);
MaterialInstance.SetFloat(_dissolveValueHash, start);
MeshRenderer.enabled = true;
var elapsedTime = 0f;
while (elapsedTime <= dissolveTime)
{
var value = Mathf.Lerp(start, end, elapsedTime / dissolveTime);
MaterialPropertyBlock.SetFloat(_dissolveValueHash, value);
MeshRenderer.SetPropertyBlock(MaterialPropertyBlock);
MaterialInstance.SetFloat(_dissolveValueHash, value);
elapsedTime += Time.deltaTime;
yield return null;
}
MaterialPropertyBlock.SetFloat(_dissolveValueHash, end);
MeshRenderer.SetPropertyBlock(MaterialPropertyBlock);
MaterialInstance.SetFloat(_dissolveValueHash, end);
}
protected virtual void FlipVisualLook()

View File

@ -60,8 +60,13 @@ namespace BlueWater.Enemies.Bosses.TitanSlime
if (TitanSlimeState.HasRabbit && titanSlimeState.Level == 1)
{
yield return IsInitialized;
yield return StartCoroutine(DissolveCoroutine(0f, 1f, SpawnDissolveTime));
}
else
{
SpriteRenderer.enabled = true;
}
_rabbit.enabled = TitanSlimeState.HasRabbit;
BehaviorTree.EnableBehavior();

View File

@ -179,7 +179,6 @@ namespace BlueWater.Players.Combat
}
_animationController.SetCurrentAnimationSpeed(ComboAttacks[CurrentComboAttackCount - 1].Speed);
AudioManager.Instance.PlaySfx("FirstComboAttack");
IsComboAttackPossible = true;
var doDamage = false;
@ -188,9 +187,11 @@ namespace BlueWater.Players.Combat
{
if (!doDamage && _animationController.GetCurrentAnimationNormalizedTime() >= 0.28f)
{
AudioManager.Instance.PlaySfx("FirstComboAttack");
var moveSpeed = ComboAttacks[CurrentComboAttackCount - 1].MovePower;
var finalVelocity = _iPhysicMovable.CurrentDirection * moveSpeed;
_rigidbody.MovePosition(transform.position + finalVelocity * moveSpeed * Time.deltaTime);
//_rigidbody.MovePosition(transform.position + finalVelocity * moveSpeed * Time.deltaTime);
_rigidbody.linearVelocity = finalVelocity;
doDamage = true;
DoDamage(CurrentComboAttackCount, _iPhysicMovable.CurrentDirection);
}
@ -224,7 +225,6 @@ namespace BlueWater.Players.Combat
}
_animationController.SetCurrentAnimationSpeed(ComboAttacks[CurrentComboAttackCount - 1].Speed);
AudioManager.Instance.PlaySfx("SecondComboAttack");
var doDamage = false;
while (_animationController.IsComparingCurrentAnimation("ComboAttack2") &&
@ -232,9 +232,11 @@ namespace BlueWater.Players.Combat
{
if (!doDamage && _animationController.GetCurrentAnimationNormalizedTime() >= 0.3f)
{
AudioManager.Instance.PlaySfx("SecondComboAttack");
var moveSpeed = ComboAttacks[CurrentComboAttackCount - 1].MovePower;
var finalVelocity = _iPhysicMovable.CurrentDirection * moveSpeed;
_rigidbody.MovePosition(transform.position + finalVelocity * moveSpeed * Time.deltaTime);
//_rigidbody.MovePosition(transform.position + finalVelocity * moveSpeed * Time.deltaTime);
_rigidbody.linearVelocity = finalVelocity;
doDamage = true;
DoDamage(CurrentComboAttackCount, _iPhysicMovable.CurrentDirection);
}

View File

@ -38,7 +38,7 @@ namespace BlueWater.Players.Combat
[field: SerializeField, Range(1f, 10f), Tooltip("이동 속도")]
public float MoveSpeed { get; private set; } = 7f;
public float MoveSpeedCoefficient { get; private set; }= 1f;
public float MoveSpeedCoefficient { get; private set; } = 1f;
public bool IsMoveEnabled { get; private set; } = true;
@ -81,8 +81,11 @@ namespace BlueWater.Players.Combat
_animationController.SetAnimationParameter("zDirection", _currentDirection.z);
}
}
private float _finalSpeed;
public Vector3 PushDirection { get; private set; }
public float PushPower { get; private set; }
public float PushReductionCoefficient { get; private set; }
private Vector3 _finalVelocity;
// Dash
[field: Title("대쉬")]
@ -136,9 +139,28 @@ namespace BlueWater.Players.Combat
private void FixedUpdate()
{
if (!CanMove()) return;
if (!IsMoveEnabled) return;
Move();
if (!_isDashing && _comboAttackable?.CurrentComboAttackCount <= 0 && _skillHandler?.IsActivatingSkill == false)
{
var velocityDirection = _inputDirection;
if (_stunnable?.IsStunned == true)
{
velocityDirection = Vector3.zero;
}
else
{
CurrentDirection = velocityDirection;
}
IsMoving = velocityDirection != Vector3.zero;
_finalVelocity = velocityDirection * (MoveSpeed * MoveSpeedCoefficient);
var pushVelocity = PushDirection * PushPower;
_finalVelocity += pushVelocity;
Rigidbody.linearVelocity = _finalVelocity;
}
PushPower = Mathf.Max(0, PushPower - PushReductionCoefficient * Time.deltaTime);
}
private void OnApplicationQuit()
@ -284,7 +306,11 @@ namespace BlueWater.Players.Combat
_dashParticle.Play();
}
var dashDirection = CurrentDirection;
var dashDirection = _inputDirection;
if (dashDirection == Vector3.zero)
{
dashDirection = CurrentDirection;
}
var animationStarted = false;
yield return StartCoroutine(_animationController.WaitForAnimationToRun("DashState",
success => animationStarted = success));

View File

@ -12,8 +12,8 @@ namespace BlueWater.Players
// Variables
#region Variables
// Components
[SerializeField]
private SkeletonAnimation _skeletonAnimation;
[field: SerializeField]
public SkeletonAnimation SkeletonAnimation { get; private set; }
private AnimationState _animationState;
@ -39,8 +39,9 @@ namespace BlueWater.Players
[Button("셋팅 초기화")]
public virtual void InitializeComponents()
{
_skeletonAnimation = transform.GetComponentInChildren<SkeletonAnimation>();
_animationState = _skeletonAnimation.AnimationState;
SkeletonAnimation = transform.GetComponentInChildren<SkeletonAnimation>();
_animationState = SkeletonAnimation.AnimationState;
SetSkin(_initialSkinName);
}
@ -56,7 +57,7 @@ namespace BlueWater.Players
/// <returns></returns>
public TrackEntry PlayAnimation(string animationName, bool isLoopActive, float speed = 1f, bool isReverse = false)
{
if (!_skeletonAnimation || _animationState == null) return null;
if (!SkeletonAnimation || _animationState == null) return null;
if (string.IsNullOrEmpty(animationName))
{
@ -77,7 +78,7 @@ namespace BlueWater.Players
public void SetSkin(string skinName)
{
if (_skeletonAnimation == null && _animationState == null) return;
if (SkeletonAnimation == null && _animationState == null) return;
if (string.IsNullOrEmpty(skinName))
{
@ -85,9 +86,9 @@ namespace BlueWater.Players
return;
}
_skeletonAnimation.Skeleton.SetSkin(skinName);
_skeletonAnimation.Skeleton.SetSlotsToSetupPose();
_animationState.Apply(_skeletonAnimation.Skeleton);
SkeletonAnimation.Skeleton.SetSkin(skinName);
SkeletonAnimation.Skeleton.SetSlotsToSetupPose();
_animationState.Apply(SkeletonAnimation.Skeleton);
}
public async Awaitable WaitForAnimationCompletion(TrackEntry trackEntry, bool isReverse = false)

View File

@ -0,0 +1,9 @@
using UnityEngine;
namespace BlueWater.Interfaces
{
public interface IMaterialInstance
{
Material MaterialInstance { get; }
}
}

View File

@ -0,0 +1,3 @@
fileFormatVersion: 2
guid: fb02fa7cce84ebf43b17c7f1700f1180
timeCreated: 1716899052

View File

@ -1,3 +1,4 @@
using BlueWater.Interfaces;
using UnityEngine;
namespace BlueWater
@ -11,7 +12,8 @@ namespace BlueWater
private float _size = 0.5f;
private Camera _mainCamera;
private Renderer _previousRenderer;
private Material _hitMaterialInstance;
private Material _previousMaterialInstance;
// Hashes
private static readonly int _sizeHash = Shader.PropertyToID("_Size");
@ -30,28 +32,28 @@ namespace BlueWater
if (Physics.Raycast(ray, out var hit, 100f, _maskLayer))
{
var hitRenderer = hit.collider.GetComponentInChildren<Renderer>();
if (!hitRenderer) return;
_hitMaterialInstance = hit.collider.GetComponent<IMaterialInstance>()?.MaterialInstance;
if (!_hitMaterialInstance) return;
if (!hitRenderer.material.HasProperty(_sizeHash)) return;
if (!_hitMaterialInstance.HasProperty(_sizeHash)) return;
if (_previousRenderer && _previousRenderer != hitRenderer && _previousRenderer.material.HasProperty(_sizeHash))
if (_previousMaterialInstance && _previousMaterialInstance != _hitMaterialInstance && _previousMaterialInstance.HasProperty(_sizeHash))
{
_previousRenderer.material.SetFloat(_sizeHash, 0f);
_previousMaterialInstance.SetFloat(_sizeHash, 0f);
}
hitRenderer.material.SetFloat(_sizeHash, _size);
_previousRenderer = hitRenderer;
_hitMaterialInstance.SetFloat(_sizeHash, _size);
_previousMaterialInstance = _hitMaterialInstance;
}
else
{
if (!_previousRenderer) return;
if (!_previousMaterialInstance) return;
if (_previousRenderer.material.HasProperty(_sizeHash))
if (_previousMaterialInstance.HasProperty(_sizeHash))
{
_previousRenderer.material.SetFloat(_sizeHash, 0f);
_previousMaterialInstance.SetFloat(_sizeHash, 0f);
}
_previousRenderer = null;
_previousMaterialInstance = null;
}
}
}

View File

@ -95,7 +95,7 @@ Material:
- _Cutoff: 0.5
- _DetailAlbedoMapScale: 1
- _DetailNormalMapScale: 1
- _DissolveValue: 0
- _DissolveValue: 1
- _DstBlend: 0
- _DstBlendAlpha: 0
- _EnvironmentReflections: 1

View File

@ -95,7 +95,7 @@ Material:
- _Cutoff: 0.5
- _DetailAlbedoMapScale: 1
- _DetailNormalMapScale: 1
- _DissolveValue: 0
- _DissolveValue: 1
- _DstBlend: 0
- _DstBlendAlpha: 0
- _EnvironmentReflections: 1

View File

@ -95,7 +95,7 @@ Material:
- _Cutoff: 0.5
- _DetailAlbedoMapScale: 1
- _DetailNormalMapScale: 1
- _DissolveValue: 0
- _DissolveValue: 1
- _DstBlend: 0
- _DstBlendAlpha: 0
- _EnvironmentReflections: 1

View File

@ -95,7 +95,7 @@ Material:
- _Cutoff: 0.5
- _DetailAlbedoMapScale: 1
- _DetailNormalMapScale: 1
- _DissolveValue: 0
- _DissolveValue: 1
- _DstBlend: 0
- _DstBlendAlpha: 0
- _EnvironmentReflections: 1

View File

@ -109,7 +109,7 @@ Material:
- _OcclusionStrength: 1
- _Opacity: 0.7
- _Parallax: 0.005
- _QueueControl: 1
- _QueueControl: 0
- _QueueOffset: 0
- _ReceiveShadows: 1
- _Size: 0

View File

@ -95,7 +95,7 @@ Material:
- _Cutoff: 0.5
- _DetailAlbedoMapScale: 1
- _DetailNormalMapScale: 1
- _DissolveValue: 0
- _DissolveValue: 1
- _DstBlend: 0
- _DstBlendAlpha: 0
- _EnvironmentReflections: 1

View File

@ -555,7 +555,7 @@ MonoBehaviour:
<Range>k__BackingField: 1.5
<Angle>k__BackingField: 180
<Speed>k__BackingField: 0.3
<MovePower>k__BackingField: 2
<MovePower>k__BackingField: 1
<TargetLayer>k__BackingField:
serializedVersion: 2
m_Bits: 69632

View File

@ -3651,6 +3651,10 @@ PrefabInstance:
propertyPath: m_Name
value: SandMoleMapController
objectReference: {fileID: 0}
- target: {fileID: 8874040642671342955, guid: 02759e0bd03056e499ebce198da0c9d6, type: 3}
propertyPath: m_LocalPosition.z
value: 7
objectReference: {fileID: 0}
m_RemovedComponents: []
m_RemovedGameObjects: []
m_AddedGameObjects:

View File

@ -16,7 +16,7 @@ Material:
- _STRAIGHT_ALPHA_INPUT
m_InvalidKeywords: []
m_LightmapFlags: 4
m_EnableInstancingVariants: 0
m_EnableInstancingVariants: 1
m_DoubleSidedGI: 0
m_CustomRenderQueue: -1
stringTagMap: {}

View File

@ -36,24 +36,24 @@ MonoBehaviour:
- rid: 5032277253446697243
- rid: 5032277253446697244
- rid: 5032277253446697245
- rid: 7789284894475288580
- rid: 7789285205019197450
- rid: 5032277253446697247
- rid: 5032277253446697248
- rid: 7789284894475288581
- rid: 7789284894475288582
- rid: 7789285205019197451
- rid: 7789285205019197452
- rid: 5032277253446697251
- rid: 7789284894475288583
- rid: 7789285205019197453
- rid: 5032277253446697253
- rid: 7789284894475288584
- rid: 7789285205019197454
- rid: 5032277253446697255
- rid: 7789284894475288585
- rid: 7789284894475288586
- rid: 7789285205019197455
- rid: 7789285205019197456
- rid: 5032277253446697258
- rid: 5032277253446697259
- rid: 7789284894475288587
- rid: 7789284894475288588
- rid: 7789285205019197457
- rid: 7789285205019197458
- rid: 5032277253446697262
- rid: 7789284894475288589
- rid: 7789285205019197459
m_RuntimeSettings:
m_List:
- rid: 5032277253446697243
@ -159,7 +159,7 @@ MonoBehaviour:
m_version: 0
m_EnableCompilationCaching: 1
m_EnableValidityChecks: 1
- rid: 7789284894475288580
- rid: 7789285205019197450
type: {class: Renderer2DResources, ns: UnityEngine.Rendering.Universal, asm: Unity.RenderPipelines.Universal.Runtime}
data:
m_Version: 0
@ -174,14 +174,14 @@ MonoBehaviour:
m_DefaultLitMaterial: {fileID: 2100000, guid: a97c105638bdf8b4a8650670310a4cd3, type: 2}
m_DefaultUnlitMaterial: {fileID: 2100000, guid: 9dfc825aed78fcd4ba02077103263b40, type: 2}
m_DefaultMaskMaterial: {fileID: 2100000, guid: 15d0c3709176029428a0da2f8cecf0b5, type: 2}
- rid: 7789284894475288581
- rid: 7789285205019197451
type: {class: URPShaderStrippingSetting, ns: UnityEngine.Rendering.Universal, asm: Unity.RenderPipelines.Universal.Runtime}
data:
m_Version: 0
m_StripUnusedPostProcessingVariants: 0
m_StripUnusedVariants: 1
m_StripScreenCoordOverrideVariants: 1
- rid: 7789284894475288582
- rid: 7789285205019197452
type: {class: UniversalRenderPipelineEditorMaterials, ns: UnityEngine.Rendering.Universal, asm: Unity.RenderPipelines.Universal.Runtime}
data:
m_DefaultMaterial: {fileID: 2100000, guid: 31321ba15b8f8eb4c954353edc038b1d, type: 2}
@ -189,7 +189,7 @@ MonoBehaviour:
m_DefaultLineMaterial: {fileID: 2100000, guid: e823cd5b5d27c0f4b8256e7c12ee3e6d, type: 2}
m_DefaultTerrainMaterial: {fileID: 2100000, guid: 594ea882c5a793440b60ff72d896021e, type: 2}
m_DefaultDecalMaterial: {fileID: 2100000, guid: 31d0dcc6f2dd4e4408d18036a2c93862, type: 2}
- rid: 7789284894475288583
- rid: 7789285205019197453
type: {class: UniversalRenderPipelineEditorShaders, ns: UnityEngine.Rendering.Universal, asm: Unity.RenderPipelines.Universal.Runtime}
data:
m_AutodeskInteractive: {fileID: 4800000, guid: 0e9d5a909a1f7e84882a534d0d11e49f, type: 3}
@ -201,7 +201,7 @@ MonoBehaviour:
m_DefaultSpeedTree7Shader: {fileID: 4800000, guid: 0f4122b9a743b744abe2fb6a0a88868b, type: 3}
m_DefaultSpeedTree8Shader: {fileID: -6465566751694194690, guid: 9920c1f1781549a46ba081a2a15a16ec, type: 3}
m_DefaultSpeedTree9Shader: {fileID: -6465566751694194690, guid: cbd3e1cc4ae141c42a30e33b4d666a61, type: 3}
- rid: 7789284894475288584
- rid: 7789285205019197454
type: {class: GPUResidentDrawerResources, ns: UnityEngine.Rendering, asm: Unity.RenderPipelines.GPUDriven.Runtime}
data:
m_Version: 0
@ -214,7 +214,7 @@ MonoBehaviour:
m_OcclusionCullingDebugKernels: {fileID: 7200000, guid: b23e766bcf50ca4438ef186b174557df, type: 3}
m_DebugOcclusionTestPS: {fileID: 4800000, guid: d3f0849180c2d0944bc71060693df100, type: 3}
m_DebugOccluderPS: {fileID: 4800000, guid: b3c92426a88625841ab15ca6a7917248, type: 3}
- rid: 7789284894475288585
- rid: 7789285205019197455
type: {class: ProbeVolumeDebugResources, ns: UnityEngine.Rendering, asm: Unity.RenderPipelines.Core.Runtime}
data:
m_Version: 1
@ -224,7 +224,7 @@ MonoBehaviour:
probeVolumeOffsetDebugShader: {fileID: 4800000, guid: db8bd7436dc2c5f4c92655307d198381, type: 3}
probeSamplingDebugMesh: {fileID: -3555484719484374845, guid: 20be25aac4e22ee49a7db76fb3df6de2, type: 3}
numbersDisplayTex: {fileID: 2800000, guid: 73fe53b428c5b3440b7e87ee830b608a, type: 3}
- rid: 7789284894475288586
- rid: 7789285205019197456
type: {class: ProbeVolumeBakingResources, ns: UnityEngine.Rendering, asm: Unity.RenderPipelines.Core.Runtime}
data:
m_Version: 1
@ -237,19 +237,19 @@ MonoBehaviour:
skyOcclusionRT: {fileID: 4807578003741378534, guid: dfaf42b38dd001f49a72d8102b709f29, type: 3}
renderingLayerCS: {fileID: 7200000, guid: a63c9cf933e3d8f41ae680a372784ebf, type: 3}
renderingLayerRT: {fileID: 4807578003741378534, guid: c2be09c936362eb49a58f08aeb30627a, type: 3}
- rid: 7789284894475288587
- rid: 7789285205019197457
type: {class: ProbeVolumeGlobalSettings, ns: UnityEngine.Rendering, asm: Unity.RenderPipelines.Core.Runtime}
data:
m_Version: 1
m_ProbeVolumeDisableStreamingAssets: 0
- rid: 7789284894475288588
- rid: 7789285205019197458
type: {class: ProbeVolumeRuntimeResources, ns: UnityEngine.Rendering, asm: Unity.RenderPipelines.Core.Runtime}
data:
m_Version: 1
probeVolumeBlendStatesCS: {fileID: 7200000, guid: a3f7b8c99de28a94684cb1daebeccf5d, type: 3}
probeVolumeUploadDataCS: {fileID: 7200000, guid: 0951de5992461754fa73650732c4954c, type: 3}
probeVolumeUploadDataL2CS: {fileID: 7200000, guid: 6196f34ed825db14b81fb3eb0ea8d931, type: 3}
- rid: 7789284894475288589
- rid: 7789285205019197459
type: {class: IncludeAdditionalRPAssets, ns: UnityEngine.Rendering, asm: Unity.RenderPipelines.Core.Runtime}
data:
m_version: 0

View File

@ -13,7 +13,7 @@ PlayerSettings:
useOnDemandResources: 0
accelerometerFrequency: 60
companyName: CapersUnity
productName: NewBlueWater
productName: ActionHustle
defaultCursor: {fileID: 0}
cursorHotspot: {x: 0, y: 0}
m_SplashScreenBackgroundColor: {r: 0.13725491, g: 0.12156863, b: 0.1254902, a: 1}

View File

@ -4,7 +4,7 @@
QualitySettings:
m_ObjectHideFlags: 0
serializedVersion: 5
m_CurrentQuality: 5
m_CurrentQuality: 0
m_QualitySettings:
- serializedVersion: 4
name: Very Low
@ -319,4 +319,7 @@ QualitySettings:
terrainMaxTrees: 50
excludedTargetPlatforms: []
m_TextureMipmapLimitGroupNames: []
m_PerPlatformDefaultQuality: {}
m_PerPlatformDefaultQuality:
Android: 0
Standalone: 0
Windows Store Apps: 0