Loading...

8 monkey, marmoset engine

3D Creative에서 자주 봤던 툴이 이것인듯... 살펴보면 재미있는게 이것저것 있다. 누군가의 소개를 보면 "게임 엔진 개발과 그래픽 프로그래밍 등에 초인적인 인재들이 모여, 게임을 위한 쉐이더 기술과 모델링의 최고의 자리에 있는 3D 아티스트 그룹과 함께 일을 하고 있다" 라고 하던데.... 흐음... 초인적인 인재라.....먼지모르지만 부럽군..ㅎㅎ. 일단 좀 더 살펴봐야 할 것 같다. http://www.8monkeylabs.com/archives/tag/marmoset-engine위 링크가 바뀐듯..http://www.marmoset.co/

safe memcpy

사용법 uiSize = sizeof( D3DXVECTOR2 ); SafeMemcpy(dstbuffer, srcbuffer, uiSize, start(여기선 dstbuffer), 마지막위치(여기선 dstbuffer + (uSize+1))); 이런식으로 사용하면 된다. 그냥 간단히 src와 dst, 그리고 복사할만큼의 크기로 memcpy할때 안전한지 체크한다. 그다지 쓸일이 많지 않기도 하지만 중요한 부분을 처리할때는 이렇게 사용해도 괜춘은듯. 그냥 api보고 베껴서 만들었다.흐헤헤. BOOL SafeMemcpy(void *dst, void *src, size_t n, void *start, void *end) { if(n < 1) { #ifdef _DEBUG MGASSERT(!"Font memcpy fai..

2010. 10. 31. 00:48

CreateEvent

대기상태에 있는 스레드 모두를 실행가능한 상태로 변경해 줄 수 있다. HANDLE CreateEvent( LPSECURITY_ATTRIBUTES lpEventAttributes, BOOL bManualReset, BOOL bInitialState, LPTSTR lpName ); lpEventAttributes : NULL 넣어주면 된다. bManualReset : manual-reset 모드 event로 생성할 것인지 auto-reset 모드 event로 생성할 것인지 지정. 만약 TRUE를 전달하면 manual-reset모드의 event가 발생하는데 event가 signaled 상태에 있을 경우 resetevent함수를 호출하지 않는 이상 non-signaled상태로 돌아가지 않는다. 반면에 FALSE..

2010. 10. 30. 23:11

_beginthreadex

스레드를 생성하는 함수. 스레드는 커널에 의해 생성되는 리소스이므로 커널 오브젝트가 생성될 것이고 함수 호출이 끝나면 커널 오브젝트를 의미하는 핸들이 리턴 될 것이다. 1. Win32 API의 CreateThread 대신 C Run Time Library의 _beginthreadex를 써야하는 경우 1.부동 소수형 변수나 함수를 사용할 경우 2.C의 malloc과 free나 C++ 의 new와 delete 를 사용할경우 3.stdio.h 나 io.h에서 어떤 함수를 호출한다면 4.strtok() 나 rand() 와 같이 정적 버퍼를 사용 하는 어떤 런타임 함수를 호출할 경우 출처 : http://www.fiadot.com/TatterTools/index.php?pl=476&setdate=200402&PH..

2010. 10. 30. 22:03

WaitForSingleObject

DWORD WaitForSingleObject( HANDLE hHandle, // handle to object DWORD dwMilliseconds // time-out interval ); 실패시 WAIT_FAILED 리턴 HhANDLE : 상태를 확인할 커널 오브젝트의 핸들을 전달. 이 핸들의 커널 오브젝트 상태가 signaled가 되어야 리턴한다. non-signaled상태에 있을 경우 함수는 리턴하지 않고 대기상태로 들어간다. dwMilliseconds : 타임아웃을 설정한다. 커널오브젝트가 singnaled 상태로 바뀌지 않을 경우 무한대기 상태로 빠질수 있다. 그러나 타임아웃을 설정해 놓으면 그 시간이 지나서 바로 리턴하게 된다. 1/1000초 단위로 설정한다. 만약 INFINITE를 전달할..

pointer to member function의 크기?

본문 : http://www.gpgstudy.com/forum/viewtopic.php?topic=5749 VC 컴파일러 혹은 링커의 버그를 발견한 듯 싶습니다. 올려짐: 2005-04-24 09:38 자세한 내용은 http://wminos.jaram...p/Project_PacMan#s-5 위키에 정리해놨습니다. ----------------------- 팩맨 게임 코어에 GUI시스템을 작성하던 중 실행타임 버그를 발견하게 되었습니다. 디버깅을 아무리 해도, 납득할 수 없는 현상이었는데. 소스에는 아무런 문제가 없어 보입니다. dev-c++ 로는 에러없이 컴파일 되는군요. vc7 과 vc8 beta 에서는 에러가 발생합니다. 몇시간을 디버깅 한 결과, 발생 원인을 알게 되었고.. 스샷과 그 현상이 일어..

철권 태그2

철권을 좋아라하다가 태그이후 점점 그래픽만 좋아지고 스릴이 부족해지는(지극히 개인적임) 느낌때문에 그다지 즐기지 못했는데 이번에 태그2가 나오는군. 멋져부러.