Post Lists

2018년 6월 24일 일요일

Getting Started - Review (11) 번역

https://learnopengl.com/Getting-started/Review
위의 내용을 번역했습니다.
------------------------------------------------------------------------------

Review
Getting started 섹션의 마지막에 도달한 것을 축하한다. 이제까지 너는 widnow를 만들고 쉐이더를 만들고 컴파일 할 수 있고, buffer object 또는 uniforms을 통해 쉐이더에 vertex data를 보내고, 오브젝트들을 그리고, 텍스쳐를 사용하고 벡터와 행렬을 이해하고, 주위를 돌아다니는 카메라로 full 3D scene을 만들기 위해 모든 지식을 합칠 수 있었다.

휴, 지난 몇 챕터동안 우리는 많은 것을 배웠다. 튜토리얼들을 가지고 놀려고 노력하고, 조금 실험하고 몇몇 문제들에 대해 너 자신만의 아이디어와 솔루션을 만들려고 노력해라. 우리가 이야기한 모든 자료들을 어느정도 이해했다고 느끼자마자, 다음 튜토리얼로 넘어갈 시간이다.

Glossary

  • OpenGL : 각 함수의 layout과 output을 정의하는 그래픽스 API의 공식 specification
  • GLAD : 우리를 위한모든 OpenGL의 함수 포인터를 불러오고 설정하는 확장 loading library. 그래서 우리는 모든 (modern) OpenGL의 함수들을 사용할 수 있다.
  • Viewport : 우리가 렌더링할 윈도우
  • Graphics Pipeline : 너의 스크린에서 한 픽셀로 되기 전에 vertex가 통과해야할 전체 프로세스
  • Shader : 그래픽스 카드에서 작동하는 작은 프로그램. 그래픽스 파이프라인의 몇 가지 단계들은 존재하는 기능을 바꾸기 위해 사용자가 만든 쉐이더들을 사용할 수 있다.
  • Vertex : 하나의 점을 나타내는 데이터의 모음
  • Normalized Device Coordinates : 너의 vertices들이 clipping과 perspective division이 clip 좌표에 대해 수행된 후에 있는 좌표계. NDC에서 -1.0과  1.0사이에 위치한 모든 정점 위치들은 버려지지 않을 것이고 눈에 보이게 될 것이다.
  • Vertex Buffer Object : 그래픽카드가 사용할 메모리를 할당하고 모든 정점 데이터를 저장하는 buffer object
  • Vertex Array Object : buffer와 vertex attribute 상태 정보를 저장
  • Element Buffer Object : 인덱스화된 drawing을 하기위해 인덱스들을 저장하는 buffer object
  • Uniform : GLSL의 전역 변수인 특별한 타입 (한 쉐이더 프로그램에서 각 쉐이더는 이 uniform 변수에 접근할 수 있다.) 그리고 옺익 한 번만 설정되어야만 한다.
  • Texture : 오브젝트 주위에 씌워진 이미지의 특별한 타입. 이것은 객체가 매우 세부적으로 보이는 환영을 준다.
  • Texture Wrapping : 어떻게 OpenGL이 텍스쳐좌표가 (0,1)의 범위를 벗어날 때 텍스쳐를 샘플링 해야하는지를 명시하는 모드를 정의한다.
  • Texture Filtering : 선택해야할 몇가지 texels(texture pixels)이 있을 때 텍스쳐를 OpenGL이 어떻게 샘플링해야하는지를 명시하는 모드를 정의한다. 이것은 보통 텍스쳐가 확대될 때 발생한다.
  • Mipmaps : 한 텍스쳐의 더 작은 버전들을 저장해놓는다. 그리고 보는 사람의 거리에 따라 적절한 사이즈의 버전이 선택된다.
  • stb_image : image loading library
  • Texture Units : 각각 다른 텍스쳐 unit에 여러 텍스쳐를 binding하여 한 오브젝트에 다양한 텍스쳐를 가능하게 하는 것.
  • Vector : 방향 또는 차원에서 위치를 정의하는 수학적 개체
  • Matrix : 수학적 표현의 직사각형 배열
  • GLM : OpenGL을 위해 만들어진 수학 library
  • Local Space : 객체가 시작하는 공간. 모든 객체의 원점과 관련된 좌표
  • World Space : global origin과 관련된 모든 좌표
  • View Space : camera의 관점으로 부터 보여지는 모든 좌표들
  • Clip Space : 카메라의 관점으로 보여지지만 projection(사영)이 적용된 모든 좌표들. 이것은 vertex coordinates가 vertex shader의 output으로서 끝나는 공간이다. OpenGL이 나머지(clipping / perspective division)을 한다.
  • Clipping : NDC에서 좌표 범위를 넘어가는 정점들은 버려진다.
  • Perspective division : 위치 벡터의 x,y 그리고 z 좌표들을 벡터의 동차 w 요소로 나눈다. 4D Clip space 좌표를 3D normalized device coordinates로 바꾸는 것이다. 각 vertex shader의 각각의 끝에서 자동적으로 수행된다.
  • Screen Space : 스크린으로부터 보여지는 모든 좌표들. 좌표들은 0에서 스크린 너비/높이에 이른다.
  • LookAt : 모든 좌표가 사용자가 주어진 위치로부터 주어진 타겟을 바라보도록 회전하고 평행이동되는 좌표계를 만드는 view matrix의 특별한 타입
  • Euler Angles : yaw, pitch roll로 정의된다. 이것은 우리가 이러한 3가지 값으로 부터 3D 방향 벡터를 만들 수 있게 해준다.

댓글 없음:

댓글 쓰기