+ 부스터 사용시 집중선(SpeedLines) 기능 추가
+ 부스터 사용시 카메라 흔들림 효과 기능 추가
+ 부스터 사용시 포스트프로세싱(Vignette) 기능 추가
+ 부스터 소진시 내부적인 추가 부스터 시간 추가
+ 추가 부스터까지 소진시 부스터 쿨타임 적용
  ㄴ 기존의 이동속도보다 2배 느려지는 기능 추가
+ ShipPlayer(배) 모델링 변경
  ㄴ Hand_Painted_Boats(에셋 이름)
+ 배 변경에 따른 대포(Cannon) 변경 및 로직 수정
  ㄴ 대포의 발사 각도 변경
  ㄴ 대포의 스피드 변경
+ 배의 움직임 로직 변경
  ㄴ 일정한 속도로 회전
  ㄴ Rigidbody Freeze Rotation
+ 중형 물고기 모델링 추가
  ㄴ HammerHeadShark(망치머리상어) 추가
  ㄴ Stingray(가오리) 추가

+ Layer(PostProcessing) 추가
+ VisualFeedbackManager에 포스트 프로세싱 기능 관련 추가
This commit is contained in:
NTG 2024-01-15 02:24:48 +09:00
parent 2cba165516
commit 278868a690
47 changed files with 4496 additions and 316 deletions

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,44 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!114 &11400000
MonoBehaviour:
m_ObjectHideFlags: 0
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: d7fd9488000d3734a9e00ee676215985, type: 3}
m_Name: OceanPostProcessingVolume
m_EditorClassIdentifier:
components:
- {fileID: 751907871111195936}
--- !u!114 &751907871111195936
MonoBehaviour:
m_ObjectHideFlags: 3
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: 899c54efeace73346a0a16faa3afe726, type: 3}
m_Name: Vignette
m_EditorClassIdentifier:
active: 1
color:
m_OverrideState: 1
m_Value: {r: 0.262, g: 0, b: 0, a: 1}
center:
m_OverrideState: 1
m_Value: {x: 0.5, y: 0.5}
intensity:
m_OverrideState: 1
m_Value: 0
smoothness:
m_OverrideState: 1
m_Value: 1
rounded:
m_OverrideState: 1
m_Value: 1

View File

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 4fe60212ac4271943ba8246d9163790f
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:

View File

@ -2,6 +2,7 @@ using System.Collections;
using Sirenix.OdinInspector;
using UnityEngine;
using UnityEngine.InputSystem;
using Vignette = UnityEngine.Rendering.Universal.Vignette;
// ReSharper disable once CheckNamespace
namespace BlueWaterProject
@ -14,13 +15,15 @@ namespace BlueWaterProject
[Title("쉽의 기본 설정")]
[Tooltip("최대 스피드")]
[SerializeField] private float maxSpeed = 10f;
[SerializeField] private float maxSpeed = 20f;
[DisableIf("@true")]
[SerializeField]private float defaultMaxSpeed;
[Tooltip("가속 수치")]
[SerializeField] private float acceleration = 2f;
[SerializeField] private float acceleration = 20f;
[Tooltip("감속 수치")]
[SerializeField] private float deceleration = 2f;
[SerializeField] private float deceleration = 10f;
[Tooltip("회전 속도")]
[SerializeField] private float turnSpeed = 10f;
[SerializeField] private float turnSpeed = 90f;
[Tooltip("배의 최대 체력")]
[field: SerializeField] public float MaxHp { get; private set; } = 100;
[Tooltip("배의 현재 체력")]
@ -32,25 +35,59 @@ namespace BlueWaterProject
[SerializeField] private Cannon cannon;
[SerializeField] private float cannonCooldown = 1f;
[SerializeField] private float chargingSpeed = 1f;
[DisableIf("@true")]
[SerializeField] private bool isFireMode;
[DisableIf("@true")]
[SerializeField] private bool chargingCannon;
[DisableIf("@true")]
[SerializeField] private bool isReloading;
[DisableIf("@true")]
[SerializeField] private float chargingGauge;
[DisableIf("@true")]
[SerializeField] private float previousGauge;
[Title("부스트")]
[SerializeField] private float boostPower = 2f;
[SerializeField] private float boostMaxTime = 3f;
[SerializeField] private float boostRecoveryTime = 1.5f;
[SerializeField] private float additionalBoostTime = 1f;
[SerializeField] private float boostCooldownTime = 5f;
private float currentAdditionalBoostTime;
private float currentBoostCooldownTime;
[Space(10)]
[SerializeField] private bool useBoostSpeedLines = true;
[SerializeField] private bool useBoostChangeDistance = true;
[ShowIf("@useBoostChangeDistance")]
[SerializeField] private float shrinkDistance = 20f;
[ShowIf("@useBoostChangeDistance")]
[SerializeField] private float shrinkTime = 1f;
[ShowIf("@useBoostChangeDistance")]
[SerializeField] private float distanceReturnTime = 0.2f;
[SerializeField] private bool useBoostCameraShaking = true;
[ShowIf("@useBoostCameraShaking")]
[SerializeField] private float shakingForceCoefficient = 0.8f;
[SerializeField] private bool useBoostVignetteEffect = true;
[ShowIf("@useBoostVignetteEffect")]
[SerializeField] private float vignetteForceCoefficient = 0.4f;
[DisableIf("@true")]
[SerializeField] private bool isBoosting;
[Title("Extensions Data")]
[SerializeField] private LayerMask waterLayer;
private PlayerInput playerInput;
private Rigidbody rb;
private GameObject directionIndicator;
[SerializeField] private LayerMask waterLayer;
private Vector2 movementInput;
[Button("셋팅 초기화")]
private void Init()
{
@ -63,7 +100,8 @@ namespace BlueWaterProject
directionIndicator.SetActive(false);
waterLayer = LayerMask.GetMask("Water");
defaultMaxSpeed = maxSpeed;
SetCurrentHp(MaxHp);
}
@ -106,12 +144,9 @@ namespace BlueWaterProject
private void Start()
{
}
private void FixedUpdate()
{
waterLayer = LayerMask.GetMask("Water");
defaultMaxSpeed = maxSpeed;
SetCurrentHp(MaxHp);
}
private void Update()
@ -136,7 +171,13 @@ namespace BlueWaterProject
if (moveDirection != Vector3.zero)
{
var targetRotation = Quaternion.LookRotation(moveDirection, Vector3.up);
rb.rotation = Quaternion.Slerp(rb.rotation, targetRotation, turnSpeed * Time.fixedDeltaTime);
var angleToRotate = Quaternion.Angle(rb.rotation, targetRotation);
var rotationStep = turnSpeed / angleToRotate;
rb.rotation = Quaternion.Slerp(rb.rotation, targetRotation, rotationStep * Time.fixedDeltaTime);
// var targetRotation = Quaternion.LookRotation(moveDirection, Vector3.up);
// rb.rotation = Quaternion.Slerp(rb.rotation, targetRotation, turnSpeed * Time.fixedDeltaTime);
}
}
@ -182,15 +223,62 @@ namespace BlueWaterProject
{
if (isBoosting)
{
UiManager.Inst.OceanUi.ShipBoostSlider.value += Time.deltaTime * (1f / boostMaxTime);
if (UiManager.Inst.OceanUi.ShipBoostSlider.value >= 1f)
HandleBoostUsage();
}
else
{
HandleBoostRecharge();
}
if (useBoostVignetteEffect && UiManager.Inst.OceanUi.ShipBoostSlider.value > 0f)
{
VisualFeedbackManager.Inst.SetVignetteIntensity(UiManager.Inst.OceanUi.ShipBoostSlider.value * vignetteForceCoefficient);
}
}
private void HandleBoostUsage()
{
UiManager.Inst.OceanUi.ShipBoostSlider.value += Time.deltaTime * (1f / boostMaxTime);
if (useBoostCameraShaking)
{
var shakeValue = UiManager.Inst.OceanUi.ShipBoostSlider.value * shakingForceCoefficient;
VisualFeedbackManager.Inst.CameraShake(CameraManager.Inst.OceanCamera.BaseShipCam, shakeValue);
}
if (UiManager.Inst.OceanUi.ShipBoostSlider.value >= 1f && currentAdditionalBoostTime <= 0)
{
currentAdditionalBoostTime = additionalBoostTime;
}
if (currentAdditionalBoostTime > 0)
{
currentAdditionalBoostTime -= Time.deltaTime;
if (currentAdditionalBoostTime <= 0)
{
currentBoostCooldownTime = boostCooldownTime;
maxSpeed *= 0.5f;
ShipStopBoost();
}
}
}
private void HandleBoostRecharge()
{
if (currentBoostCooldownTime > 0)
{
currentBoostCooldownTime -= Time.deltaTime;
UiManager.Inst.OceanUi.ShipBoostSlider.value = 1f;
}
else
{
UiManager.Inst.OceanUi.ShipBoostSlider.value -= Time.deltaTime * (1f / boostRecoveryTime);
if (!Mathf.Approximately(defaultMaxSpeed, maxSpeed))
{
maxSpeed = defaultMaxSpeed;
}
if (currentAdditionalBoostTime > 0f)
{
currentAdditionalBoostTime = 0f;
}
}
}
@ -306,21 +394,35 @@ namespace BlueWaterProject
private void ShipBoost()
{
if (UiManager.Inst.OceanUi.ShipBoostSlider.value >= 1f)
if (currentBoostCooldownTime > 0) return;
isBoosting = true;
if (useBoostSpeedLines)
{
isBoosting = false;
UiManager.Inst.OceanUi.SetActiveSpeedLine(true);
}
else
if (useBoostChangeDistance)
{
isBoosting = true;
CameraManager.Inst.OceanCamera.ChangeDistance(shrinkDistance, shrinkTime);
}
if (useBoostVignetteEffect)
{
VisualFeedbackManager.Inst.ToggleEffect<Vignette>(true);
}
}
private void ShipStopBoost()
{
if (!isBoosting) return;
isBoosting = false;
if (useBoostSpeedLines)
{
UiManager.Inst.OceanUi.SetActiveSpeedLine(false);
}
if (useBoostChangeDistance)
{
CameraManager.Inst.OceanCamera.DefaultDistance(distanceReturnTime);
}
}
#endregion

