- 랜더링 파이프라인
- 빌트인 렌더 파이프라인
- 유니버셜 렌더 파이프라인
- 각 파이프라인의 에셋들은 호환이 안된다.
- 서로 변환이 가능한 에셋인지 확인이 꼭 필요하다.
유니티 실행 파일 빌드 방법
- File - Build Profiles - Build 버튼 클릭
- 빌드하는 플랫폼을 변경할 수 있다.
Plane 아랫면이 안보이는 이유
- vertex 삼각형과 카메라가 비추는 면을 계산해서 비추지 않는곳을 렌더링하지 않는 것이다.
카메라
- 카메라의 사다리꼴 기즈모 : 절두체 라고 부른다.
- 카메라의 절두체 안에 들어온 오브젝트만 화면에 렌더링 된다.
- 카메라 여백이 어떻게 나오는지 설정할 수 있다.
부모 오브젝트에 포함 시킨 자식 오브젝트
- 자식 오브젝트는 부모 오브젝트의 transform을 기준으로 자신의 로컬 transform이 인스펙터창에 보이는 것이다.
닷지
메테리얼 생성 및 적용
- Project 창 - 우클릭 후 Material 에셋 생성
- Base Map 변경
- 메테리얼 에셋 변경 방법은 2가지다.
- 오브젝트에 드래그 앤 드롭
- Mesh Renderer의 Material 클릭 후 목록에서 원하는 메테리얼 선택
오브젝트의 컴포넌트를 참조하는 방법
- Public으로 인스펙터에서 참조
- 컴포넌트 참조 함수 호출
- GetComponent<T> : T에 해당하는 컴포넌트가 오브젝트에 있다면 참조를 반환한다.
private Rigidbody body;
private void Awake()
{
body = GetComponent<Rigidbody>();
}
public 멤버를 인스펙터에서 초기화
- 초기화 순서 : 스크립트 초기화 → 인스펙터 초기화 순서로 진행된다.
- 결과 : 인스펙터 초기화로 덮어씌워지기때문에 주의해야한다.
함수
- GetAxis(축 이름) : 입력받은 축으로 -1 ~ +1을 반환한다.
충돌 종류
프리펩
- 현재 : 게임 오브젝트에 필요한 컴포넌트를 추가
- 필요 : 같은 기능의 게임오브젝트가 여러개 필요
- 결론 : 필요한 기능의 컴포넌트가 붙은 게임 오브젝트를 복사해서 사용한다.
- 사용 이유 : 복사한 객체는 고유한 객체이기에 속성을 바꾸면 해당 속성만 바뀌게 된다.
- 프리펩은 공통된 객체이기에 프리펩 원본 객체를 바꾸면 모든 객체가 바뀌게 된다.
- 하지만, Hierarchy에 올라간 오브젝트는 고유한 속성이기에 고유한 오브젝트를 바꿔도 다른 오브젝트는 바뀌지 않게된다.
- 바꾼 속성을 원본에 합치고 싶다면?
- 인스펙터 좌측 상단 Overrides 목록 클릭
- Revert All : 고유 객체 바꾼 속성 원래대로 되돌리기
- Apply All : 프리펩 원본 객체를 현재 속성으로 덮어쓰기
FixedUpdate
- 물리 업데이트 주기는 기존 업데이트와 별개로 동작한다.
오브젝트 검사
- 오브젝트 이름 검사 - 비추천
- 오브젝트 태그 검사 - 추천
- 주의점 : 자식 오브젝트가 있다면 자식오브젝트 태그도 검사할 수 있다.
//if(other.gameObject.name == "Player")
//if(other.gameObject.tag == "Player")
other.CompareTag("Player")
- 추천 이유 : 이름 복잡도는 O(N) 시간 복잡도이기에 비효율적이다.
함수들
- GameObject.Find(오브젝트 이름) : 지금 열려있는 씬에 활성화 되어있는 오브젝트 중 같은 이름의 오브젝트를 반환하는 함수 - 비추천
- O(N^2) 복잡도를 가지기에 매우 비효율적이다.
- GameObject.FindWithTag(태그 이름) : 지금 열려있는 씬에 활성화 되어있는 오브젝트 중 같은 태그의 오브젝트를 반환하는 함수
- O(N) 복잡도를 가지기에 위에거보다 이것을 쓴다.
- FindObjectOfType<클래스>() : 지금 열려있는 씬의 모든 오브젝트를 순회하며 해당 클래스를 가진 오브젝트를 반환하는 함수 - 비추천
'공부 > Unity' 카테고리의 다른 글
| 벡터 기본, 벡터 내적, 벡터 외적, 쿼터니언, 짐벌락, Sprite, Animator, Animation, Animation Clip (6) |
2025.08.19 |
| 플레이어 추적 후 발사, 게임판 회전, UI 추가, 플레이어 사망 후 정지, PlayerPrefs (1) |
2025.08.18 |
| 씬, 게임 오브젝트, 인스펙터, 컴포넌트, 좌표계, 원근 투영, 직교 투영, 컴포넌트 패턴, 이벤트 함수 실행 순서 (2) |
2025.08.18 |
| 25.05.28 - 게임 직무 설명, 공부해야하는 것들, 개발 환경 준비, 비주얼 스튜디오 기타 설명 (1) |
2025.05.28 |
| 24.06.14 (0) |
2024.06.14 |