본문 바로가기
반응형

유니티 공부/Unity100

Unity - 아이템 획득 효과(아이템이 위로 올라가면서 서서히 사라지게 하기) 넣는 법 1. 초기 설정 01 변수 설정 [Header("Item")] public GameObject item; // 화면에 표시될 item image public float itemEffectDuration = 1f; // item image가 사라지는 데 걸리는 시간 public float itemEffectDistance = 5f; // item image가 위로 이동하는는 거리 private float itemEffectTimer = 0.0f; // item image 효과의 경과 시간 private bool isCollectingItem = false; // item을 획득 중인지 여부 02 초기 UI비활성화 private void Start() { item.SetActive(false); } 2. 위.. 2023. 9. 19.
Unity - Mouse입력 Action으로 처리해보기 Mouse 이벤트 처리하기 01 Define.cs에 MouseEvent 입력하기 public enum MouseEvent { Press, Click, } 02 변수 설정 public Action MouseAction = null; // 마우스 입력 bool _pressed = false; // 상태를 저장 03 OnUpdate 메서드 설정 1) Define.MouseEvent.Press 마우스가 클릭된 경우 Define.MouseEvent.Press을 인수로 넘겨 액션에 등록된 함수들 실행 if(Input.GetMouseButton(0)) { MouseAction.Invoke(Define.MouseEvent.Press); _pressed = true; } 2) Define.MouseEvent.Click .. 2023. 9. 15.
Unity - Mathf.Clamp Mathf.Clamp public static float Clamp(float value, float min, float max); 매개변수 value : 제한하려는 값 min : 허용 가능한 최소값 max : 허용 가능한 최대값 반환 만약 value가 min보다 작다면 min값으로 max보다 크다면 max값으로 min과 max사이에 있다면 그대로 반환된다. 그림 참조 코드 예시 float originalValue = 15.0f; float minValue = 5.0f; float maxValue = 10.0f; float clampedValue = Mathf.Clamp(originalValue, minValue, maxValue); 결과 2023. 9. 15.
Unity - 플레이어 따라가던 카메라가 벽에 막히면 벽 뚫기 플레이어가 따라가던 카메라가 벽에 막히면 벽 뚫기 1. Define 설정하기 Define.cs public enum CameraMode { QuaterView, } 2. 변수 설정 CameraContorller.cs [SerializeField] Define.CameraMode _mode = Define.CameraMode.QuaterView; [SerializeField] Vector3 _delta = new Vector3(0.0f, 6.0f, -5.0f); [SerializeField] GameObject _player = null; _mode = Define의 CameraMode 상태를 선택 -> 디폴트 값을 QuaterView로 설정 _delta = 카메라의 위치를 플레이어 위치에서 얼마나 떨어져.. 2023. 9. 15.
Unity - Physics.OverlapBox 설명(플레이어 바닥 체크에 이용해보기) OverlapBox 주어진 박스 모양의 영역에서 layerMask에 따라 충돌체를 검출하는 역할을 한다. 해당 박스 내에 충돌체가 존재하면 해당 충돌체의 Collider2D를 반환하고 그렇지 않으면 null을 반환한다. public static Collider2D OverlapBox(Vector2 point, Vector2 size, float angle, int layerMask); 매개변수 point : 박스의 중심 위치 size : 박스의 크기 angle : 회전 각도 0인 경우 회전하지 않는 것이고 양수 값은 시계 방향으로 회전함을 나타낸다. layerMask : 충돌체를 검출할 layerMask이다. 이를 통해 특정 레이어에 속하는 충돌체만 검출할 수 있다. 코드 예시 isGrounded = P.. 2023. 9. 9.
Unity - Bounds 속성 2D기준 설명 Bounds 주로 객체의 경계 영역을 나타내는데 사용된다. Bounds bounds = collider2D.bounds; 01 center Bounds의 중심 위치는 collider2d의 중심 위치이다. Debug.Log($"Center: + {bounds.center.x} , {bounds.center.y}, {bounds.center.z}"); 02 extents collider2D의 크기 절반(extents)이다. Debug.Log($"Extents: + {bounds.extents.x} , {bounds.extents.y}, {bounds.extents.z}"); 03 min & max bounding box의 최소지점 꼭짓점과 최대지점 꼭짓점이다. Debug.Log($"Min: + {bounds.. 2023. 9. 9.
반응형