2022. 11. 5. 23:59ㆍ🪴Etc/💭 C# and Unity
https://github.com/KMGeon/GameEngine/tree/main/Airplane
GitHub - KMGeon/GameEngine: C# Unity를 이용한 게임엔진 만들기
C# Unity를 이용한 게임엔진 만들기:herb:. Contribute to KMGeon/GameEngine development by creating an account on GitHub.
github.com
- Scene
GameObject를 배치하는 곳
기본값 : 카메라 + 빛 + 객체를 포함
- GameObject(GO)
물체 , 배경 , 캐릭터 , 빛 , 소리 등
Go는 혼자서는 아무것도 할 수 없음 ->**컴포넌트**를 추가해야 기능이 생김
- 컴포넌트란?
일단 기본적인 컴포넌트는 Tranform을 가짐
=> Go에 부착되는 클래스를 의미한다.
거의 모든 클래스는 MonoBehaviour 클래스를 상속(상속은 : )
<h3>3D 렌더링 용어 정리</h3>
- Mesh : 물체 모양을 3D로 표현하기 위한 삼각형들로 구성된 것
- Normal :평면에 수직인 벡터,삼각형이 어느 방향으로 보는지 계산하기 위한 수단
빛이 얼마나 반사될지를 결정함
- Texture : 이미지 파일
- UV Map : 2D이미지를 3D모델에 그리기 위한 매핑 테이블
그리고 uv라고 하는 이유는 x,y,z는 사용하고 있어서 uv라고 함
- Material
텍스쳐가 없을 경우 물체의 색깔 및 반사를 결정
텍스펴가 있을 경우 texture가 빛에 어떻게 보여질지 결정
renderer가 mesh를 어떻게 그릴지 결정하는데 사용됨
- mesh render
- mesh를 받아 transfrom에 명시된 곳에 그려줌
box collider : 충돌을 일어나게 함
유니티 : 좌표계 :coordinate system
gizmo
persp : 원근감
iso : 원근감 없이 2d게임 개발시 주로 사용
두개의 차이점
prefab이란 재사용 가능한 asset화 한 것
asset화란 : 파일로 저장했다. 일종의 template역활
prefab을 수정하면 복사된 go도 같이 수정
trasform은 position , relation은 제외
모든 prefab의 객체가 같을 필요는 없음
-일부만 수정가능 (오버라이드)
-씬 시작때 존재하지 않으나 스크립트에서 동적으로 객체를 만들어야 할 경우에 prefab사용 이때 instantiate()사용
ex)나무 , 적군 , 미사일 , 플레이어
'🪴Etc > 💭 C# and Unity' 카테고리의 다른 글
타워 디펜스(Tower Defence) (0) | 2022.11.09 |
---|---|
로켓 날리기 (0) | 2022.11.05 |
첫 unity 간단한 게임 만들기 (0) | 2022.11.05 |
Unity 시간 지연 주는 방법 (0) | 2022.11.05 |