OpenGL 3D Object file
.obj 파일은 3D 지오메트리만 나타내는 데이터 파일입니다.
각 정점의 위치와 텍스트 uv 좌표 위치, 정점 법선 및 다각형을 이루는 면의 정점 목록으로 구성되어 있습니다.
데이터 형식
.obj 파일은 해시(#), v, vt, vn, f 등 아래와 같은 키워드가 존재합니다.
Vertex Data
- v : 정점 좌표 데이터. x,y,z,w 로 구성되며, w는 생략 시 1.0이 기본으로 설정된다
- [ v 0.10 0.10 0.10 1.0 ]
- vt : 텍스처 좌표 데이터. u,v w로 구성되며, v와 w는 생략 시 0이 기본으로 설정된다
- [ vt 0.1 0.1 0 ]
- vn : vertex normals data. x,y,z로 구성되며 단위 벡터가 아닐 수 있습니다.
- [ vn 0.1 0.1 0.1 ]
Vertex Elements
- p : 점을 표현할 정점 요소
- [ p 1] , 1은 v 데이터들 중 첫번째 인덱스의 v 값을 의미
- l : 선분을 표현할 정점 요소
- [ l 1 2 3 .... vn ]
- f : 다각형을 표현할 정점 요소로 정점과 텍스처, 법선 정보를 포함할 수 있다.
- [ f 1/1/1 1/2/1 .... vn/tn/nn ]
- 1/2/3 으로 구성될 때 1은 정점, 2는 텍스처, 3은 법선을 의미한다.
Object Materials
- mtllib : 표면 렌더링을 위해 참고되는 파일 명을 명시
- [ mtllib texture.mtl ]
- usemtl : 3D object에 적용할 텍스처를 명시. .mtl 파일에 선언된 이름을 받아 호출한다.
- [ usemtl MyTexture ] MyTexture는 texture.mtl 에 명시되어있어야한다.
Naming
- o : 객체 이름
- [ o object_name ]
- g : 그룹 이름
- [ g gruop_name ]
Other
- s : Smooth shading on/off
- [ s 1/off ]
'Graphics And Media > OpenGL' 카테고리의 다른 글
렌더링 파이프라인의 좌표 공간과 좌표 변환 (0) | 2021.08.12 |
---|---|
Projection by W (0) | 2021.07.03 |
Getting started OpenGL ES with EGL (0) | 2021.05.10 |