Graphics And Media/OpenGL

OpenGL 3D Object file

kahuz 2021. 7. 18. 15:33

 

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