Loading...

Visual C++ 2008 Feature Pack 사용시 오류

출처 : http://blog.naver.com/astrya/140051681865 Feature pack 설치 후 최초 실행시 지정된 파일을 찾을 수 없다는 에러가 나올 수 있다.. 아마도 eror C1189 를 뿌릴것이다. 한글판 메세지는 모르겠다.. 현재는 영문판만 FP가 지원되니.. "Your version of the Windows SDK is earlier than 6.0. Try setting the 'WINVER' and '_WIN32_WINNT' definitions in your project to less than 0x0600." 이 현상은 stdafx.h 에 아래 두줄 추가로 해결이 된다. #define WINVER 0x0501 #define _WIN32_WINNT 0x0501 20..

Property Sheets

http://msdn.microsoft.com/en-us/library/a4xbdz1e(VS.80).aspx Visual C++ Concepts: Creating and Managing Projects Property Sheets (C++) A project property sheet is an .xml file with the extension .vsprops. It enables you to specify switches for build tools such as the compiler or linker and create user-defined macros. You can use property sheets to create project configurations that can be applie..

ID3D10InputLayout

정점은 여러가지 정보를 가진다. 기본적으로는 정점의 위치, 색상, 노말, 텍스쳐 좌표등이 그것이다. 이러한 정점 정보는 파이프라인의 첫번째 스테이지인 입력조립기(IA)스테이지로 입력된다. 렌더링 파이프라인의 입력조립기 스테이지는 개발자가 정의한 정점 구조체의 형식을 미리 알고 있어야 앞으로 파이프라인에 입력될 정점 데이터를 올바르게 해석할 수 있다. 장치에 정점의 형식을 알리는 방법은 정점에 대한 입력레이아웃 이라는 객체를 구성하고 이를 입력조립기 스테이지에 제공하는 것이다. 결국 입력레이아웃이란 입력조립기 스테이지가 입력데이터를 접근할 때에 사용하는 인터페이스이다. 정점구조체의 각 속성은 D3D10 _INPUT_ELEMENT_DESC구조체의 배열로 표현된다. ID3D10InputLayout Interf..

Effect Pool

Effect Pool의 사용. pre compile를 위한 fxc의 사용은 환경변수의 path에서 미리 설정. 하나의 프로그램에서 여러개의 이펙트를 사용할 때 이펙트 파일을 셋팅하기 위해 많은 이펙트 변수들이 필요하다. 종종 많은 수의 변수들이 이펙트끼리 겹치게 된다. 여러가지 설정없이 이펙트끼리의 쉐이더나 변수를 공유하기 위해 각각의 이펙트에서 실제로 같은 데이터들을 만들어서 설정하여 호출할 필요가 있다. effect pool은 이러한 문제를 해결해준다. effect pool은 다른 이펙트들 간의 변수와 텍스쳐, 그리고 쉐이더를 공유하게 해준다. 이것은 공통된 변수나 데이터를 매 프레임한 한번씩만 설정해 줄수 있다는 것을 의미한다. effect pool은 실질적으로 두개의 파트로 구성되어져 있다. ef..

중복 없는 난수 만들기, 혹은 카드 섞기 문제

출처 : http://conanoc.egloos.com/1046677 최 모 주임이 점심시간에 제기했던 재미있는 문제를 조금 찾아봤습니다. 문제는 "1에서 100까지의 숫자를 중복 없이 랜덤하게 뽑아내라" 이며, 이 문제는 "1에서 100까지 숫자를 잘 섞어라" 와 동일하기도 합니다. 인터넷에서 찾아보니 대략 밥먹을때 이야기나왔던 것들과 비슷하고, 정리하고 보니 현 선임이 이야기했던 방법이 가장 효율적인것 같네요. 1) 우선, 가장 쉽게 생각할 수 있는 잘못된(?) 방법은 이런 방법일 겁니다. 중복 안된 숫자가 나올때 까지 계속 랜덤을 돌리는 것이지요. 물론 MAX가 20정도면 이 방법도 유효할 수 있겠습니다만, 별을 다섯개 줄만한 답변은 아닌것 같네요. 2) 그 다음 생각할 수 있는 방법은 숫자들을 배..

Physique Vs Skin modifier and Bones Vs Bipeds

bone은 일반적인 뼈를 나타내는데 하나의 마디를 나타낸다. 워낙에 max로 케릭작업을 많이 하니까 max에서 사람모양 작업을 편하게 하도록 만든 것이 biped. 즉, biped는 사람모양에 맞게 미리 준비되어 있는 기능인지라 이 biped로 토끼를 만들거나 호랑이를 만들거나 하는건 어렵다. 사람모양에 특화된 bone이라고 생각하면 될듯하다. skin과 physique는 일반적인 피부라고 생각하면 될듯하다. 즉, max상에서의 일반 메쉬로 보면된다. 바이패드의 셋팅이란 케릭터의 뼈대를 위치시키는 것을 말하는데 이 뼈대와 케릭터를 직접 연결시키는 작업을 리깅이라고 한다. 이후에 할 작업이 피직과 스킨인데 피직은 아주 오래된 기능이다. 그나마 최근 기능이 스킨인데 디자이너 입장에서는 스킨이 훨 편하다니까...

_beginthread와 _beginthreadex의 차이

출처 : http://naiades.tistory.com/6 윈도우즈에서 스레드를 생성하는 API는 CreateThread(), _beginthread(), _beginthreadex() 이렇게 3개의 함수가 존재합니다. CreateThread()와 _beginthread(), _beginthreadex()의 차이점은 다음과 같습니다. CreateThread()는 스레드를 생성하는 기능만 담당한다. _beginthread(), _beginthreadex()는 내부적으로 CreateThread() 를 사용하여 스레드를 생성하고 C Runtime library에서 내부적으로 필요로 하는 메모리 영역을 초기화 해주는 역할을 하게 됩니다. 초기화 되는 메모리 영역은 각 스레드 마다 따로 관리되게 됩니다. 그렇다..