Unity 내일배움캠프 TIL 0923 | 3D Light | Skybox | Rigidbody Force Mode | Vertical Layout Group

cheeseonrose·2023년 9월 23일
0

Unity 내일배움캠프

목록 보기
43/89
post-thumbnail

24강 플레이어 만들기

Light

  • 2D와의 가장 큰 차이점
  • 특정 위치나 방향을 이용해 오브젝트에 빛을 쏘고 연산할 수 있게 해줌
  • 연산이 비싸기 때문에 적당히 조절해야 함
  • 게임 또는 3D 렌더링에 광원을 추가하는 데 사용됨
  • 유형
    • 점 광원(Point Light) : 특정 지점에서 모든 방향으로 빛을 발산하는 라이트
    • 방향성 라이트(Directional Light) : 특정 방향에서 모든 객체를 비추는 라이트
      거리에 관계 없이 동일한 강도로 모든 객체를 비춤
    • 스포트라이트(Spot Light) : 특정 방향으로 원뿔형의 빛을 발산하는 라이트
    • 영역 라이트(Area Light) : 특정 영역에서 발생하고 그 주변에 빛을 발산하는 라이트 (ex: 실내 조명)
  • 속성
    • 강도(intensity)
    • 색상(color)
    • 범위(range)
    • 각도(angle)
  • 그림자 :라이트와 객체 사이의 관계에 따라 그림자는 라이트가 부딪히는 객체 뒤에 생성됨
  • 성능 : 많은 라이트를 사용하면 특히 동적 그림자가 포함된 경우 렌더링 성능에 부정적 영향을 미칠 수 있음 -> 최적화 중요
  • 빛 반사 및 산란 : 라이트는 표면에 부딪히고 반사되거나 다른 방향으로 산란되어 재질과 표면의 실제성을 나타냄
    이러한 효과는 물리 기반 렌더링(PBR)에서 중요한 요소

스카이박스(Skybox)

  • 게임 세계의 배경을 둘러싸는 환경 매핑 기술
  • 6개의 텍스처로 구성도니 큐브 맵(Cube Map) 또는 하나의 구체로 텍스처가 매핑된 구체형 스카이박스(Sphere Map)로 구성
  • 씬의 배경으로 사용되며, 게임 환경을 확장시키는 데 활용
  • 하늘, 구름, 산 등의 자연적 배경을 표현
  • 스카이박스를 동적으로 변경하여 낮과 밤 등의 시간대나 특정 이벤트에 맞게 배경 변화 가능
  • 성능에 영향을 미치므로 최적화에 주의

Rigidbody - Force Mode

  • 게임 오브젝트에 물리적 힘을 가할 때, ForceMode로 다양한 힘 적용 방식 설정 가능
  • Force : 힘을 지속적으로 적용
  • Acceleration : 가속도 적용. 이전 힘의 누적에 따라 점진적으로 더 빠르게 움직임
  • Impulse : 순간적 힘을 적용. 짧은 시간에 갑작스러운 움직임 발생
  • VelocityChange : 변화하는 속도 적용. 물체의 현재 속도를 변경하며 움직임



25강 플레이어 상태 및 UI

인터페이스

  • 공통적 동작들을 갖는 클래스들이 하나의 인터페이스를 구현함으로써 공통 규약을 준수
  • 추상화 : 인터페이스는 추상적 개념으로, 실제로 구현된 메서드가 없음. 메서드의 시그니처만을 가지므로 인스턴스화 불가능, 구현체가 필요
  • 메서드 시그니처 : 구현 클래스가 반드시 구현해야 하는 메서드들의 시그니처를 정의. 메서드 이름, 매개변수, 반환 타입
  • 다중 상속 가능 : 여러 인터페이스를 상속 가능
  • 강제적 구현 : 클래스는 인터페이스를 상속받을 때, 인터페이스에서 정의한 모든 메서드를 반드시 구현해야 함
  • 인터페이스 간 확장 : 인터페이스는 다른 인터페이스를 확장(extends) 가능

Vertical Layout Group

  • 자식 레이아웃 요소를 수직적으로 쌓을 수 있음

  • 프로퍼티

    • Padding : 레이아웃 그룹 edge의 패딩
    • Spacing : 레이아웃 요소 간의 간격
    • Child Alignment : 사용 가능한 공간을 모두 채우지 않을 경우, 자식 레이아웃 요소에 사용할 Alignment
    • Child Control Size : 레이아웃 그룹이 자식의 너비와 높이를 제어할지 여부
    • Child Force Expand : 추가로 사용할 수 있는 공간을 채우기 위해 자식 레이아웃을 강제로 확장할지 여부



어 난가?

쉬려고 했는데 정신 차려보니 책상에 앉아있는 .. ㅇㅅㅇ
내일의 나를 위해 힘냈다 .. 휴 !

~끗~

0개의 댓글