chore: 외부 에셋 권한 및 줄바꿈 재기록 반영
- Assets/External 하위 샘플 및 서드파티 에셋 파일의 실행 비트 변경을 별도 커밋으로 분리 - PolygonGeneric, SidekickCharacters, Synty 도구 자산 전반의 줄바꿈 및 재직렬화 차이를 그대로 보존 - 프로젝트 고유 로직 변경과 분리해 이후 히스토리에서 외부 에셋 노이즈 범위를 식별하기 쉽게 정리
This commit is contained in:
88
Assets/External/Models/PolygonGeneric/Scripts/Generic_WaterBob.cs
vendored
Normal file → Executable file
88
Assets/External/Models/PolygonGeneric/Scripts/Generic_WaterBob.cs
vendored
Normal file → Executable file
@@ -1,44 +1,44 @@
|
||||
using System;
|
||||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using UnityEngine;
|
||||
|
||||
public class Generic_WaterBob : MonoBehaviour
|
||||
{
|
||||
public float bobbingHeight = 0.08f; // The height the object will bob up and down
|
||||
public float bobbingSpeed = 1.5f; // The speed of the bobbing motion
|
||||
public float rotationAmount = 0.8f; // The amount of rotation applied to the object
|
||||
public bool randomOffset = true; // Determines if random offsets are applied to speed and rotation
|
||||
public Vector2 randomRange = new Vector2(0.1f, 1f); // The range for the random offset
|
||||
private Vector3 startPos;
|
||||
private Quaternion startRotation;
|
||||
|
||||
void Start()
|
||||
{
|
||||
startPos = transform.position;
|
||||
startRotation = transform.rotation; // Save the initial rotation
|
||||
|
||||
if (randomOffset)
|
||||
{
|
||||
bobbingSpeed += UnityEngine.Random.Range(randomRange.x, randomRange.y);
|
||||
rotationAmount += UnityEngine.Random.Range(randomRange.x, randomRange.y);
|
||||
}
|
||||
}
|
||||
|
||||
void Update()
|
||||
{
|
||||
// Calculate the vertical bobbing motion
|
||||
float newY = startPos.y + Mathf.Sin(Time.time * bobbingSpeed) * bobbingHeight;
|
||||
Vector3 newPos = new Vector3(transform.position.x, newY, transform.position.z);
|
||||
transform.position = newPos;
|
||||
|
||||
// Calculate rotation offsets based on time
|
||||
float rotationX = Mathf.Sin(Time.time * bobbingSpeed * 0.5f) * rotationAmount;
|
||||
float rotationY = Mathf.Sin(Time.time * bobbingSpeed * 0.7f) * rotationAmount;
|
||||
float rotationZ = Mathf.Sin(Time.time * bobbingSpeed * 0.9f) * rotationAmount;
|
||||
|
||||
// Apply the incremental rotation as an offset to the existing rotation
|
||||
Quaternion incrementalRotation = Quaternion.Euler(rotationX, rotationY, rotationZ);
|
||||
transform.rotation = startRotation * incrementalRotation;
|
||||
}
|
||||
}
|
||||
using System;
|
||||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using UnityEngine;
|
||||
|
||||
public class Generic_WaterBob : MonoBehaviour
|
||||
{
|
||||
public float bobbingHeight = 0.08f; // The height the object will bob up and down
|
||||
public float bobbingSpeed = 1.5f; // The speed of the bobbing motion
|
||||
public float rotationAmount = 0.8f; // The amount of rotation applied to the object
|
||||
public bool randomOffset = true; // Determines if random offsets are applied to speed and rotation
|
||||
public Vector2 randomRange = new Vector2(0.1f, 1f); // The range for the random offset
|
||||
private Vector3 startPos;
|
||||
private Quaternion startRotation;
|
||||
|
||||
void Start()
|
||||
{
|
||||
startPos = transform.position;
|
||||
startRotation = transform.rotation; // Save the initial rotation
|
||||
|
||||
if (randomOffset)
|
||||
{
|
||||
bobbingSpeed += UnityEngine.Random.Range(randomRange.x, randomRange.y);
|
||||
rotationAmount += UnityEngine.Random.Range(randomRange.x, randomRange.y);
|
||||
}
|
||||
}
|
||||
|
||||
void Update()
|
||||
{
|
||||
// Calculate the vertical bobbing motion
|
||||
float newY = startPos.y + Mathf.Sin(Time.time * bobbingSpeed) * bobbingHeight;
|
||||
Vector3 newPos = new Vector3(transform.position.x, newY, transform.position.z);
|
||||
transform.position = newPos;
|
||||
|
||||
// Calculate rotation offsets based on time
|
||||
float rotationX = Mathf.Sin(Time.time * bobbingSpeed * 0.5f) * rotationAmount;
|
||||
float rotationY = Mathf.Sin(Time.time * bobbingSpeed * 0.7f) * rotationAmount;
|
||||
float rotationZ = Mathf.Sin(Time.time * bobbingSpeed * 0.9f) * rotationAmount;
|
||||
|
||||
// Apply the incremental rotation as an offset to the existing rotation
|
||||
Quaternion incrementalRotation = Quaternion.Euler(rotationX, rotationY, rotationZ);
|
||||
transform.rotation = startRotation * incrementalRotation;
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user