Game !

OpenGL · DX (5)

  1. 2018.02.23 [펌] D3DXVec3TransformNormal 과 D3DXVec3TransformCoord 차이

    D3DXVec3TransformNormal 과 D3DXVec3TransformCoord 의 차이에 대해서 간단히 말씀드리도록 하겠습니다. 단순하게 말하자면 D3DXVec3TransformNormal 은 벡터를 변환하는 것이고 D3DXVec3TransformCoord 는 위치를 변환하는 것입니다. 벡터와 행렬을 곱하기 위해서는 행과 열이 같은 차수여야 한다는 것을 알고 계실 것입니다. 예를 들어서 [x, y, z] 라는 3차원 벡터가 존재하는데 D3D 에서는 4x4 행렬을 곱하게 됩니다. 이러한 벡터를 행렬과 연산을 할 때는 차수를 맞춰줘야지 곱할 수 있게 됩니다. 즉 3차 벡터를 마치 1x4 행렬 혹은 4x1 행렬인 것처럼 만들어 주어야 4x4 행렬과 곱하는 것이 가능하다는 것이죠. D3DXVec3Tra..

  2. 2016.03.16 [DirectX] memory pool에서의 D3DPOOL_DEFAULT와 D3DPOOL_MANAGED

    cf. Memory Pool: DirectX의 자원(ex.serface)들은 여러 가지 종류의 메모리 풀에 저장할 수 있으며, 메모리 풀은 열거형 멤버로 지정된다. 메모리 종류 정리1. 시스템 메모리(system memory) : CPU RAM 메모리2. 비디오 메모리(video memory) : 그래픽카드 RAM 메모리그래픽카드도 하드웨어에 속한다. 그래픽카드의 핵심 칩이 GPU.GPU는 그래픽 연산을 처리하는 목적으로 만들어진 것이기때문에(특히 부동소수형의) 백터/행렬 등 선형연산류의 수치연산에 특화되어 빠르다. 그러나 조건문 등의 제어처리가 많거나, 메모리/하드웨어 엑세스 등의 기능에서는 CPU가 실질적으로 더 뛰어난 성능을 보인다. 3. AGP aperture 메모리 : 물리적으로는 시스템 메모리..

  3. 2015.11.26 [OpenGL] 기본 도형 그리기

    오픈지엘로 여러개 도형을 그리는 방법을 알아보자 ///////////////////////////////////기본////////////////////////////////// ★ 도형 1개 그리기 ㄱ. 삼각형123456789101112131415161718192021222324#include #include #include #include void DoDisplay(); void main(){ glutCreateWindow("OpenGL"); glutDisplayFunc(DoDisplay); // glutMainLoop(); //} void DoDisplay(){ glClear(GL_COLOR_BUFFER_BIT); glBegin(GL_TRIANGLES); glVertex2f(0, 0.1); glVer..

  4. 2015.11.19 [OpenGL] 윈도우 좌표를 OpenGL 좌표로 변환하기 1

    마우스 클릭한 위치로 도형을 이동시키거나 다시 그릴 때, 윈도우(디바이스) 좌표랑 OpenGL 좌표랑 달라서 값이 전혀 이상하게 들어가는 경우가 있다. 이런 경우, 윈도우 좌표를 OpenGL 좌표로 맞춰보자 *윈도우 좌표계 *OpenGL 좌표계 출처:soen 윈도우 클라이언트 창의 max 값 변수 winWidth, winHeight 변수가 있다고 가정할 때, void convertDeviceXYOpenGLXY(int x, int y, float* ox, float* oy) /* x,y : 윈도우 마우스 좌표 변수 , ox, oy : Open GL 좌표로 변환 후 저장할 변수 */{int w = winWidth;int h = winHeight;*ox = (float)(x - (float)w / 2.0)*(..

  5. 2015.10.24 [OpenGL] 초기 설정 및 셋팅 1

    OpenGL 설정과 셋팅을 통해 시작해보자!!! 먼저 오픈지엘을 사용하려면 glut.dll, glut32.dll, glut.lib, glut.h ..등의 glut 종류의 라이브러리와 헤더파일 등이 필요합니다 출처:http://neoplanetz.blogspot.kr/2013/07/opengl-httpwww.html 여기서 받으시면 됩니다!! ★ 읽고가세요! ★ 다운받은 파일들을 복사해서 각각의 위치(파일)에 추가 해주어야합니다 운영체제의 bit 종류에 따라, Program File 에 (x86)이 붙은 경로일 수도 있고, 안붙은 경로일 수도 있습니다. (64bit->(86x)) 또한 visual studio의 버전에 따라 각각의 파일을 복사해줘야 하는 위치가 다를 수 있습니다. visual studio가..

1