Game Dev/Binary 26

DLL Injector

[ DetourLib.h/cpp ] - MS에서 제공하는 Detour Library를 사용한 Hook [ IAT.h/cpp ] - 프로그램 바이너리의 PE Header에서 IAT(=Import Address Table) 주소를 읽어 그 주소에 기록된 함수의 주소를 변경하는 방법 - 실행 파일마다 PE Header에 IAT가 다르고 IAT에 모든 함수 주소가 존재하는 것은 아니기 때문에 Hooking이 실패할 수도 있음 - MessageBox 함수의 경우 메모장(Notepad)의 IAT에는 존재하지만 그림판(MSPaint)의 IAT에는 존재하지 않았음 [ Jmp.h/cpp ] - Inline Hooking, Detour Hooking으로도 불림 - Hooking을 원하는 함수의 시작 주소에 JMP(= “E..

Game Dev/Binary 2011.07.06

Float의 메모리 내용을 Float 값으로 변환하기

OllyDbg 등 외부 디버거로 테스트 할 때 메모리가 어떤 값에서 어떤 값으로 변했는지 알기가 힘들어서 급하게 발코딩 했음... printf("Input Float's 4Bytes(=8Chars) Memory in Hex\n"); printf("ex) 0010FA42\n\n\t"); char mem[12] = {0}; scanf( "%c%c%c%c%c%c%c%c", mem+0, mem+1, mem+3, mem+4, mem+6, mem+7, mem+9, mem+10 ); char num[4] = {0}; for (int i = 0; i < 4; ++i) { num[i] = (char)strtoul(mem+(i*3), NULL, 16); } float f = 0.0f; memcpy(&f, num, size..

Game Dev/Binary 2011.03.30

Angel Engine

EA의 LA 지부에서 Angel Engine이라는 2D Game Prototyping 전용 엔진을 공개하였습니다. 코드는 OpenGL과 C++ 기반이며, 원래는 2008년 GameJam에서 사용하기 위해 제작되었다고 하네요. 제공되는 기능은 다음과 같습니다. Actors (game objects with color, shape, responses, attributes, etc.) Texturing with Transparency "Animations" (texture swapping at defined intervals) Rigid-Body Physics A clever programmer can do soft-body physics with it Sound Text Rendering with multi..

Game Dev/Binary 2009.02.03