태그 : Mangalore
2008/12/03 리플렉션(Reflection) - (1) [3]
2008/11/22 KGC2008 강연 후기 관련... [3]
2008/11/04 Mangalore - Component based Entity System [4]
2007/07/01 Reflection System of Mangalore
... //메시지 생성 Message::MoveMsg moveMsg = Message::MoveMsg::Create(); //메시지 값의 설정 moveMsg.Set(x, y, z); // 메시지의 전송 moveMsg.SendAsync(); ... |
# by | 2009/05/03 18:17 | MultiCore | 트랙백 | 덧글(7)
# by | 2008/12/03 16:53 | Development | 트랙백(1) | 핑백(1) | 덧글(3)
# by | 2008/11/22 09:43 | Conferences | 트랙백 | 덧글(3)
# by | 2008/11/04 09:43 | Nebula Croquis | 트랙백(2) | 덧글(4)
- 리플렉션(Reflection)이란 무엇인가?
- 실제 게임에서는 리플렉션을 어떻게 응용할 수 있는가
XML 파일을 이용한 직렬화(serialization)
네트워크를 통한 클래스 객체 전송
리플렉션을 위해 필요한 것
1) RTTI
2) Attr
RTTI
C++에서 제공하는 기본 RTTI를 사용하지 않고 직접 커스텀 RTTI 를 작성하는 이유는 퍼로퍼티 시스템 작성을 보다 간단하게 할 수 있는데다 확장도 용이하다. 그리고 리플렉션에 최적화된 코드를 작성할 수 있다는 장점도 있다.
망갈로의 RTTI 시스템은 다음의 내용을 포함한다
- 클래스 이름
- unique ID
Attr 객체
영속성(persistence)이 필요한 클래스 멤버들은 Attr 객체를 이용해서 정의한다.
참조
[Dominic]Dominic Filion, Artificial Mind & Movement, Using Templates for Reflection in C++, Game Programming Gems 5
@
일반적으로 Property라고 이야기하지만 망갈로에서는 이 프로퍼티(Property)가 속성(Attribute)으로로 컴포넌트(Component)를 Property로 이름 지어서 헷갈리는 것이 흠.
# by | 2007/07/01 17:05 | Nebula Croquis | 트랙백 | 핑백(1) | 덧글(0)
◀ 이전 페이지다음 페이지 ▶