본문 바로가기

프로그래밍

케릭터 애니메이션 로더 케릭터 애니메이션에서 필요한 값을 찾아본다. (작성중이다...) 일단 파일 명을 받아온다. TAniMatrixMgr::Find( TCHAR *pFileName, TCHAR* szPath ) m_AniCollect.Find( pFileName, szPath ); TAniMatrix::Load( TCHAR* szLoadFile, TCHAR* szTexturePath ) m_VerInfo.iVersion iTitleLenth, szBuffer : 익스포트 이름(TTMatrixExport) m_Scene : First(0), Last(35), Frame(0) m_iMaxBipedCnt : (62)바이페스 개수 m_pMatrix, m_ppAniMatrix, m_ppAniQuater 를 최대 바이페스 개수 만큼 메..
맥스 익스포트 구조 이번에 익스포트에 대해 정리하는 중이다 대략 함수별로 트리를 짜밧으며 그함수가 무순 기능을 하는지에 대해서 정리해봤다 Frame() GetScene() : 캐릭터의 틱과 처음프레임 마지막 프레임 프레임스피드 을 구해온다 GetMaterial() : 캐릭터의 각 메터리얼을 가져온다. GetTexture() : 메터리얼에 해당하는 텍스쳐 값을 받아온다. GetObject() : 캐릭터 오브젝트의 정보를 가져온다. NodeEnumeration( INode* node ) : 각 오브젝트인지 헬퍼오브젝트인지 검사후 노드의 오브젝트의 값을 가져온다. 제귀호출을 해주어서 자식 노드까지 값을 구해온다. GetGeomObject(INode* node ) : 자식 노드를 찾아서 각각의 Header, TM, Mesh, An..
툴을 만드는 대 참고할 사항 MapTool 툴을 만드는 대 참고할 사항 실외지형(맵) 사용자 정의 지형 생성( 필드 구축) 원하는 크기의 지형을 생성 지형컨트롤 높이조절( 지형고저 제어) 오브젝트 컨트롤 오브젝트 배치, 회전, 크기조절 테스쳐 컨트롤 맵핑 (싱글타일/ 오토타일/ 스플래팅) 조명 (정적/ 동적 조명) 고급맵핑 (노말/ 환경 맵핑 / 새도우) 저장/ 로딩 게임 엔진에 필요한 최적화된 지형 정보 출력 최적화딘 로딩 실내지형(맵) 이펙트 툴을 만드는 대 참고할 사항 2D Multi TexTure( 다수의 텍스쳐 교체) Single Texure( 1장 텍스쳐 좌표 교체) Blend Particle 2D 다수가 동시다발적으로 발생 벡터 / 행렬의 적용 3D 오브젝트 에니 스크립트 (언어 /입출력 ) 제어 UI 툴을 만드는 대 ..
캐릭터 최적화 MAX는 월레 본을 사용 햇다~ Bone Anim + skinning + objectAnim = Animation Bone(helper) Biped(Gemo Object) Dummy 애니메이션 매트릭스 기본 메쉬로 구성된 1개의 캐릭터 기본메쉬로 구성된 다수의 캐릭터 A유저 (숨시기) B유저 (걷기) C유저(공격) Character{ } 제한사항 / 유의사항 텍스쳐( 알파포함된 32컬러) 서브메터리얼 오브젝트당 1개의 텍스처 바이패드 리스트의 최대갯수(60개 미만) 지정 텍스쳐가 붙지 않는 메쉬는 불허 에지 부분 결합및 일치 페이스 개수( 무제한 ) 케릭터 4000개 이상 통맵 (30만개 이상); 텍스쳐의 크기 (2048)
두개의 파일의 소스 비교 프로그램 What is WinMerge? More Screenshots… WinMerge is an Open Source differencing and merging tool for Windows. WinMerge can compare both folders and files, presenting differences in a visual text format that is easy to understand and handle.
MFC 를 이용한 Direct3D 프로그래밍 차례 소개 참고도서 참고링크 MFC 프로젝트 만들기 새 프로젝트 만들기 라이브러리 링크 시키기 프로그램 구조 이해하기 초기화 과정 렌더링 과정 마무리 과정 Direct3D 에 맞게 MFC 프로그래밍하기 C3DBase 클래스 만들기 CChildView 클래스 개조하기 CMainFrame 클래스 개조하기 CMFC4Direct3DApp 클래스 개조하기 다운로드 (준비중) 1. 소개 [Bottom] [Top] Direct3D 는 게임에서 주로 많이 사용되고 있으며 MFC 는 응용 프로그램 개발에 많이 사용되고 있다. 이렇게 사용 목적이 전혀 다른 두 가지를 게임 개발에 이용하는 것은 부적합하다. 하지만 게임 자체를 개발하는 것에는 부적합할지 모르나 개발에 필요한 보조 프로그램을 개발하는데는 가장 적합하지 않을까..
[MFC] CWinAppEx::CleanState() API/MFC | 2010/01/29 18:28 | Posted by 임준환( 멈비 ) 1. MFC Feature pack의 도킹 시스템( docking system ) MFC Feature pack 에서는 도킹 가능한 윈도우( window )를 생성할 수 있고, 또한 사용자는 그 윈도우를 프로그램이 제공하는 도킹 위치에 임의로 위치시킬 수 있다. 이와 같은 도킹 시스템( system )은 사용자의 편의를 위해 제공하는 기능이므로 레지스트리( registry )에 도킹된 윈도우의 정보들이 저장되고, 다시 해당 프로그램을 실행시켰을 때 레지스트리에 있는 정보를 이용해 재배치된다. 2. CWinAppEx::CleanState() 프로그램 개발자는 기본적으로 제공되는 도킹 윈도우의 레지스트리 저장 기능을 제어..
문자열 쪼개기, Tokenize 문자열을 어떠한 구분자에 의해 나누고 싶을 때 예를 들어, "6000,A2301BA81301,Sensor1" -> "6000" / "A2301BA81301" / "Sensor1" 1. Tokenize 이용 (.net 함수..6.0에서는 사용을 못 한다.) CString strFullText = _T("6000,A2301BA81301,Sensor1"); CString token; CString strPortNumber, strName, strSensor; int pos = 0; int index = 0; while ((token = strFullText.Tokenize(_T(","), pos)) != _T("")) { // 6000 if(index == 0) { strPortNumber = token; i..