[내일배움캠프 Unity 9기]

05/16 TIL - 유니티 프로젝트 숙련 강의 수강

kyvv 2025. 5. 16. 21:09

RayCast

✅ 기본 개념

Raycast = 한 점에서 특정 방향으로 레이를 쏘아 충돌체(Collider)를 감지하는 함수

 

  • origin: 시작 위치 (Vector3)
  • direction: 쏘는 방향 (Vector3)
  • out hitInfo: 충돌된 정보를 받을 변수 (RaycastHit)
  • maxDistance: 최대 거리

🎯 사용 예시

상황사용 형태
총 쏘기 (즉발 무기) 총구에서 Raycast → 적 충돌 체크
시야 판별 플레이어 → 적 방향으로 Raycast
마우스 클릭 오브젝트 감지 ScreenPointToRay로 마우스 위치 체크
발 밑 지면 체크 플레이어 위치 아래로 Raycast
라인 상호작용 물체 사이에 장애물 있는지 확인 등
 

⚠️ 주의할 점

  • Ray가 Collider가 있는 오브젝트만 감지함 (MeshRenderer만 있으면 안 됨)
  • Physics.RaycastAll로 여러 충돌 감지 가능
  • 2D용은 Physics2D.Raycast 따로 있음

 


스카이 박스(SkyBox)

https://docs.unity3d.com/kr/2018.4/Manual/class-Skybox.html(Unity 공식 문서)

✅ 핵심 요약

  • 🌌 하늘처럼 보이는 배경을 만드는 기술
  • 6개의 텍스처(큐브맵) 또는 단일 HDR 이미지 사용
  • 🎮 게임플레이에는 영향을 주지 않음 — 순수히 시각적 요소
  • 🧱 카메라 주변에 자동으로 렌더링됨 (움직여도 고정된 느낌)

🌠 스카이박스 종류

타입설명
6-Sided 위, 아래, 앞, 뒤, 좌, 우 텍스처 각각 지정
Cubemap 하나의 큐브맵 텍스처 사용
Procedural 낮/밤 등 설정 가능한 동적 스카이박스 (주로 옛 Unity)
HDRI (URP/HDRP) 물리 기반 조명 연동 가능한 이미지 기반 조명 사용
 

⚠️ 주의사항

  • 스카이박스는 성능 부담이 거의 없음 (카메라가 렌더링 시 자동 처리)
  • 실제 월드에 있는 것이 아니므로 충돌, 조명, 그림자에는 영향 없음
  • 씬 분위기(예: 밤/낮)에 따라 조명 설정(Lighting 설정) 도 같이 맞추는 것이 중요