View File

@ -1,3 +1,4 @@
using System.Collections;
using System.Collections.Generic;
using Cinemachine;
using Sirenix.OdinInspector;
@ -16,6 +17,10 @@ namespace BlueWaterProject
private List<CinemachineVirtualCamera> cineCamList;
private GameObject cineCams;
private CinemachineFramingTransposer framingTransposer;
private Coroutine distanceCoroutine;
private float defaultDistance;
private const int CINE_CAM_NUM = 1;
@ -46,6 +51,8 @@ namespace BlueWaterProject
Debug.LogError("BaseShipCam is null error");
return;
}
framingTransposer = BaseShipCam.GetCinemachineComponent<CinemachineFramingTransposer>();
defaultDistance = framingTransposer.m_CameraDistance;
cineCamList = new List<CinemachineVirtualCamera>(CINE_CAM_NUM)
{
@ -61,5 +68,51 @@ namespace BlueWaterProject
CameraManager.Inst.MainCam = Camera.main;
}
public void ChangeDistance(float addDistance, float time)
{
if (distanceCoroutine != null)
{
StopCoroutine(distanceCoroutine);
}
distanceCoroutine = StartCoroutine(ChangeDistanceCoroutine(addDistance, time));
}
private IEnumerator ChangeDistanceCoroutine(float addDistance, float time)
{
var changeDistance = framingTransposer.m_CameraDistance + addDistance;
var updateTime = 0f;
while (updateTime < time)
{
updateTime += Time.deltaTime;
framingTransposer.m_CameraDistance = Mathf.Lerp(framingTransposer.m_CameraDistance,
changeDistance, updateTime / time);
yield return null;
}
yield return null;
}
public void DefaultDistance(float time)
{
if (distanceCoroutine != null)
{
StopCoroutine(distanceCoroutine);
}
distanceCoroutine = StartCoroutine(DefaultDistanceCoroutine(time));
}
private IEnumerator DefaultDistanceCoroutine(float time)
{
var updateTime = 0f;
while (updateTime < time)
{
updateTime += Time.deltaTime;
framingTransposer.m_CameraDistance = Mathf.Lerp(framingTransposer.m_CameraDistance,
defaultDistance, updateTime / time);
yield return null;
}
framingTransposer.m_CameraDistance = defaultDistance;
yield return null;
}
}
}

View File

@ -83,6 +83,8 @@ namespace BlueWaterProject
[field: SerializeField] public Slider ShipBoostSlider { get; set; }
[field: SerializeField] public GameObject SpeedLines { get; set; }
private Canvas canvas;
[Button("셋팅 초기화")]
@ -104,6 +106,9 @@ namespace BlueWaterProject
ShipBoostSlider = canvas.transform.Find("ShipBoostSlider").GetComponent<Slider>();
ShipBoostSlider.value = 0f;
SpeedLines = canvas.transform.Find("SpeedLines").gameObject;
SpeedLines.SetActive(false);
}
private void Awake()
@ -126,5 +131,7 @@ namespace BlueWaterProject
ProcessBar.SetPosition(result);
}
}
public void SetActiveSpeedLine(bool value) => SpeedLines.SetActive(value);
}
}

View File

@ -1,5 +1,7 @@
using Sirenix.OdinInspector;
using Unity.Mathematics;
using UnityEngine;
using Random = UnityEngine.Random;
// ReSharper disable once CheckNamespace
namespace BlueWaterProject
@ -12,14 +14,15 @@ namespace BlueWaterProject
[Title("캐논 변수")]
[SerializeField] private GameObject projectileObj;
[SerializeField] private Transform firePos;
[SerializeField] private float fireAngle = 30f;
[SerializeField] private float speed = 20f;
[SerializeField] private float height = 50f;
[Range(0f, 0.5f)]
[SerializeField] private float fireAngle = 0.2f;
[SerializeField] private float speed = 75f;
[SerializeField] private float height = 20f;
[SerializeField] private Vector2 randomCatch = new(1, 4);
[Title("캐논 발사 카메라 효과")]
[SerializeField] private float cameraShakePower = 0.5f;
[SerializeField] private float cameraShakeDuration = 0.5f;
[SerializeField] private float cameraShakePower = 2f;
[SerializeField] private float cameraShakeDuration = 0.3f;
private float cannonRadius;
private LayerMask boidsLayer;
@ -45,10 +48,14 @@ namespace BlueWaterProject
public void Fire(float chargingGauge)
{
VisualFeedbackManager.Inst.CameraShake(CameraManager.Inst.OceanCamera.BaseShipCam, cameraShakePower, cameraShakeDuration);
var projectile = Instantiate(projectileObj, firePos.position, firePos.rotation);
var addAngle = chargingGauge * fireAngle;
var firePosRotation = firePos.rotation.eulerAngles;
firePosRotation.x -= addAngle;
var projectile = Instantiate(projectileObj, firePos.position, Quaternion.Euler(firePosRotation));
var particleWeapon = projectile.GetComponent<ParticleWeapon>();
particleWeapon.onHitAction.AddListener(HandleCannonHit);
projectile.GetComponent<Rigidbody>().AddForce(projectile.transform.forward * (chargingGauge * speed));
//projectile.GetComponent<Rigidbody>().AddForce(projectile.transform.forward * (chargingGauge * speed));
projectile.GetComponent<Rigidbody>().velocity = projectile.transform.forward * speed;
}
private void HandleCannonHit(RaycastHit hit, float power)

View File

@ -0,0 +1,66 @@
using UnityEngine;
namespace _02.Scripts
{
[ExecuteInEditMode]
public class SpeedLines : MonoBehaviour
{
[SerializeField] private Shader shader;
[SerializeField] private Texture texture;
[SerializeField] private Color color = new(1,1,1,0.1f);
[Range(0,1)]
[SerializeField] private float width = 0.4f;
[Range(0, 1)]
[SerializeField] private float length = 0.42f;
[Range(0, 100)]
[SerializeField] private float lengthSpeed = 17;
[Range(0, 1)]
[SerializeField] private float density = 0.75f;
private Material material;
private static readonly int Color = Shader.PropertyToID("_Color");
private static readonly int Width = Shader.PropertyToID("_Width");
private static readonly int Length = Shader.PropertyToID("_Length");
private static readonly int LengthSpeed = Shader.PropertyToID("_LengthSpeed");
private static readonly int Density = Shader.PropertyToID("_Density");
private static readonly int Fbm = Shader.PropertyToID("_FBM");
private void Awake()
{
if (material) return;
material = new Material(shader);
material.SetTexture(Fbm, texture);
}
private void LateUpdate()
{
material.SetColor(Color, color);
material.SetFloat(Width, width);
material.SetFloat(Length, length);
material.SetFloat(LengthSpeed, lengthSpeed);
material.SetFloat(Density, density);
}
public void OnRenderObject()
{
material.SetPass(0);
GL.PushMatrix();
GL.LoadOrtho();
GL.Begin(GL.QUADS);
GL.TexCoord(new Vector3(0, 0, 0));
GL.Vertex3(0, 0, 0);
GL.TexCoord(new Vector3(0, 1, 0));
GL.Vertex3(0, 1, 0);
GL.TexCoord(new Vector3(1, 1, 0));
GL.Vertex3(1, 1, 0);
GL.TexCoord(new Vector3(1, 0, 0));
GL.Vertex3(1, 0, 0);
GL.End();
GL.PopMatrix();
}
}
}

View File

@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: b508e85f957f4d441998fa32fb18b473
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -1,15 +1,37 @@
using System;
using System.Collections;
using System.Collections.Generic;
using Cinemachine;
using MoreMountains.Feedbacks;
using MoreMountains.FeedbacksForThirdParty;
using UnityEngine;
using UnityEngine.Rendering;
using UnityEngine.Rendering.Universal;
using UnityEngine.SceneManagement;
// ReSharper disable once CheckNamespace
namespace BlueWaterProject
{
public class VisualFeedbackManager : Singleton<VisualFeedbackManager>
{
private Vignette vignette;
private void OnEnable()
{
SceneManager.sceneLoaded += OnSceneLoaded;
}
private void OnDisable()
{
SceneManager.sceneLoaded -= OnSceneLoaded;
}
private void OnSceneLoaded(Scene scene, LoadSceneMode mode)
{
vignette = null;
vignette = GetEffect<Vignette>();
}
#region HitStop
/// <summary>
@ -49,6 +71,50 @@ namespace BlueWaterProject
mmfPlayer.PlayFeedbacks();
}
#region PostProcessing
public void ToggleEffect<T>(bool value) where T : VolumeComponent
{
var effect = GetEffect<T>();
if (effect == null)
{
print(typeof(T) + "효과가 없습니다.");
return;
}
effect.active = value;
}
private T GetEffect<T>() where T : VolumeComponent
{
var postProcessVolume = FindAnyObjectByType<Volume>();
if (postProcessVolume == null)
{
print("Volume 컴포넌트를 가진 오브젝트가 없습니다.");
return null;
}
postProcessVolume.profile.TryGet(out T effect);
return effect;
}
public void SetVignetteIntensity(float intensity)
{
if (vignette == null)
{
vignette = GetEffect<Vignette>();
}
if (vignette != null)
{
vignette.intensity.value = intensity;
}
else
{
print("vignette is null.");
}
}
#endregion
#endregion
}
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 47 KiB

