본문 바로가기

반응형

- GameProgramming

★ 6. 아틀라스 (Atlas) 아틀라스 (Atlas) 텍스쳐(Texture)들을 모아 놓은 커다란 텍스쳐.게임에서는 수많은 텍스쳐를 사용하는데, 이 많은 텍스쳐들을 개별적으로 사용하는 것은성능적으로나 관리적으로나 효율적이지 못합니다.따라서 텍스쳐들을 모아서 하나의 아틀라스로 만들어 사용하기도 합니다.이렇게 아틀라스를 사용하면 아틀라스에 대한 하나의 머터리얼만을 사용할 수 있어드로우 콜(Draw call)을 줄이고, 이는 성능 향상에 큰 도움이 됩니다. 더보기
★ 5. 드로우 콜 (Draw Call) 드로우 콜 (Draw Call) 드로우 콜 (Draw Call)은 Unity 5.x 이후부터 game - state - Batches로 확인이 가능합니다. - 드로우 콜이란? CPU에서 그래픽 API 호출을 통해 GPU에 렌더링을 명령하는 것 유니티가 기본적으로 3D 게임 엔진이기 때문에 씬에 있는 버텍스들을 그리기 위해GPU에 보내는 요청이다. 이런 버텍스들은 데이터를 가지고 있는데 위치, 노멀, UV데이터, 재질 등을 가지고변형과 이동에 대한 계산을 위해 버텍스 버퍼에 추가된다.버텍스 버퍼가 추가되면 그 안에 데이터가 담겨 있게 되고 화면에 그려야 될 때 그 데이터들을 처리하기 위해복사 과정을 거치는데 만약 이런 데이터의 종류가 많아질 수록 드로우 콜이 많아진다고 생각하면 된다. - 드로우 콜을 줄이.. 더보기
★ 4. 유니티 기초 정리 유니티 기초 정리 Time.deltaTime 한 프레임간의 경과 시간을 초 단위로 알려줌. this.transform 해당 컴포넌트가 붙은 게임 오브젝트의 Transform 컴포넌트를 참조 this.transform.position Transform의 월드 위치를 Vector3 형으로 접근하는 프로퍼티 (Get Set 가능) this.transform.localPosition Transform 계층 구조에 의한 다른 Transform의 자식으로 존재할 때 부모의 상대적인 LocalPosition값을 Vector3로 접근하는 프로퍼티 (부모가 없으면 Position) this.transform.forward 자신의 Transform 월드 정면 벡터를 참조함 (대입할 경우 대입되는 벡터로 프론트 방향이 바뀜.. 더보기
★ 3. Rigidbody 속성 [Mass] 오브젝트와의 충돌을 처리하는 방식에 영향을 줍니다.Mass가 높은 오브젝트는 Mass가 낮은 오브젝트보다충돌 했을 때 덜 반응합니다. [Drag] 다른 상호 작업 없이 얼마나 빨리 느려지는가에 영향을 줍니다.공기 저항과 비슷하다고 보시면 됩니다.그리고 직선 속도의 손실률을 결정하는 데 사용됩니다. [Angular Drag] 오브젝트의 각 속도를 느리게 하는 데 영향을 줍니다.얼마나 빨리 회전하는 지를 예로 들수 있겠습니다. [Use Gravity] 오브젝트가 중력의 영향을 받는지 여부를 결정합니다. [Is Kinematic] rigidbody가 물리력에 반응할 지 여부를 결정합니다. [Interpolate] 떨림 현상 해결을 하기 위해 사용합니다.rigidbody를 통해 오브젝트가 이동 할 .. 더보기
★ 2. 키 입력을 활용한 머터리얼 변환 void Update() { if (Input.GetKeyDown(KeyCode.R)) { GetComponent ().material.color = Color.red; } if (Input.GetKeyDown(KeyCode.G)) { GetComponent().material.color = Color.green; } if (Input.GetKeyDown(KeyCode.B)) { GetComponent().material.color = Color.blue; } } 이 업데이트 함수에서는Input.GetKeyDown을 활용하여키 입력을 받아 해당하는 키에 맞는 머터리얼을스크립트를 사용하고 있는 곳에 적용시키는 소스입니다. 즉,'R' 키를 누르면 빨간 색 머터리얼로 변환되고,'G' 키를 누르면 연두 색 머터.. 더보기

반응형