본문 바로가기

728x90

ComputerScience/Computer Graphics

(27)
CG - 3. Transformation 1. Transformation - vertex p에 m matrix를 곱해서 transformation을 구현한다. - 시간에 따른 transformation이 바로 애니메이션이 된다. 2. Rotation - homogeneous coordinate으로 한차원 높여서 matrix 표현하면 위와 같다. 3. Euler Angle - 이전에는 좌표축을 중심으로 한 회전을 생각했다면 이번에는 임의의 위치에 있는 물체의 축을 중심으로 회전을 시켜보자. - 가장먼저 x축으로 r만큼 회전하고 y축으로 b만큼 회전하고 z축으로 a만큼 회전한다. - xyz말고도 zyz등 가능한 여러가지 조합이 있다. - 이런 현상을 gimbal lock이라고 한다 zxy에서 x축으로 90도를 회전하게 되면 z, y, 축을 기준으로..
CG - 2. 라이브러리 소개 1. OpenGL - computer graphics rendering library - modern openGL은 shader를 통해 programmable한 pipeline을 구현할 수 있다. - data들을 load할 buffer object와 shader programs를 직접 만들어야 한다. - shader program은 gpu에서 돌아가고 application은 cpu에서 돌아간다. - cpu에서 보내는 vertex color등을 gpu에서 받을 수 있도록 연결해줘야 한다. 2. Pipeline - application에서 primitives들을 gpu로 보낸다. - vertex shader를 통해 3차원 공간에서 정의되는 geomety primitive를 잡는다. (vertex의 posit..
CG - 1. 컴퓨터 그래픽스? 1. 컴퓨터 그래픽스 - 컴퓨터로 이미지를 만드는 것 - 물체를 2D 화면에 보이기, 합성, 변환 등을 하는 것. 2. Raster Graphics - 2D 또는 실세계의 3D 물체를 scan conversion/rasterization 하여 2D화면으로 보여주는 방식. - 화면을 array of pixels로 구성하고 각 픽셀들의 값으로 2D, 3D물체가 표현된다. *용어 - frame 전체 그림 - refresh rate(fps, Hz) : 초당 몇개의 frame을 그릴 수 있나? - resolution : 총 표현 가능한 pixel의 수 - aspect ratio : frame 가로 세로 비율 - cpu로부터 받은 데이터를 가지고 gpu가 픽셀 값들을 계산하고 그 pixel 정보들을 frame bu..
OpenGL - 6 Shaders (2) 6.5 More attributes! - 이전 chapter에서 VBO를 채우는 방법과 vertex attribute pointer를 configure해서 VAO에 이 attributes들을 담는 방법을 살펴봤다. - 이번에는 3 floats color data를 vertices array에 더해 주자. - vertices는 각각의 좌표, 색의 대한 정보를 가지고 있는 배열이다. float vertices[] = { // positions // colors 0.5f, -0.5f, 0.0f, 1.0f, 0.0f, 0.0f, // bottom right -0.5f, -0.5f, 0.0f, 0.0f, 1.0f, 0.0f, // bottom left 0.0f, 0.5f, 0.0f, 0.0f, 0.0f, 1.0f..
OpenGL - 6 Shaders (1) * always thanks to https://learnopengl.com/ Learn OpenGL, extensive tutorial resource for learning Modern OpenGL Welcome to OpenGL Welcome to the online book for learning OpenGL! Whether you are trying to learn OpenGL for academic purposes, to pursue a career or simply looking for a hobby, this book will teach you the basics, the intermediate, and all the advanced kn learnopengl.com 6. Shaders -..
OpenGL - 5 Hello Triangle (3) * always thanks to https://learnopengl.com/ Learn OpenGL, extensive tutorial resource for learning Modern OpenGL Welcome to OpenGL Welcome to the online book for learning OpenGL! Whether you are trying to learn OpenGL for academic purposes, to pursue a career or simply looking for a hobby, this book will teach you the basics, the intermediate, and all the advanced kn learnopengl.com 5.6 Element ..
OpenGL - 5 Hello Triangle (2) * always thanks to https://learnopengl.com/ Learn OpenGL, extensive tutorial resource for learning Modern OpenGL Welcome to OpenGL Welcome to the online book for learning OpenGL! Whether you are trying to learn OpenGL for academic purposes, to pursue a career or simply looking for a hobby, this book will teach you the basics, the intermediate, and all the advanced kn learnopengl.com 5.4 Fragment..
OpenGL - 5 Hello Triangle (1) * always thanks to https://learnopengl.com/ Learn OpenGL, extensive tutorial resource for learning Modern OpenGL Welcome to OpenGL Welcome to the online book for learning OpenGL! Whether you are trying to learn OpenGL for academic purposes, to pursue a career or simply looking for a hobby, this book will teach you the basics, the intermediate, and all the advanced kn learnopengl.com 5. Hello Tri..

728x90