View File

@ -0,0 +1,135 @@
fileFormatVersion: 2
guid: 5460bab505c65b747acf4fd1a32d9da4
TextureImporter:
internalIDToNameTable: []
externalObjects: {}
serializedVersion: 12
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
vTOnly: 0
ignoreMasterTextureLimit: 0
grayScaleToAlpha: 0
generateCubemap: 6
cubemapConvolution: 0
seamlessCubemap: 0
textureFormat: 1
maxTextureSize: 2048
textureSettings:
serializedVersion: 2
filterMode: 1
aniso: 1
mipBias: 0
wrapU: 0
wrapV: 0
wrapW: 0
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
flipbookRows: 1
flipbookColumns: 1
maxTextureSizeSet: 0
compressionQualitySet: 0
textureFormatSet: 0
ignorePngGamma: 0
applyGammaDecoding: 0
cookieLightType: 0
platformSettings:
- serializedVersion: 3
buildTarget: DefaultTexturePlatform
maxTextureSize: 256
resizeAlgorithm: 0
textureFormat: 63
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
- serializedVersion: 3
buildTarget: Standalone
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
- serializedVersion: 3
buildTarget: Android
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
- serializedVersion: 3
buildTarget: Server
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
spriteSheet:
serializedVersion: 2
sprites: []
outline: []
physicsShape: []
bones: []
spriteID:
internalID: 0
vertices: []
indices:
edges: []
weights: []
secondaryTextures: []
nameFileIdTable: {}
spritePackingTag:
pSDRemoveMatte: 0
pSDShowRemoveMatteOption: 0
userData:
assetBundleName:
assetBundleVariant:

View File

@ -7,7 +7,7 @@ Material:
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: FishGraph
m_Name: SmallFish
m_Shader: {fileID: -6465566751694194690, guid: 7cae0496bda14c04a9d5aa9138f04bda,
type: 3}
m_Parent: {fileID: 0}

View File

