wxWidget 어플 실행시 Cannot initialize OLE 에러 wxWidget으로 어플리케이션을 생성하고 실행시키면 다음과 같은 에러가 뜨는 경우가 있다. 이에 대한 해결책은 프로젝트 속성에서 '공용 언어 런타인 지원' 옵션을 '공용 언어 런타임 지원 안 함'으로 설정하면 된다. 실행 프로젝트뿐만 아니라 같이 사용하는 프로젝트들도 다 이렇게 설정해야 한다. 왜 .. 3D Programming 2011.08.19
Tangent 공간 <=> Object 공간 변환 노말맵을 사용하기 위해서는 tangent 공간(or texture 공간)과 object 공간 사이의 변환이 필요하다. 노말맵에 저장된 값은 tangent 공간에 있고 Light 벡터등은 object나 world 공간에 있기 때문에 같은 공간상의 값으로 변환해야 한다. 그럼 어떤 공간에 맞출 것인가. 보통은 tangent 공간으로 맞춘다. Light 벡터나 View .. 3D Programming 2011.03.01
Material Editor - Node별 Preview 각 노드에 현재까지의 결과를 그려주는 기능을 추가했다. 일단 각 노드별로 쉐이더를 생성해서 렌더타겟에 그린 다음 이미지 파일로 저장하고 툴에서 그 이미지 파일을 가져와 그려주는 식으로 되어있다. 하드코딩의 향연과 비효율적인 방식으로 인해 아직 손볼대가 많다. 그래도 나오는게 어디야! .. 3D Programming 2011.01.29
wxWidget 프로젝트 설정 * C/C++ 일반 : 추가 포함 디렉터리 $(WXWIN)/include; $(WXWIN)/include/msvc 추가 전처리기: 전처리기 정의 __WXMSW__ 추가 * 링커 일반: 추가 라이브러리 디렉터리 $(WXWIN)/lib/vc_lib 추가 입력: 추가 종속성 wxmsw29ud_core.lib wxbase29ud.lib wxtiffd.lib wxjpegd.lib wxpngd.lib wxzlibd.lib wxregexud.lib wxexpatd.lib winmm.lib comctl32.lib rpcrt4.lib wsock32... 3D Programming 2010.12.30
Reconstructing Position from depth 일반적으로 Deferred 시스템에서 오브젝트의 위치값은 따로 저장하지 않고 깊이값을 이용해 계산해내는 방식을 사용한다. 추가적인 RenderTarget 사용을 없앨 수 있기 때문이다. 깊이값으로 위치값을 계산하는데는 여러 방법이 있는데 그 중 몇가지만 소개하고자한다. 1. Projection-Inverse 행렬 사.. 3D Programming 2010.09.22