프로그래밍/3D그래픽스 & 쉐이더 스피비 2011. 1. 12. 15:26
출저:This is strictly between you and me. :: 네이버 블로그 Q) OpenGL이란?OpenGL FAQ http://www.opengl.org http://users.unitel.co.kr/~sangeun5/opengl/basicsfaq.html 참고하세요. Q) Direct3D이란? 2001/2/22/20:07 작성자:김지훈 *틀린 내용이 있다면 수정해주세요* Direct3D란 실시간 3D 렌더링을 위해 마이크로 소프트가 배포하는 API(응용프로그램 인터페이스) 로서 일반적으로 D3D라고 말합니다 --;(당연한건가?) 그리고 하드웨어 추상화 기법을 사용하기 때문에 응용 프로그램 개발자들이 각종 하드웨어에 대해 세세히 신경쓰지 않아도 된다는 굉장한 장점을 가지고있으며 실시간 ..
프로그래밍/3D그래픽스 & 쉐이더 스피비 2011. 1. 11. 15:32
ID3DXSprite(이하 스프라이트) Interface는 다이렉트 엑스에서 2D이미지를 그리기 편하게 해주는 인터페이스 입니다. 주로 UI를 그리거나 하는 평면 이미지를 그릴때 사용하는데, 3D상의 카메라에 2D이미지가 붙어 있다고 생각하시면 편합니다. 카메라를 움직이면 3D공간의 물체는 이동하지만 카메라에 붙은 2D이미지는 변함이 없는 것이지요. 여기서는 이 유용한 스프라이트 객체의 사용법에 대하여 알아보겠습니다. 1. 스프라이트 객체 생성과 해제 // 생성하기 LPD3DXSPRITE pSprite; D3DXCreateSprite(pd3dDevice, &pSprite); 스프라이트를 생성할때는 D3DXCreateSprite함수를 사용합니다. 함수를 간단히 살펴보면 HRESULT WINAPI D3DXC..
프로그래밍/3D그래픽스 & 쉐이더 스피비 2011. 1. 7. 17:22
Z 버퍼란? 카메라변환을 거치고, 투영변환까지 거치게 되면 모든 정점은 (-1,-1,0) ~ (1,1,1) 사이의 공간에 위치하게 됩니다. 이때, (x,y,z)를 보면 Z값이 0~1사이의 값이라는 것을 알수있습니다. Z버퍼란, 화면에 그려질 픽셀들의 Z값을보관하는 특별한 버퍼(0~1사이의 값을 보관하는 소수점버퍼)를 말합니다. 예를들어서 Z값이 0.5에 위치하는 물체와, 0.1에 위치하는 물체가 있다고 가정해봅시다. 만약, 0.1에 위치하는 물체를 먼저그리고, 0.5에 위치하는 물체를 그 다음에 그린다면, 0.1에 있던 물체 위에 덮여서 그려질것입니다. 이것은 낭패가 아닐수 없습니다.3차원 공간에서 본다면 0.1에 있는 물체가 카메라에서 더 가까운곳에 있으니 0.5에 있는 물체가 덮어그리면 안되는 것입니..
프로그래밍/3D그래픽스 & 쉐이더 스피비 2011. 1. 7. 16:49
출처] : DirectX 9.0 한글판 도움말 ver 4.70 - by dexk Color관련 D3DXColorAdd - 2 개의 색값을 덧셈 해, 새로운 색값을 생성 한다. D3DXColorAdjustContrast - 색의 콘트라스트값을 조정한다. D3DXColorAdjustSaturation - 색의 채도값을 조정한다. D3DXColorLerp - 선형 보간을 사용해 색값을 생성 한다. D3DXColorModulate - 2 개의 색을 블렌드 한다. D3DXColorNegative - 있는 색값에 대한 부의 색값을 생성 한다. D3DXColorScale - 색값을 스케일링 한다. D3DXColorSubtract - 2 개의 색값을 뺄셈 해, 새로운 색값을 생성 한다. 기타 D3DXFloat16To3..
프로그래밍/3D그래픽스 & 쉐이더 스피비 2011. 1. 7. 16:38
[3D란 무엇인가?] 위에서 열심히 3D게임의 계보에 대해 대강 알아보았습니다. 여러 가지 그림도 보고 많은 게임들이 만들어 졌다는 것은 알겠지만, 3D 프로그래밍을 처음 접하게 되면 다른 프로그래밍과 달리 매우 많은 전문용어 때문에 혼선을 겪기에 마련입니다. 용어의 개념정리만 된다면 일차적으로 3D에 대한 많은 글들을 이해할 수 있기 때문에 이부분에서는 3D에서 사용되는 간단한 기초적인 용어들을 설명하겠습니다. 또한, 3D프로그래밍은 다른프로그래밍보다 좀 더 수학적 지식을 필요로 합니다. 기본적인 수학지식과 각종 수식들이 갖는 각각의 의미를 이해할 수 있어야 좀 더 쉽게 3D 프로그래밍을 배울 수 있을 것입니다. 그래서 이곳에서는 용어와 함께 3D 프로그래밍에서 쓰이는 간단한 수학과 그 의미를 알아 보..