@ -0,0 +1,166 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!21 &2100000
Material:
serializedVersion: 8
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: Stingray
m_Shader: {fileID: -6465566751694194690, guid: 7cae0496bda14c04a9d5aa9138f04bda,
type: 3}
m_Parent: {fileID: 0}
m_ModifiedSerializedProperties: 0
m_ValidKeywords: []
m_InvalidKeywords: []
m_LightmapFlags: 4
m_EnableInstancingVariants: 0
m_DoubleSidedGI: 1
m_CustomRenderQueue: 2050
stringTagMap: {}
disabledShaderPasses:
- MOTIONVECTORS
m_LockedProperties:
m_SavedProperties:
serializedVersion: 3
m_TexEnvs:
- _BaseMap:
m_Texture: {fileID: 2800000, guid: b22e9f06f1fbc294c9cb94024e1e05ea, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _BumpMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailAlbedoMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailMask:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailNormalMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _EmissionMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _MainTex:
m_Texture: {fileID: 2800000, guid: a6232c946ac038d42b48ca134947b246, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _MetallicGlossMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _OcclusionMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _ParallaxMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _SpecGlossMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- unity_Lightmaps:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- unity_LightmapsInd:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- unity_ShadowMasks:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
m_Ints: []
m_Floats:
- _A: 0.5
- _AlphaClip: 0
- _AlphaToMask: 0
- _Amplitude: 0.15
- _AmplitudeX: 0.2
- _AmplitudeX_1: 0.2
- _AmplitudeX_2: 0.2
- _AmplitudeX_3: 0.2
- _AmplitudeY: 0.2
- _AmplitudeZ: 1
- _B: 0.7
- _Blend: 0
- _BlendModePreserveSpecular: 1
- _BlendOp: 0
- _BumpScale: 1
- _C: 6
- _ClearCoatMask: 0
- _ClearCoatSmoothness: 0
- _Cull: 0
- _Cutoff: 0.5
- _D: 0.15
- _DetailAlbedoMapScale: 1
- _DetailNormalMapScale: 1
- _DstBlend: 0
- _DstBlendAlpha: 0
- _E: 0.2
- _EnvironmentReflections: 1
- _F: 1
- _FrequencyX: 1
- _FrequencyX_1: 1
- _FrequencyX_2: 1
- _FrequencyX_3: 1
- _FrequencyX_4: 1
- _FrequencyY: 1
- _FrequencyZ: 1
- _GlossMapScale: 0
- _Glossiness: 0
- _GlossyReflections: 0
- _HeadLimit: 0.05
- _Metallic: 0
- _OcclusionStrength: 1
- _Parallax: 0.005
- _QueueControl: 0
- _QueueOffset: 50
- _ReceiveShadows: 1
- _SampleGI: 0
- _Shake: 0.7
- _Smoothness: 0.5
- _SmoothnessTextureChannel: 0
- _SpecularHighlights: 1
- _Speed: 6
- _SpeedX: 1
- _SpeedY: 1
- _SpeedZ: 1
- _SrcBlend: 1
- _SrcBlendAlpha: 1
- _Surface: 0
- _WorkflowMode: 1
- _ZWrite: 1
- _offsetY: 0.2
- _offsetZ: 0.5
m_Colors:
- _BaseColor: {r: 1, g: 1, b: 1, a: 1}
- _Color: {r: 1, g: 1, b: 1, a: 1}
- _EmissionColor: {r: 0, g: 0, b: 0, a: 1}
- _SpecColor: {r: 0.19999996, g: 0.19999996, b: 0.19999996, a: 1}
m_BuildTextureStacks: []
m_AllowLocking: 1
--- !u!114 &6506538637606883820
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: 9

View File

@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: 092a095eda8f69f4cabbac57bae2184f
guid: 5bc1a0d000b996d44b3d22d5c855de79
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 2100000

View File

@ -1,18 +1,5 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!114 &-7508768530177104492
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: 7
--- !u!21 &2100000
Material:
serializedVersion: 8
@ -20,19 +7,16 @@ Material:
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: Fish01
m_Shader: {fileID: 4800000, guid: 8b0bcba1cce78b64f84471735e786188, type: 3}
m_Parent: {fileID: 0}
m_ModifiedSerializedProperties: 0
m_Name: SpeedLines
m_Shader: {fileID: 4800000, guid: 3dafd9b1d17896a448d50c05e43d1f21, type: 3}
m_ValidKeywords: []
m_InvalidKeywords: []
m_LightmapFlags: 4
m_EnableInstancingVariants: 0
m_DoubleSidedGI: 0
m_CustomRenderQueue: -1
m_CustomRenderQueue: 3000
stringTagMap: {}
disabledShaderPasses: []
m_LockedProperties:
m_SavedProperties:
serializedVersion: 3
m_TexEnvs:
@ -60,8 +44,12 @@ Material:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _FBM:
m_Texture: {fileID: 2800000, guid: 5460bab505c65b747acf4fd1a32d9da4, type: 3}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _MainTex:
m_Texture: {fileID: 2800000, guid: b22e9f06f1fbc294c9cb94024e1e05ea, type: 3}
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _MetallicGlossMap:
@ -95,52 +83,51 @@ Material:
m_Ints: []
m_Floats:
- _AlphaClip: 0
- _AlphaToMask: 0
- _AmplitudeX: 0.05
- _AmplitudeY: 0.05
- _AmplitudeZ: 0.1
- _Blend: 0
- _BlendModePreserveSpecular: 1
- _BumpScale: 1
- _ClearCoatMask: 0
- _ClearCoatSmoothness: 0
- _Cull: 2
- _Cutoff: 0.5
- _Density: 0.75
- _DetailAlbedoMapScale: 1
- _DetailNormalMapScale: 1
- _DstBlend: 0
- _DstBlendAlpha: 0
- _EnvironmentReflections: 1
- _FrequencyX: 10
- _FrequencyY: 5
- _FrequencyZ: 10
- _GlossMapScale: 0
- _Glossiness: 0
- _GlossinessSource: 0
- _GlossyReflections: 0
- _HeadLimit: 0
- _Length: 0.18
- _LengthSpeed: 17
- _Metallic: 0
- _OcclusionStrength: 1
- _Parallax: 0.005
- _QueueOffset: 0
- _ReceiveShadows: 1
- _Shininess: 0
- _Smoothness: 0.5
- _SmoothnessSource: 0
- _SmoothnessTextureChannel: 0
- _SpecSource: 0
- _SpecularHighlights: 1
- _SpeedX: 1
- _SpeedY: 0
- _SpeedZ: 1
- _SrcBlend: 1
- _SrcBlendAlpha: 1
- _Surface: 0
- _Width: 0.4
- _WorkflowMode: 1
- _ZWrite: 1
m_Colors:
- _BaseColor: {r: 1, g: 1, b: 1, a: 1}
- _Color: {r: 1, g: 1, b: 1, a: 1}
- _Color: {r: 1, g: 1, b: 1, a: 0.14901961}
- _EmissionColor: {r: 0, g: 0, b: 0, a: 1}
- _SpecColor: {r: 0.19999996, g: 0.19999996, b: 0.19999996, a: 1}
m_BuildTextureStacks: []
--- !u!114 &1250400037891573329
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: 5

View File

@ -1,7 +1,8 @@
fileFormatVersion: 2
guid: 3643c0d76ec153646b1203880bfb64ed
DefaultImporter:
guid: ab3b3ee21523dc74f96276f77b248765
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 2100000
userData:
assetBundleName:
assetBundleVariant:

View File

@ -60,6 +60,8 @@ MeshRenderer:
m_ReflectionProbeUsage: 1
m_RayTracingMode: 2
m_RayTraceProcedural: 0
m_RayTracingAccelStructBuildFlagsOverride: 0
m_RayTracingAccelStructBuildFlags: 1
m_RenderingLayerMask: 1
m_RendererPriority: 0
m_Materials:
@ -151,8 +153,7 @@ MonoBehaviour:
m_Script: {fileID: 11500000, guid: 883eb23bc92adc54eb936343c0d39f0d, type: 3}
m_Name:
m_EditorClassIdentifier:
boidPrefab: {fileID: 5402562142639805275, guid: 1294b74a61e4faa49a0fb449956b4fda,
type: 3}
boidPrefab: {fileID: 0}
boidCount: 5
<RandomSpeedRange>k__BackingField: {x: 5, y: 10}
spawnRange: 10
@ -229,23 +230,23 @@ PrefabInstance:
objectReference: {fileID: 0}
- target: {fileID: 4833545274551230, guid: 35fe9aead25a440468b5c2bf0da0c019, type: 3}
propertyPath: m_LocalRotation.w
value: 0.7071068
value: 1
objectReference: {fileID: 0}
- target: {fileID: 4833545274551230, guid: 35fe9aead25a440468b5c2bf0da0c019, type: 3}
propertyPath: m_LocalRotation.x
value: -0.7071068
value: 0
objectReference: {fileID: 0}
- target: {fileID: 4833545274551230, guid: 35fe9aead25a440468b5c2bf0da0c019, type: 3}
propertyPath: m_LocalRotation.y
value: -0
value: 0
objectReference: {fileID: 0}
- target: {fileID: 4833545274551230, guid: 35fe9aead25a440468b5c2bf0da0c019, type: 3}
propertyPath: m_LocalRotation.z
value: -0
value: 0
objectReference: {fileID: 0}
- target: {fileID: 4833545274551230, guid: 35fe9aead25a440468b5c2bf0da0c019, type: 3}
propertyPath: m_LocalEulerAnglesHint.x
value: -90
value: 0
objectReference: {fileID: 0}
- target: {fileID: 4833545274551230, guid: 35fe9aead25a440468b5c2bf0da0c019, type: 3}
propertyPath: m_LocalEulerAnglesHint.y

View File

@ -0,0 +1,690 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!1 &89719588838547572
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 1081926911637138583}
m_Layer: 0
m_Name: Bone.005
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &1081926911637138583
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 89719588838547572}
serializedVersion: 2
m_LocalRotation: {x: 0.7071066, y: -0, z: -0, w: 0.70710695}
m_LocalPosition: {x: -0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children:
- {fileID: 4764736475117754603}
m_Father: {fileID: 8466372403534620464}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!1 &181724147800501524
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 706587450242381742}
- component: {fileID: 4441696169791778486}
m_Layer: 0
m_Name: VisualLook
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &706587450242381742
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 181724147800501524}
serializedVersion: 2
m_LocalRotation: {x: -0.7071068, y: 0, z: 0, w: 0.7071068}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children:
- {fileID: 8466372403534620464}
- {fileID: 2338995487159450636}
m_Father: {fileID: 4874816205509271808}
m_LocalEulerAnglesHint: {x: -90, y: 0, z: 0}
--- !u!95 &4441696169791778486
Animator:
serializedVersion: 7
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 181724147800501524}
m_Enabled: 1
m_Avatar: {fileID: 0}
m_Controller: {fileID: 9100000, guid: 02aa946627bb6514ebd39a183509b80c, type: 2}
m_CullingMode: 0
m_UpdateMode: 0
m_ApplyRootMotion: 0
m_LinearVelocityBlending: 0
m_StabilizeFeet: 0
m_AnimatePhysics: 0
m_WarningMessage:
m_HasTransformHierarchy: 1
m_AllowConstantClipSamplingOptimization: 1
m_KeepAnimatorStateOnDisable: 0
m_WriteDefaultValuesOnDisable: 0
--- !u!1 &665513925588288320
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 4874816205509271808}
- component: {fileID: 5402562142639805275}
- component: {fileID: 2102284208022651341}
m_Layer: 16
m_Name: HammerheadShark
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &4874816205509271808
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 665513925588288320}
serializedVersion: 2
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 5, y: 5, z: 5}
m_ConstrainProportionsScale: 1
m_Children:
- {fileID: 706587450242381742}
m_Father: {fileID: 0}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!114 &5402562142639805275
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 665513925588288320}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: b5a4bdb4c510d354687a785c3f642878, type: 3}
m_Name:
m_EditorClassIdentifier:
<FishInfo>k__BackingField:
<Name>k__BackingField: "\uB9DD\uCE58\uBA38\uB9AC\uC0C1\uC5B4"
<Count>k__BackingField: 0
<RandomCount>k__BackingField: {x: 10, y: 1}
obstacleDistance: 10
viewAngle: 120
maxNeighbourCount: 10
neighbourDistance: 6
avoidAdditionalSpeed: 10
boidUnitLayer:
serializedVersion: 2
m_Bits: 65536
obstacleLayer:
serializedVersion: 2
m_Bits: 2097672
--- !u!65 &2102284208022651341
BoxCollider:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 665513925588288320}
m_Material: {fileID: 0}
m_IncludeLayers:
serializedVersion: 2
m_Bits: 0
m_ExcludeLayers:
serializedVersion: 2
m_Bits: 0
m_LayerOverridePriority: 0
m_IsTrigger: 0
m_ProvidesContacts: 0
m_Enabled: 1
serializedVersion: 3
m_Size: {x: 0.5, y: 0.9, z: 2}
m_Center: {x: 0, y: 0, z: 0}
--- !u!1 &1224069851354487571
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 4130325431993033775}
m_Layer: 0
m_Name: Bone.003
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &4130325431993033775
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1224069851354487571}
serializedVersion: 2
m_LocalRotation: {x: 0.58029294, y: 0.0000002912544, z: 0.00000020752853, w: 0.8144078}
m_LocalPosition: {x: -0, y: 0.0045014177, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children:
- {fileID: 1228888969748167953}
m_Father: {fileID: 3015589278919813335}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!1 &1491179128806270494
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 311293942175100377}
m_Layer: 0
m_Name: Bone.009
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &311293942175100377
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1491179128806270494}
serializedVersion: 2
m_LocalRotation: {x: -0.022205787, y: 0.00000009130886, z: 0.0000000020280853, w: 0.9997534}
m_LocalPosition: {x: -3.8593828e-18, y: 0.005654719, z: 3.7252902e-11}
m_LocalScale: {x: 1, y: 1, z: 0.99999994}
m_ConstrainProportionsScale: 0
m_Children:
- {fileID: 6616873940118994575}
m_Father: {fileID: 674119233981851916}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!1 &1629447816847837215
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 3015589278919813335}
m_Layer: 0
m_Name: Bone.001
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &3015589278919813335
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1629447816847837215}
serializedVersion: 2
m_LocalRotation: {x: -0.00000043908824, y: 0, z: -0, w: 1}
m_LocalPosition: {x: -0, y: 0.007196454, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children:
- {fileID: 4116136231040088850}
- {fileID: 4130325431993033775}
m_Father: {fileID: 6132471241581053020}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!1 &2919818931448682926
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 6616873940118994575}
m_Layer: 0
m_Name: Bone.009_end
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &6616873940118994575
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 2919818931448682926}
serializedVersion: 2
m_LocalRotation: {x: 0, y: -0, z: -0, w: 1}
m_LocalPosition: {x: -0, y: 0.0046762344, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 311293942175100377}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!1 &4456239184811330756
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 5464096081733746494}
m_Layer: 0
m_Name: Bone.002_end
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &5464096081733746494
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 4456239184811330756}
serializedVersion: 2
m_LocalRotation: {x: 0, y: -0, z: -0, w: 1}
m_LocalPosition: {x: -0, y: 0.0064032823, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 4116136231040088850}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!1 &5015505286755233464
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 2338995487159450636}
- component: {fileID: 4841605955695551639}
m_Layer: 0
m_Name: Circle.001
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &2338995487159450636
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 5015505286755233464}
serializedVersion: 2
m_LocalRotation: {x: 0.7071072, y: 0, z: -0, w: 0.7071064}
m_LocalPosition: {x: 0.01114005, y: -0.25603068, z: 0.0916883}
m_LocalScale: {x: 100, y: 100, z: 100}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 706587450242381742}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!137 &4841605955695551639
SkinnedMeshRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 5015505286755233464}
m_Enabled: 1
m_CastShadows: 1
m_ReceiveShadows: 1
m_DynamicOccludee: 1
m_StaticShadowCaster: 0
m_MotionVectors: 1
m_LightProbeUsage: 1
m_ReflectionProbeUsage: 1
m_RayTracingMode: 3
m_RayTraceProcedural: 0
m_RayTracingAccelStructBuildFlagsOverride: 0
m_RayTracingAccelStructBuildFlags: 1
m_RenderingLayerMask: 1
m_RendererPriority: 0
m_Materials:
- {fileID: -876546973899608171, guid: f8a901b48090655439b6a6b89e0db9b8, type: 3}
- {fileID: -6478536213147159724, guid: f8a901b48090655439b6a6b89e0db9b8, type: 3}
- {fileID: 1572856357441901246, guid: f8a901b48090655439b6a6b89e0db9b8, type: 3}
- {fileID: -8969354582770894270, guid: f8a901b48090655439b6a6b89e0db9b8, type: 3}
- {fileID: -8177756790426730598, guid: f8a901b48090655439b6a6b89e0db9b8, type: 3}
- {fileID: 327487709993020328, guid: f8a901b48090655439b6a6b89e0db9b8, type: 3}
- {fileID: 327487709993020328, guid: f8a901b48090655439b6a6b89e0db9b8, type: 3}
m_StaticBatchInfo:
firstSubMesh: 0
subMeshCount: 0
m_StaticBatchRoot: {fileID: 0}
m_ProbeAnchor: {fileID: 0}
m_LightProbeVolumeOverride: {fileID: 0}
m_ScaleInLightmap: 1
m_ReceiveGI: 1
m_PreserveUVs: 0
m_IgnoreNormalsForChartDetection: 0
m_ImportantGI: 0
m_StitchLightmapSeams: 1
m_SelectedEditorRenderState: 3
m_MinimumChartSize: 4
m_AutoUVMaxDistance: 0.5
m_AutoUVMaxAngle: 89
m_LightmapParameters: {fileID: 0}
m_SortingLayerID: 0
m_SortingLayer: 0
m_SortingOrder: 0
serializedVersion: 2
m_Quality: 0
m_UpdateWhenOffscreen: 0
m_SkinnedMotionVectors: 1
m_Mesh: {fileID: 8314571269056883277, guid: f8a901b48090655439b6a6b89e0db9b8, type: 3}
m_Bones:
- {fileID: 6132471241581053020}
- {fileID: 3015589278919813335}
- {fileID: 4116136231040088850}
- {fileID: 4130325431993033775}
- {fileID: 1228888969748167953}
- {fileID: 1081926911637138583}
- {fileID: 4764736475117754603}
- {fileID: 3141911211198631894}
- {fileID: 674119233981851916}
- {fileID: 311293942175100377}
m_BlendShapeWeights: []
m_RootBone: {fileID: 1081926911637138583}
m_AABB:
m_Center: {x: 0.00011140015, y: 0.009651304, z: 0.0017804052}
m_Extent: {x: 0.011133577, y: 0.029777508, z: 0.009141138}
m_DirtyAABB: 0
--- !u!1 &5181304155913638514
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 3141911211198631894}
m_Layer: 0
m_Name: Bone.007
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &3141911211198631894
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 5181304155913638514}
serializedVersion: 2
m_LocalRotation: {x: -1.1368684e-13, y: 0, z: -0, w: 1}
m_LocalPosition: {x: -0, y: 0.006372605, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children:
- {fileID: 674119233981851916}
m_Father: {fileID: 4764736475117754603}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!1 &5337450684634617954
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 1228888969748167953}
m_Layer: 0
m_Name: Bone.004
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &1228888969748167953
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 5337450684634617954}
serializedVersion: 2
m_LocalRotation: {x: -0.67737514, y: -0.0000002140613, z: -0.00000028738788, w: 0.7356378}
m_LocalPosition: {x: 2.842171e-16, y: 0.0031558385, z: 2.9802322e-10}
m_LocalScale: {x: 1, y: 0.99999994, z: 0.9999999}
m_ConstrainProportionsScale: 0
m_Children:
- {fileID: 1291679289868679539}
m_Father: {fileID: 4130325431993033775}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!1 &5522665509291400143
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 4116136231040088850}
m_Layer: 0
m_Name: Bone.002
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &4116136231040088850
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 5522665509291400143}
serializedVersion: 2
m_LocalRotation: {x: 0.016941855, y: -0, z: -0, w: 0.9998565}
m_LocalPosition: {x: -0, y: 0.0045014177, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children:
- {fileID: 5464096081733746494}
m_Father: {fileID: 3015589278919813335}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!1 &5877570663298670048
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 6132471241581053020}
m_Layer: 0
m_Name: Bone
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &6132471241581053020
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 5877570663298670048}
serializedVersion: 2
m_LocalRotation: {x: -0.7071068, y: 0, z: -0, w: 0.7071067}
m_LocalPosition: {x: -0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children:
- {fileID: 3015589278919813335}
m_Father: {fileID: 8466372403534620464}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!1 &6484094505080155606
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 674119233981851916}
m_Layer: 0
m_Name: Bone.008
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &674119233981851916
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 6484094505080155606}
serializedVersion: 2
m_LocalRotation: {x: 0.022205783, y: -0.00000009130887, z: -0.000000002028085, w: 0.9997534}
m_LocalPosition: {x: -0, y: 0.0068411776, z: 0}
m_LocalScale: {x: 1, y: 1, z: 0.99999994}
m_ConstrainProportionsScale: 0
m_Children:
- {fileID: 311293942175100377}
m_Father: {fileID: 3141911211198631894}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!1 &8061815563207224698
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 8466372403534620464}
m_Layer: 0
m_Name: Armature
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &8466372403534620464
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 8061815563207224698}
serializedVersion: 2
m_LocalRotation: {x: -0.7071068, y: 0, z: -0, w: 0.7071067}
m_LocalPosition: {x: -0, y: 0, z: 0}
m_LocalScale: {x: 100, y: 100, z: 100}
m_ConstrainProportionsScale: 0
m_Children:
- {fileID: 6132471241581053020}
- {fileID: 1081926911637138583}
m_Father: {fileID: 706587450242381742}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!1 &8785136224010552733
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 4764736475117754603}
m_Layer: 0
m_Name: Bone.006
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &4764736475117754603
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 8785136224010552733}
serializedVersion: 2
m_LocalRotation: {x: 5.684342e-14, y: -0, z: -0, w: 1}
m_LocalPosition: {x: -0, y: 0.0079657575, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children:
- {fileID: 3141911211198631894}
m_Father: {fileID: 1081926911637138583}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!1 &8785968493756290015
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 1291679289868679539}
m_Layer: 0
m_Name: Bone.004_end
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &1291679289868679539
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 8785968493756290015}
serializedVersion: 2
m_LocalRotation: {x: 0, y: -0, z: -0, w: 1}
m_LocalPosition: {x: -0, y: 0.002429515, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 1228888969748167953}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}

