[Unity3D] 일정 범위내의 존재하는 Collider 객체를 추출.



1
Collider[] colls = Physics.OverlapSphere(transform.position, 10.0f);
cs


Physics.OverlapSphere(); 함수는 특정 위치의 반경내의 있는 객체의 Collider를 반환해주는 함수이다.


인자는 2가지가 있는데,

 

첫 번째 인자는 위치를 나타내고.

두 번째 인자는 위치를 기준으로 범위를 나타낸다.

[Unity3D] 비균등스케일 (non-uniform scale)


실제 게임 개발 시 외부에서 불러들인 모든 3D모델의 스케일은 반드시 FBX importer의 Scale Factor 속성으로 맞춰야 한다.

만약 Transform Scale 속성을 직접 수정하게 되면 매 프레임 마다 수정된 스케일에 맞게 복사복을 생성하는 작업을

내부적으로 수행하기 때문에 CPU 연산이 많아져 속도 저하의 원인이 된다.



[Unity3D] 셰이더 및 물리 기반 셰이딩

셰이더는 머테리얼에 적용한 텍스처를 렌더링할 때 표면의 재질감을 표현하는 방식을 결정한다.

셰이더 프로그래밍은 DirectX, OpenGL에 따라 서로 다른 언어로 구현되고, 3D그래픽스의 이론적인 배경을 많이 알아야 할 정도로 깊의 있는 지식을 요구하는 분야이기도 하다.


유니티는 셰이더 프로그래밍 지식이나 경험이 없더라도 손쉽게 사용할 수 있게 내장 셰이더(Built in Shader)를 제공한다.


유니티 5에서 처음 선보인 물리 기반 셰이딩(PBS, Physically-Based-Shading)은 물체가 갖고 있는 고유의 특성에 맞게 재질을 표현하는 것으로 현실세계에 존재하는 돌, 나무, 유리, 플라스틱, 금속 등과 같은 재질감을 하나의 셰이더에서 표현할 수 있도록 설계돼 있다.


유니티 5의 기본 셰이더인 Standard 셰이더는 물리 기반 셰이딩을 위해 다양한 옵션을 제공한다.


1. 렌더링 모드 (Rendering Mode)

2. 알베도 (Albedo)

3. 메탈릭 속성 (Metallic)

4. 노멀 맵 (Normal Map)

5. 하이트 맵 (Height Map)

6. 오클루전 (Occlusion)

7. 이미션 (Emission)

8. 디테일 마스크 (Detail Mask)



1. 렌더링 모드


렌더링 모드는

- 불투명 (Opaque)

- 그물망 표현 (Cutout)

- 홀로그램 효과 (Fade)

- 투명 (Transparent)

의 네가지 설정을 통해 다양한 재질감을 표현할 수 있다.


불투명 (Opaque)

 기본값으로 불투명한 텍스처를 표현하는 옵션이다. 투명한 부분이 전혀없는 Solid객체에 적합.

 그물망 표현 (Cutout)

 불 투명한 부분과 투명한 부분을 동시에 표현하는 옵션. 주로 풀, 그물망 등을 표현.

 투명 (Transparent)

 투명한 플라스틱 또는 유리와 같은 재질을 표현하는 옵션.

 홀로그램 효과 (Fade)

 투명 속성값을 갖고 있는 객체를 페이드 아웃 시키는 옵션.
 페이드 인/아웃을 애니메이션 처리할 수 있다.

 불 투명한 객체를 부분적으로 페이드 아웃시킬 수 있어 홀로그램 효과를 구현할 수 있다. 



2. 알베도


알베도는 빛을 반사하는 정도를 말하며, 반사율이라고도 한다.

유니티 5에 도입된 물리 기반 셰이딩을 구현하기 위해 추가된 텍스처다.

즉, 현실세계에 있는 모든 물체는 각각 다른 빛 반사율을 갖고 있는 것에서 비롯됐다.




3. 메탈릭 속성


메탈릭은 객체 표면에 금속의 재질을 표현하기 위한 텍스처이다.

이 텍스처 슬롯 옆에 있는 슬라이드 값이 1에 가까워 질수록 금속 재질에 가까워 지는 특성이 있다.




4. 노멀 맵


노멀 맵은 표면의 굴곡을 표현하기 위한 텍스처의 일종으로 3D 모델링으로 많은 폴리곤을 소모하지 않고 같은 효과를 낼 수 있다. 노멀 맵 텍스처 슬롯 오른쪽에 있는 속성 값이 커질 수록 거친 음영효과를 낸다.




5. 하이트 맵

하이트 맵은 텍스처로 높 낮이를 표현하는 것으로 보통 지형(Terraun)을 표시할 때 사용된다.

텍스처가 연결되면 슬라이드가 표시되고 돌출되는 높이를 설정할 수 있다.




6. 오클루전

오클루전은 흑백의 텍스처로 간접조명에 의해 생기는 명암을 더욱 뚜렷히 표시해 사물의 입체감과 깊이감을 살리는데 사용한다.

오클루전 맵에 사용될 텍스처는 일반적으로 3D 모델링 툴 또는 서드 파티 툴에서 추출한다.



7. 이미션

이미션은 스스로 빛을 방출하는 속성을 말한다.

속성값을 변경하면 객체의 표면에서 방출되는 빛의 강도와 빛의 색상을 설정할 수 있는 항목이 나타난다.

또한 하단에 저녁조명에 반영하기 위한 옵션이 나타난다.




8. 디테일 마스크

디테일 마스크는 Secondary Maps에 적용할 마스크를 설정하는 텍스처 슬롯이다.

특정 부분만 좀 더 세부적인 텍스처를 표현할 때 사용된다.



prev 1 ··· 5 6 7 8 9 10 11 ··· 29 next