ASE의 전반적인 구조 1. File Head : ase 버전이나 comment 등의 정보를 담고 있다. 2. Scene : 프래임의 전반적인 정보를 담고 있따. 3. Material List : 사용된 머터리얼이며, 텍스쳐도 포함되어 있다. 4. Object List : 각종 Object 들을 담고 있다. 보기 *3DSMAX_ASCIIEXPORT200 *COMMENT "workAsciiExport Version 2.00 - Sun Sep 07 01:12:47 2008" *SCENE { *SCENE_FILENAME "aaa.max" *SCENE_FIRSTFRAME 0 *SCENE_LASTFRAME 100 *SCENE_FRAMESPEED 30 *SCENE_TICKSPERFRAME 160 *SCENE_BAC..
분류 전체보기 검색 결과
이 내용은 수업시간에 공부한 내용과 책을 통해 공부한 내용을 정리한 것이다. ASE 파일을 어떻게 읽어 들일 수 있는가? tinyXML 을 했던 사람이라면, 쉽게 이해 할 테지만, 아닌 사람들을 위해서 설명하자면... 1. ASE 파일을 로드 하고 2. ASE 파일의 문장을 단어(TOKEN) 단위로 끊고 3. 단어의 의미를 분석한다. 이 단어 단위로 끊는 것을 Lexer 라고 하며, 의미 분석을 Parser 라고 한다. 이제 어떻게 읽는지 알게 되었으니, Lexer 기능과 Parser 기능을 만들어야 한다. Lexer 와 Parser가 어떻게 동작해야 하나?(이 질문은 어떻게 동작하는지 알아야지만 만들수 있기 때문이다) Lexer는 문장을 단어를 자르고 Parser가 자른 단어가 쓸만한지 판단하여, 데이..
이 내용은 수업시간에 공부한 내용과 책을 통해 공부한 내용을 정리한 것이다. ASE란 무엇인가? 3D MAX 에서 작업한 것을 TEXT 정보로 Export 한 파일의 한 종류인다. 왜 배워야 하는가? MAX에서 작업한 것을 프로그램에서 사용하기 위해서다. 왜 ASE 이여야 하는가? 다른 Export 파일에 비해 이해하기가 쉬우며, 손쉽게 조작할수 있기 때문이다. ASE의 단점은 없는가? TEXT 파일이다보니, 너무 많은 용량을 사용하고, 추가적인 에디터와 파서를 만들어야 하며, Normal 값 생성도 같이 해줘야 한다.
본 내용은 "Exceptional C++ : C++ 프로그래머를 자극하는 47개의 재미있는 퍼즐·문제" 책에서 문제만 발취한것임을 미리 밝힙니다. 문제 1. char_traits에서 ci_char_traits를 상속 받는 방식이 안전한가? 2. 왜 다음과 같은 코드가 컴파일에 실패했나? // 이 코드는 항목 2의 해결책으로 나온 코드 기반의 코드이다. ci_string s = "abc"; std::cout
본 내용은 "Exceptional C++ : C++ 프로그래머를 자극하는 47개의 재미있는 퍼즐·문제" 책에서 문제만 발취한것임을 미리 밝힙니다. 문제 1. "대 · 소문자 구분 없는" 것이 무슨 뜻인가? 2. 표준 std::string 클래스와 동일하지만, 확장된 stricmp()처럼 일반적인 방법으로 대 · 소문자 구분 없는 ci_string 클래스를 작성해 보라 사용법으로는 class ci_string; ci_string s( "abCdE"); // 대 소문자를 구분하지 않는 비교 assert( s == "abcde" ); assert( s == "ABCDE" ); // 대소문자를 구분하는 비교 assert( strcmp( s.c_str(), "abCde") == 0 ); assert( strcmp..
본 내용은 "Exceptional C++ : C++ 프로그래머를 자극하는 47개의 재미있는 퍼즐·문제" 책에서 문제만 발취한것임을 미리 밝힙니다. 코드 // Exceptional C++의 항목 1 : 반복자( iterator ) #include #include #include int main( ) { std::vector e; // copy 알고리즘을 사용 하여, back_inserter 가 벹어내는 // iterator에 cin 에서 입력받은 정수를 밀어 넣는다. std::copy( std::istream_iterator( std::cin ), std::istream_iterator( ), std::back_inserter( e ) ); // find 알고리즘을 이용하여 4의 위치를 찾고 iterato..
최근댓글