View File

@ -12,7 +12,7 @@ GameObject:
- component: {fileID: 5402562142639805275}
- component: {fileID: 2102284208022651341}
m_Layer: 16
m_Name: Boid
m_Name: SmallFish
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
@ -140,6 +140,8 @@ MeshRenderer:
m_ReflectionProbeUsage: 1
m_RayTracingMode: 2
m_RayTraceProcedural: 0
m_RayTracingAccelStructBuildFlagsOverride: 0
m_RayTracingAccelStructBuildFlags: 1
m_RenderingLayerMask: 1
m_RendererPriority: 0
m_Materials:

View File

@ -1,6 +1,6 @@
fileFormatVersion: 2
guid: aba6fa52907672a4da99307e9c925639
DefaultImporter:
guid: c6911733874ec6645aa30548164bb1fb
PrefabImporter:
externalObjects: {}
userData:
assetBundleName:

View File

@ -0,0 +1,169 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!1 &665513925588288320
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 4874816205509271808}
- component: {fileID: 5402562142639805275}
- component: {fileID: 2102284208022651341}
m_Layer: 16
m_Name: Stingray
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &4874816205509271808
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 665513925588288320}
serializedVersion: 2
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 3, y: 3, z: 3}
m_ConstrainProportionsScale: 1
m_Children:
- {fileID: 8545490757316729625}
m_Father: {fileID: 0}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!114 &5402562142639805275
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 665513925588288320}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: b5a4bdb4c510d354687a785c3f642878, type: 3}
m_Name:
m_EditorClassIdentifier:
<FishInfo>k__BackingField:
<Name>k__BackingField: "\uAC00\uC624\uB9AC"
<Count>k__BackingField: 0
<RandomCount>k__BackingField: {x: 5, y: 7}
obstacleDistance: 10
viewAngle: 120
maxNeighbourCount: 10
neighbourDistance: 6
avoidAdditionalSpeed: 10
boidUnitLayer:
serializedVersion: 2
m_Bits: 65536
obstacleLayer:
serializedVersion: 2
m_Bits: 2097672
--- !u!65 &2102284208022651341
BoxCollider:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 665513925588288320}
m_Material: {fileID: 0}
m_IncludeLayers:
serializedVersion: 2
m_Bits: 0
m_ExcludeLayers:
serializedVersion: 2
m_Bits: 0
m_LayerOverridePriority: 0
m_IsTrigger: 0
m_ProvidesContacts: 0
m_Enabled: 1
serializedVersion: 3
m_Size: {x: 0.5, y: 0.9, z: 2}
m_Center: {x: 0, y: 0, z: 0}
--- !u!1 &9069262553423479203
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 8545490757316729625}
- component: {fileID: 4699634871657583804}
- component: {fileID: 7411942358014533750}
m_Layer: 0
m_Name: VisualLook
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &8545490757316729625
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 9069262553423479203}
serializedVersion: 2
m_LocalRotation: {x: -0.7071068, y: 0, z: 0, w: 0.7071068}
m_LocalPosition: {x: -0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 4874816205509271808}
m_LocalEulerAnglesHint: {x: -90, y: 0, z: 0}
--- !u!33 &4699634871657583804
MeshFilter:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 9069262553423479203}
m_Mesh: {fileID: 4689743604669123803, guid: 15eb5f7b3a3b3e947b3ece8254a9aecf, type: 3}
--- !u!23 &7411942358014533750
MeshRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 9069262553423479203}
m_Enabled: 1
m_CastShadows: 1
m_ReceiveShadows: 1
m_DynamicOccludee: 1
m_StaticShadowCaster: 0
m_MotionVectors: 1
m_LightProbeUsage: 1
m_ReflectionProbeUsage: 1
m_RayTracingMode: 2
m_RayTraceProcedural: 0
m_RayTracingAccelStructBuildFlagsOverride: 0
m_RayTracingAccelStructBuildFlags: 1
m_RenderingLayerMask: 1
m_RendererPriority: 0
m_Materials:
- {fileID: 2100000, guid: 5bc1a0d000b996d44b3d22d5c855de79, type: 2}
m_StaticBatchInfo:
firstSubMesh: 0
subMeshCount: 0
m_StaticBatchRoot: {fileID: 0}
m_ProbeAnchor: {fileID: 0}
m_LightProbeVolumeOverride: {fileID: 0}
m_ScaleInLightmap: 1
m_ReceiveGI: 1
m_PreserveUVs: 0
m_IgnoreNormalsForChartDetection: 0
m_ImportantGI: 0
m_StitchLightmapSeams: 1
m_SelectedEditorRenderState: 3
m_MinimumChartSize: 4
m_AutoUVMaxDistance: 0.5
m_AutoUVMaxAngle: 89
m_LightmapParameters: {fileID: 0}
m_SortingLayerID: 0
m_SortingLayer: 0
m_SortingOrder: 0
m_AdditionalVertexStreams: {fileID: 0}

