(나머지 내용 보충 후 정리 예정)
Directional Light : Light 컴포넌트가 들어있음. 빛을 쏴주고 계산하는 것
Light 자체가 연산 자체가 비싸기 때문에 적절한 장소에서만 사용하자
폴더 Materials 생성 -> Material(오브젝트의 재질) 생성
Skybox 라고 명명, 구체 아니면 큐브 형태로 주로 사용함
Shader Standard -> Skybox/Procedual
이걸 적용하려면...
우측 하단 Auto Lighting 버튼
Environment -> Skybox Material -> Skybox 적용
Empty -> Player -> CameraContainer(플레이어의 눈 역할)
MainCamera를 CameraContainer의 자식으로 세팅, 그리고 Transform Reset
Player -> Capsule Collider, Rigidbody, PlayerController.cs -> Tag, Layer 모두 Player로 변경
Scripts -> Player -> PlayerController.cs 생성
Window -> Package Manager -> Input System
Input Actions -> 'Player Controls' Input Action 생성
Schema 없이 Player -> New action -> Vector2, wasd 방향 설정
Attack(Button) -> Left Button ...
Look(Value) -> Mouse delta(마우스가 움직인 만큼의 값)
Player Input -> Player에 넣기, Behavior 'Invoke Unity Events' (Unity에서 사용하겠다)
[HideInInspector] = Public인데 Inspector에서 가림
Start()에 Cursor.lockState = CursorLockMode.Locked; 커서 잠그겠다
FixedUpdate 물리적인 작업
LateUpdate 주로 카메라 작업
마우스 감도 설정
void CameraLook()
{
camCurXRot =+ mouseDelta.y * lookSensitivity;
camCurXRot = Mathf.Clamp(camCurXRot, minXLook, maxXLook);
cameraContainer.localEulerAngles = new Vector3(-camCurXRot, 0, 0);
tran ...
}
InputActionPhase의 기능
started = 눌렀을 때
performed = 누르고 있을 때
cancled = 뗐을 때
Impulse 질량을 가지고서 함
Ray 레이저 쏴서 충돌 체크
OnDrawGizmos Gizmos 그리기, Gizmos.DrawRay로 레이 그리기
'TIL(Today I Learned)' 카테고리의 다른 글
[Unity] TextMeshPro 사용하기 등 - TIL#32 (0) | 2024.02.06 |
---|---|
크기가 작은 부분문자열 - TIL#31 (0) | 2024.02.05 |
C# 메모리의 작동 방식(구조체와 클래스의 차이) - TIL#29 (0) | 2024.02.01 |
Unity 팀 프로젝트(2) : 발표와 회고 - TIL#28 (4) | 2024.01.31 |
Unity 팀 프로젝트 : 버그 찾고 마무리하기 - TIL#27 (0) | 2024.01.30 |