View File

@ -1,6 +1,6 @@
fileFormatVersion: 2
guid: 078b8f13a17171b49892ad10426d5af0
DefaultImporter:
guid: 6469fb143a712d448acc225487805c37
PrefabImporter:
externalObjects: {}
userData:
assetBundleName:

View File

@ -0,0 +1,73 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!1102 &-760363057230818645
AnimatorState:
serializedVersion: 6
m_ObjectHideFlags: 1
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: Armature|Walk
m_Speed: 1
m_CycleOffset: 0
m_Transitions: []
m_StateMachineBehaviours: []
m_Position: {x: 50, y: 50, z: 0}
m_IKOnFeet: 0
m_WriteDefaultValues: 1
m_Mirror: 0
m_SpeedParameterActive: 0
m_MirrorParameterActive: 0
m_CycleOffsetParameterActive: 0
m_TimeParameterActive: 0
m_Motion: {fileID: 8349542763059015795, guid: f8a901b48090655439b6a6b89e0db9b8,
type: 3}
m_Tag:
m_SpeedParameter:
m_MirrorParameter:
m_CycleOffsetParameter:
m_TimeParameter:
--- !u!91 &9100000
AnimatorController:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: HammerheadShark
serializedVersion: 5
m_AnimatorParameters: []
m_AnimatorLayers:
- serializedVersion: 5
m_Name: Base Layer
m_StateMachine: {fileID: 7792104606909699159}
m_Mask: {fileID: 0}
m_Motions: []
m_Behaviours: []
m_BlendingMode: 0
m_SyncedLayerIndex: -1
m_DefaultWeight: 0
m_IKPass: 0
m_SyncedLayerAffectsTiming: 0
m_Controller: {fileID: 9100000}
--- !u!1107 &7792104606909699159
AnimatorStateMachine:
serializedVersion: 6
m_ObjectHideFlags: 1
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: Base Layer
m_ChildStates:
- serializedVersion: 1
m_State: {fileID: -760363057230818645}
m_Position: {x: 340, y: 120, z: 0}
m_ChildStateMachines: []
m_AnyStateTransitions: []
m_EntryTransitions: []
m_StateMachineTransitions: {}
m_StateMachineBehaviours: []
m_AnyStatePosition: {x: 50, y: 20, z: 0}
m_EntryPosition: {x: 50, y: 120, z: 0}
m_ExitPosition: {x: 800, y: 120, z: 0}
m_ParentStateMachinePosition: {x: 800, y: 20, z: 0}
m_DefaultState: {fileID: -760363057230818645}

View File

@ -1,7 +1,8 @@
fileFormatVersion: 2
guid: 697b6e7dea1fde146b7e3e5cf3ed9e9f
DefaultImporter:
guid: 02aa946627bb6514ebd39a183509b80c
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 9100000
userData:
assetBundleName:
assetBundleVariant:

Binary file not shown.

View File

@ -0,0 +1,484 @@
fileFormatVersion: 2
guid: f8a901b48090655439b6a6b89e0db9b8
ModelImporter:
serializedVersion: 22200
internalIDToNameTable: []
externalObjects: {}
materials:
materialImportMode: 2
materialName: 0
materialSearch: 1
materialLocation: 1
animations:
legacyGenerateAnimations: 4
bakeSimulation: 0
resampleCurves: 1
optimizeGameObjects: 0
removeConstantScaleCurves: 0
motionNodeName:
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:
- serializedVersion: 16
name: Walk
takeName: Walk
internalID: 2667949614841947897
firstFrame: 0
lastFrame: 99
wrapMode: 0
orientationOffsetY: 0
level: 0
cycleOffset: 0
loop: 0
hasAdditiveReferencePose: 0
loopTime: 0
loopBlend: 0
loopBlendOrientation: 0
loopBlendPositionY: 0
loopBlendPositionXZ: 0
keepOriginalOrientation: 0
keepOriginalPositionY: 1
keepOriginalPositionXZ: 0
heightFromFeet: 0
mirror: 0
bodyMask: 01000000010000000100000001000000010000000100000001000000010000000100000001000000010000000100000001000000
curves: []
events: []
transformMask: []
maskType: 3
maskSource: {instanceID: 0}
additiveReferencePoseFrame: 0
- serializedVersion: 16
name: Idle
takeName: Idle
internalID: -3100369314251171874
firstFrame: 0
lastFrame: 99
wrapMode: 0
orientationOffsetY: 0
level: 0
cycleOffset: 0
loop: 0
hasAdditiveReferencePose: 0
loopTime: 0
loopBlend: 0
loopBlendOrientation: 0
loopBlendPositionY: 0
loopBlendPositionXZ: 0
keepOriginalOrientation: 0
keepOriginalPositionY: 1
keepOriginalPositionXZ: 0
heightFromFeet: 0
mirror: 0
bodyMask: 01000000010000000100000001000000010000000100000001000000010000000100000001000000010000000100000001000000
curves: []
events: []
transformMask: []
maskType: 3
maskSource: {instanceID: 0}
additiveReferencePoseFrame: 0
- serializedVersion: 16
name: Armature|beren
takeName: Armature|beren
internalID: 1516604743415707442
firstFrame: 0
lastFrame: 0
wrapMode: 0
orientationOffsetY: 0
level: 0
cycleOffset: 0
loop: 0
hasAdditiveReferencePose: 0
loopTime: 0
loopBlend: 0
loopBlendOrientation: 0
loopBlendPositionY: 0
loopBlendPositionXZ: 0
keepOriginalOrientation: 0
keepOriginalPositionY: 1
keepOriginalPositionXZ: 0
heightFromFeet: 0
mirror: 0
bodyMask: 01000000010000000100000001000000010000000100000001000000010000000100000001000000010000000100000001000000
curves: []
events: []
transformMask: []
maskType: 3
maskSource: {instanceID: 0}
additiveReferencePoseFrame: 0
- serializedVersion: 16
name: Armature|CameraAction
takeName: Armature|CameraAction
internalID: 4743084820616853705
firstFrame: 0
lastFrame: 0
wrapMode: 0
orientationOffsetY: 0
level: 0
cycleOffset: 0
loop: 0
hasAdditiveReferencePose: 0
loopTime: 0
loopBlend: 0
loopBlendOrientation: 0
loopBlendPositionY: 0
loopBlendPositionXZ: 0
keepOriginalOrientation: 0
keepOriginalPositionY: 1
keepOriginalPositionXZ: 0
heightFromFeet: 0
mirror: 0
bodyMask: 01000000010000000100000001000000010000000100000001000000010000000100000001000000010000000100000001000000
curves: []
events: []
transformMask: []
maskType: 3
maskSource: {instanceID: 0}
additiveReferencePoseFrame: 0
- serializedVersion: 16
name: Armature|Circle.001Action
takeName: Armature|Circle.001Action
internalID: -3940031873545852154
firstFrame: 0
lastFrame: 0
wrapMode: 0
orientationOffsetY: 0
level: 0
cycleOffset: 0
loop: 0
hasAdditiveReferencePose: 0
loopTime: 0
loopBlend: 0
loopBlendOrientation: 0
loopBlendPositionY: 0
loopBlendPositionXZ: 0
keepOriginalOrientation: 0
keepOriginalPositionY: 1
keepOriginalPositionXZ: 0
heightFromFeet: 0
mirror: 0
bodyMask: 01000000010000000100000001000000010000000100000001000000010000000100000001000000010000000100000001000000
curves: []
events: []
transformMask: []
maskType: 3
maskSource: {instanceID: 0}
additiveReferencePoseFrame: 0
- serializedVersion: 16
name: Armature|Idle
takeName: Armature|Idle
internalID: -8945691123924629249
firstFrame: 0
lastFrame: 99
wrapMode: 0
orientationOffsetY: 0
level: 0
cycleOffset: 0
loop: 0
hasAdditiveReferencePose: 0
loopTime: 0
loopBlend: 0
loopBlendOrientation: 0
loopBlendPositionY: 0
loopBlendPositionXZ: 0
keepOriginalOrientation: 0
keepOriginalPositionY: 1
keepOriginalPositionXZ: 0
heightFromFeet: 0
mirror: 0
bodyMask: 01000000010000000100000001000000010000000100000001000000010000000100000001000000010000000100000001000000
curves: []
events: []
transformMask: []
maskType: 3
maskSource: {instanceID: 0}
additiveReferencePoseFrame: 0
- serializedVersion: 16
name: Armature|Walk
takeName: Armature|Walk
internalID: 8349542763059015795
firstFrame: 0
lastFrame: 99
wrapMode: 0
orientationOffsetY: 0
level: 0
cycleOffset: 0
loop: 0
hasAdditiveReferencePose: 0
loopTime: 1
loopBlend: 0
loopBlendOrientation: 0
loopBlendPositionY: 0
loopBlendPositionXZ: 0
keepOriginalOrientation: 0
keepOriginalPositionY: 1
keepOriginalPositionXZ: 0
heightFromFeet: 0
mirror: 0
bodyMask: 01000000010000000100000001000000010000000100000001000000010000000100000001000000010000000100000001000000
curves: []
events: []
transformMask: []
maskType: 3
maskSource: {instanceID: 0}
additiveReferencePoseFrame: 0
- serializedVersion: 16
name: Circle.001|beren
takeName: Circle.001|beren
internalID: 8364777089518938443
firstFrame: 0
lastFrame: 0
wrapMode: 0
orientationOffsetY: 0
level: 0
cycleOffset: 0
loop: 0
hasAdditiveReferencePose: 0
loopTime: 0
loopBlend: 0
loopBlendOrientation: 0
loopBlendPositionY: 0
loopBlendPositionXZ: 0
keepOriginalOrientation: 0
keepOriginalPositionY: 1
keepOriginalPositionXZ: 0
heightFromFeet: 0
mirror: 0
bodyMask: 01000000010000000100000001000000010000000100000001000000010000000100000001000000010000000100000001000000
curves: []
events: []
transformMask: []
maskType: 3
maskSource: {instanceID: 0}
additiveReferencePoseFrame: 0
- serializedVersion: 16
name: Circle.001|CameraAction
takeName: Circle.001|CameraAction
internalID: -3523305384771567622
firstFrame: 0
lastFrame: 0
wrapMode: 0
orientationOffsetY: 0
level: 0
cycleOffset: 0
loop: 0
hasAdditiveReferencePose: 0
loopTime: 0
loopBlend: 0
loopBlendOrientation: 0
loopBlendPositionY: 0
loopBlendPositionXZ: 0
keepOriginalOrientation: 0
keepOriginalPositionY: 1
keepOriginalPositionXZ: 0
heightFromFeet: 0
mirror: 0
bodyMask: 01000000010000000100000001000000010000000100000001000000010000000100000001000000010000000100000001000000
curves: []
events: []
transformMask: []
maskType: 3
maskSource: {instanceID: 0}
additiveReferencePoseFrame: 0
- serializedVersion: 16
name: Circle.001|Circle.001Action
takeName: Circle.001|Circle.001Action
internalID: 8971653179785726973
firstFrame: 0
lastFrame: 0
wrapMode: 0
orientationOffsetY: 0
level: 0
cycleOffset: 0
loop: 0
hasAdditiveReferencePose: 0
loopTime: 0
loopBlend: 0
loopBlendOrientation: 0
loopBlendPositionY: 0
loopBlendPositionXZ: 0
keepOriginalOrientation: 0
keepOriginalPositionY: 1
keepOriginalPositionXZ: 0
heightFromFeet: 0
mirror: 0
bodyMask: 01000000010000000100000001000000010000000100000001000000010000000100000001000000010000000100000001000000
curves: []
events: []
transformMask: []
maskType: 3
maskSource: {instanceID: 0}
additiveReferencePoseFrame: 0
- serializedVersion: 16
name: Camera|beren
takeName: Camera|beren
internalID: 139079586489973769
firstFrame: 0
lastFrame: 0
wrapMode: 0
orientationOffsetY: 0
level: 0
cycleOffset: 0
loop: 0
hasAdditiveReferencePose: 0
loopTime: 0
loopBlend: 0
loopBlendOrientation: 0
loopBlendPositionY: 0
loopBlendPositionXZ: 0
keepOriginalOrientation: 0
keepOriginalPositionY: 1
keepOriginalPositionXZ: 0
heightFromFeet: 0
mirror: 0
bodyMask: 01000000010000000100000001000000010000000100000001000000010000000100000001000000010000000100000001000000
curves: []
events: []
transformMask: []
maskType: 3
maskSource: {instanceID: 0}
additiveReferencePoseFrame: 0
- serializedVersion: 16
name: Camera|CameraAction
takeName: Camera|CameraAction
internalID: 8440248360967096626
firstFrame: 0
lastFrame: 0
wrapMode: 0
orientationOffsetY: 0
level: 0
cycleOffset: 0
loop: 0
hasAdditiveReferencePose: 0
loopTime: 0
loopBlend: 0
loopBlendOrientation: 0
loopBlendPositionY: 0
loopBlendPositionXZ: 0
keepOriginalOrientation: 0
keepOriginalPositionY: 1
keepOriginalPositionXZ: 0
heightFromFeet: 0
mirror: 0
bodyMask: 01000000010000000100000001000000010000000100000001000000010000000100000001000000010000000100000001000000
curves: []
events: []
transformMask: []
maskType: 3
maskSource: {instanceID: 0}
additiveReferencePoseFrame: 0
- serializedVersion: 16
name: Camera|Circle.001Action
takeName: Camera|Circle.001Action
internalID: -4808961096489221202
firstFrame: 0
lastFrame: 0
wrapMode: 0
orientationOffsetY: 0
level: 0
cycleOffset: 0
loop: 0
hasAdditiveReferencePose: 0
loopTime: 0
loopBlend: 0
loopBlendOrientation: 0
loopBlendPositionY: 0
loopBlendPositionXZ: 0
keepOriginalOrientation: 0
keepOriginalPositionY: 1
keepOriginalPositionXZ: 0
heightFromFeet: 0
mirror: 0
bodyMask: 01000000010000000100000001000000010000000100000001000000010000000100000001000000010000000100000001000000
curves: []
events: []
transformMask: []
maskType: 3
maskSource: {instanceID: 0}
additiveReferencePoseFrame: 0
isReadable: 0
meshes:
lODScreenPercentages: []
globalScale: 1
meshCompression: 0
addColliders: 0
useSRGBMaterialColor: 1
sortHierarchyByName: 1
importPhysicalCameras: 1
importVisibility: 1
importBlendShapes: 1
importCameras: 1
importLights: 1
nodeNameCollisionStrategy: 1
fileIdsGeneration: 2
swapUVChannels: 0
generateSecondaryUV: 0
useFileUnits: 1
keepQuads: 0
weldVertices: 1
bakeAxisConversion: 0
preserveHierarchy: 0
skinWeightsMode: 0
maxBonesPerVertex: 4
minBoneWeight: 0.001
optimizeBones: 1
meshOptimizationFlags: -1
indexFormat: 0
secondaryUVAngleDistortion: 8
secondaryUVAreaDistortion: 15.000001
secondaryUVHardAngle: 88
secondaryUVMarginMethod: 1
secondaryUVMinLightmapResolution: 40
secondaryUVMinObjectScale: 1
secondaryUVPackMargin: 4
useFileScale: 1
strictVertexDataChecks: 0
tangentSpace:
normalSmoothAngle: 60
normalImportMode: 0
tangentImportMode: 3
normalCalculationMode: 4
legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0
blendShapeNormalImportMode: 1
normalSmoothingSource: 0
referencedClips: []
importAnimation: 1
humanDescription:
serializedVersion: 3
human: []
skeleton: []
armTwist: 0.5
foreArmTwist: 0.5
upperLegTwist: 0.5
legTwist: 0.5
armStretch: 0.05
legStretch: 0.05
feetSpacing: 0
globalScale: 1
rootMotionBoneName:
hasTranslationDoF: 0
hasExtraRoot: 0
skeletonHasParents: 1
lastHumanDescriptionAvatarSource: {instanceID: 0}
autoGenerateAvatarMappingIfUnspecified: 1
animationType: 2
humanoidOversampling: 1
avatarSetup: 0
addHumanoidExtraRootOnlyWhenUsingAvatar: 1
importBlendShapeDeformPercent: 1
remapMaterialsIfMaterialImportModeIsNone: 0
additionalBone: 0
userData:
assetBundleName:
assetBundleVariant:

Binary file not shown.

View File

@ -0,0 +1,140 @@
fileFormatVersion: 2
guid: a6232c946ac038d42b48ca134947b246
TextureImporter:
internalIDToNameTable: []
externalObjects: {}
serializedVersion: 13
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
flipGreenChannel: 0
isReadable: 0
streamingMipmaps: 0
streamingMipmapsPriority: 0
vTOnly: 0
ignoreMipmapLimit: 0
grayScaleToAlpha: 0
generateCubemap: 6
cubemapConvolution: 0
seamlessCubemap: 0
textureFormat: 1
maxTextureSize: 2048
textureSettings:
serializedVersion: 2
filterMode: 1
aniso: 1
mipBias: 0
wrapU: 0
wrapV: 0
wrapW: 0
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
flipbookRows: 1
flipbookColumns: 1
maxTextureSizeSet: 0
compressionQualitySet: 0
textureFormatSet: 0
ignorePngGamma: 0
applyGammaDecoding: 0
swizzle: 50462976
cookieLightType: 0
platformSettings:
- serializedVersion: 3
buildTarget: DefaultTexturePlatform
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
ignorePlatformSupport: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
- serializedVersion: 3
buildTarget: Standalone
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
ignorePlatformSupport: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
- serializedVersion: 3
buildTarget: Android
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
ignorePlatformSupport: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
- serializedVersion: 3
buildTarget: Windows Store Apps
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
ignorePlatformSupport: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
spriteSheet:
serializedVersion: 2
sprites: []
outline: []
physicsShape: []
bones: []
spriteID:
internalID: 0
vertices: []
indices:
edges: []
weights: []
secondaryTextures: []
nameFileIdTable: {}
mipmapLimitGroupName:
pSDRemoveMatte: 0
userData:
assetBundleName:
assetBundleVariant:

Binary file not shown.

View File

@ -0,0 +1,107 @@
fileFormatVersion: 2
guid: 15eb5f7b3a3b3e947b3ece8254a9aecf
ModelImporter:
serializedVersion: 22200
internalIDToNameTable: []
externalObjects: {}
materials:
materialImportMode: 2
materialName: 0
materialSearch: 1
materialLocation: 1
animations:
legacyGenerateAnimations: 4
bakeSimulation: 0
resampleCurves: 1
optimizeGameObjects: 0
removeConstantScaleCurves: 0
motionNodeName:
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: 0
meshes:
lODScreenPercentages: []
globalScale: 1
meshCompression: 0
addColliders: 0
useSRGBMaterialColor: 1
sortHierarchyByName: 1
importPhysicalCameras: 1
importVisibility: 1
importBlendShapes: 1
importCameras: 1
importLights: 1
nodeNameCollisionStrategy: 1
fileIdsGeneration: 2
swapUVChannels: 0
generateSecondaryUV: 0
useFileUnits: 1
keepQuads: 0
weldVertices: 1
bakeAxisConversion: 0
preserveHierarchy: 0
skinWeightsMode: 0
maxBonesPerVertex: 4
minBoneWeight: 0.001
optimizeBones: 1
meshOptimizationFlags: -1
indexFormat: 0
secondaryUVAngleDistortion: 8
secondaryUVAreaDistortion: 15.000001
secondaryUVHardAngle: 88
secondaryUVMarginMethod: 1
secondaryUVMinLightmapResolution: 40
secondaryUVMinObjectScale: 1
secondaryUVPackMargin: 4
useFileScale: 1
strictVertexDataChecks: 0
tangentSpace:
normalSmoothAngle: 60
normalImportMode: 0
tangentImportMode: 3
normalCalculationMode: 4
legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0
blendShapeNormalImportMode: 1
normalSmoothingSource: 0
referencedClips: []
importAnimation: 1
humanDescription:
serializedVersion: 3
human: []
skeleton: []
armTwist: 0.5
foreArmTwist: 0.5
upperLegTwist: 0.5
legTwist: 0.5
armStretch: 0.05
legStretch: 0.05
feetSpacing: 0
globalScale: 1
rootMotionBoneName:
hasTranslationDoF: 0
hasExtraRoot: 0
skeletonHasParents: 1
lastHumanDescriptionAvatarSource: {instanceID: 0}
autoGenerateAvatarMappingIfUnspecified: 1
animationType: 2
humanoidOversampling: 1
avatarSetup: 0
addHumanoidExtraRootOnlyWhenUsingAvatar: 1
importBlendShapeDeformPercent: 1
remapMaterialsIfMaterialImportModeIsNone: 0
additionalBone: 0
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,126 @@
Shader "liuyima/SpeedLines"
{
Properties
{
_MainTex ("Texture", 2D) = "white" {}
_FBM ("FBM Texture", 2D) = "white" {}
_Color ("_Color",COLOR) = (1,1,1,1)
_Width("_Width",Range(0,1)) = 0.5
_Length("Length",Range(0,1)) = 0.5
_LengthSpeed("Length speed",Range(0,100)) = 50
_Density("Density",Range(0,1)) = 0.5
}
SubShader
{
CGINCLUDE
#define PI 3.1415926
float SignedAngle(float3 from, float3 to)
{
float angle = acos(dot(normalize(from), normalize(to)));
if (cross(to, from).y < 0)
{
return PI * 2 - angle;
}
return angle;
}
//将uv映射到圆环上
float2 circleUV(float2 uv)
{
float2 nuv;
float3 h = float3(uv.x-0.5, 0, uv.y-0.5);
float3 f = float3(0, 0, 1);
nuv.x = SignedAngle(f, h) / 2 / PI;
nuv.y = length(uv - float2(0.5, 0.5))/0.5;
return nuv;
}
float random1(float x)
{
return frac(sin(x)*10007.024);
}
float random(float2 st) {
return frac(sin(dot(st.xy,
float2(12.9898, 78.233)))*
43758.5453123);
}
ENDCG
//No culling or depth
Cull Off
ZWrite Off
ZTest Always
Pass
{
Blend SrcAlpha OneMinusSrcAlpha
CGPROGRAM
#pragma vertex vert
#pragma fragment frag
#include "UnityCG.cginc"
struct appdata
{
float4 vertex : POSITION;
float2 uv : TEXCOORD0;
};
struct v2f
{
float2 uv : TEXCOORD0;
float4 vertex : SV_POSITION;
};
v2f vert (appdata v)
{
v2f o;
o.vertex = UnityObjectToClipPos(v.vertex);
o.uv = v.uv;
return o;
}
sampler2D _MainTex;
sampler2D _FBM;
float4 _Color;
float _Length;
float _Width;
float _LengthSpeed;
float _Density;
//采样FBM贴图
fixed samFBM(float2 st)
{
float2x2 rot = float2x2(cos(0.5), sin(0.5),
-sin(0.5), cos(0.50));
return tex2D(_FBM,mul(rot, st)).r;
}
fixed4 frag (v2f i) : SV_Target
{
float2 cuv = circleUV(i.uv);
cuv.x *= 80;
fixed index = ceil(cuv.x);
float lineDensity = 1-_Density;
fixed show = smoothstep(lineDensity-0.01,lineDensity+0.01,samFBM(index+ _Time.x*-10));
//x映射到0-1-0
fixed x = abs(cuv.x%1-0.5)*2;
//宽度收缩比例
float shrink =(_Width)* random1(index)+_Width;
//长度减小
float add = -samFBM(cuv.x+_Time.x*_LengthSpeed)-1+_Length;
float a = show*(1- smoothstep(0.01,0.01,x-(cuv.y+add)*shrink));
fixed4 col = _Color;
x = abs(i.uv.x-0.5)*2;
col.a *= a*abs(cuv.y-0.2);
return col;
}
ENDCG
}
}
}

View File

@ -0,0 +1,10 @@
fileFormatVersion: 2
guid: 3dafd9b1d17896a448d50c05e43d1f21
ShaderImporter:
externalObjects: {}
defaultTextures: []
nonModifiableTextures: []
preprocessorOverride: 0
userData:
assetBundleName:
assetBundleVariant:

View File

@ -1,7 +0,0 @@
fileFormatVersion: 2
guid: f9406a33814af9c47b352e77f079d798
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -1,7 +0,0 @@
fileFormatVersion: 2
guid: 9aacf6f3043624194bb6f6fe9a580786
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -101,3 +101,4 @@ Material:
- _EmissionColor: {r: 0, g: 0, b: 0, a: 1}
- _SoftParticleFadeParams: {r: 0, g: 0, b: 0, a: 0}
m_BuildTextureStacks: []
m_AllowLocking: 1

View File

@ -1,7 +0,0 @@
fileFormatVersion: 2
guid: b1d738c46034bc244bd356692577373c
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -1,7 +0,0 @@
fileFormatVersion: 2
guid: 2d6d5d59d45ce8a4784ba6c47984a23e
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -1,7 +0,0 @@
fileFormatVersion: 2
guid: 560a88da2bbc70140bed167f0ba7fe37
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -1,7 +0,0 @@
fileFormatVersion: 2
guid: fb01be13d6e88ca488dda82150319bfc
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -1,7 +0,0 @@
fileFormatVersion: 2
guid: 117dcc671050f5247bd8743b91ecaab7
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -1,7 +0,0 @@
fileFormatVersion: 2
guid: 171c5051d845c4545a6679cdcb9e8290
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -1,7 +0,0 @@
fileFormatVersion: 2
guid: e381f1e638a8aec4dbd9a7be673b56e2
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -16,7 +16,8 @@ MonoBehaviour:
m_SettingsList: []
m_RuntimeSettings: []
m_AssetVersion: 5
m_DefaultVolumeProfile: {fileID: 0}
m_DefaultVolumeProfile: {fileID: 11400000, guid: 81c413490ad4e8e46ababe286c6441e8,
type: 2}
m_RenderingLayerNames:
- Default
m_ValidRenderingLayers: 1

View File

@ -29,7 +29,7 @@ TagManager:
- Ground
- Water
- UI
-
- PostProcessing
-
-
- Player