블로그 이미지
Every unexpected event is a path to learning for you.

카테고리

분류 전체보기 (2737)
Unity3D (817)
Programming (474)
Server (33)
Unreal (4)
Gamebryo (56)
Tip & Tech (228)
협업 (58)
3DS Max (3)
Game (12)
Utility (136)
Etc (96)
Link (32)
Portfolio (19)
Subject (90)
iOS,OSX (53)
Android (14)
Linux (5)
잉여 프로젝트 (2)
게임이야기 (3)
Memories (20)
Interest (38)
Thinking (38)
한글 (30)
PaperCraft (5)
Animation (408)
Wallpaper (2)
재테크 (18)
Exercise (3)
나만의 맛집 (3)
냥이 (10)
육아 (16)
Total
Today
Yesterday
04-20 00:00

'Gamebryo'에 해당되는 글 14건

  1. 2010.04.29 NiNew 사용 시기
  2. 2010.04.12 Gamebryo 2.5
  3. 2010.04.08 Gamebryo 템플릿 클래스
  4. 2010.04.08 렌더러를 만들어보자

NiNew등의 Ni 관련 함수들은

NiInit() 이후에 와야 되는 것 같다.

같은 동적할당이라 생각하고 NiInit() 이전에 했더니 컴파일 에러는 안나는데..

런타임 에러가 난다.

기억해 두자.

반응형
Posted by blueasa
, |

Gamebryo 2.5

Gamebryo/Lecture / 2010. 4. 12. 14:17
반응형

'Gamebryo > Lecture' 카테고리의 다른 글

Gamebryo 셋팅  (1) 2011.01.06
게임브리오 강좌(?) 링크  (3) 2010.04.14
[링크] 게임브리오 강좌  (0) 2010.04.10
게임브리오 초기 설정(vs2005)  (0) 2010.04.07
Gamebryo  (0) 2010.04.07
Posted by blueasa
, |
1) Lists(NiTPointerList)
- 포인터나 스마트 포인터 또는 포인터 크기만하거나 더 작은 다른 요소를 저장하고 관리할 수 있다.
- 어떤 요소에서든 삽입/삭제가 효과적.
- 모든 요소를 통해 전/후 반복(iteration)이 효과적.
- 리스트를 검색해서 주어진 값으로 된 요소의 존재와 위치를 찾을 수 있다.
- NiTPointerList의 아이템들은 공유 pool로부터 블록으로 할당되므로, 처리 속도가 빨라지고 메모리 효율적으로 됨.
- 포인터보다 큰 오브젝트들의 리스트에는 NiTObjectList를 사용.

2) Array(NiTArray)
- 거의 모든 타입의 객체가 들어있는 동적 배열을 구현함.
- 이 배열은 늘어나거나 줄어들 수 있으며, 필요하다면 압축(빈 공간을 없애기 위해 요소들을 시프트(shift)시킴)할 수도 있다.
- 고유 타입(char*, float, int 등)에는 NiTPrimitiveArray 사용
- NiMemObject에서 파생한 타입에는 NiTObjectArray 사용.
- 요소의 개수는 65535개로 제한.
  (그 이상을 사용하려면 NiTLargePrimitiveArray나 NiTLargeObjectArray같은 NiTLargeArray 파생 클래스 사용.)

3) Map(NiTPointerMap)
- ("사전"이라고도 알려진) 해시 테이블(hash-table)기능을 구현하여, 어떤 유형의 키든..포인터나 스마트 포인터 또는 포인터 크기만하거나 더 작은 다른 타입의 요소에 맵핑하게 해줌.
- 이 객체를 사용하면 키와 값으로 이루어진 쌍의 저장이나 검색(lookup)이 빨라짐.
- 캐릭터의 문자열키 해시 테이블에는 사용 X(NiTStringPointerMap을 사용)
- NiTPointerMap과 NiTStringPointerMap의 아이템들은 공유 pool로부터 블록으로 할당되므로, 이 클래스의 처리 속도가 빨라지고 메모리 효율적으로 됨.
- 포인터보다 큰 오브젝트들의 맵에는 NiTMap이나 NiTStringMap을 사용.

4) StringMap
- NiTStringMap과 NiTStringPointerMap 객체는 NiTMap 및 NiTPointerMap 객체와 비슷한 방식으로 기능하지만 character string을 키로 받아들이며, 키 해싱(key hashing)을 위해 문자열을 비교함.

5) FixedStringMap(NiTFixedStringMap)
- NiTMap 객체와 비슷한 방식으로 기능하나 NiFixedString 객체를 키로 받아들임.

6) Queue(NiTQueue)
- 거의 모든 타입의 객체에 대한 선입선출(FIFO) 큐를 구현함.
- 스마트 포인터는 지원되지 않음.

7) Set(NiTSet)
- 거의 모든 타입의 객체에 대한 순서 없는 세트를 구현.
- 스마트 포인터는 지원되지 않음.
- 고유 타입(char*, float, int, 등)에는 NiTPrimitiveSet을 사용
- NiMemObject에서 파생한 타입에는 NiTObjectSet을 사용
- 오브젝트의 스마트 포인터에는 레퍼런스 카운트를 올바르게 처리하는 NiTObjectPtrSet이나 NiTPrimitivePtrSet을 사용.

8) Pool(NiTPool)
- 작은 객체들의 pool을 구현.
- 이렇게 하면 어플리케이션은 작은 객체들을 개별적으로 할당/해제하기 보단, 이 객체들을 한꺼번에 할당하고 pool을 통해 재사용할 수 있게 됨.
반응형

'Gamebryo > Learn' 카테고리의 다른 글

겜브리오의 텍스처 공유  (0) 2011.11.11
DirectX 디바이스 얻어오기  (0) 2010.11.04
충돌 박스 노드에 임시 생성  (0) 2010.07.02
여러창 동시 렌더링  (0) 2010.07.02
렌더러를 만들어보자  (0) 2010.04.08
Posted by blueasa
, |
반응형

'Gamebryo > Learn' 카테고리의 다른 글

겜브리오의 텍스처 공유  (0) 2011.11.11
DirectX 디바이스 얻어오기  (0) 2010.11.04
충돌 박스 노드에 임시 생성  (0) 2010.07.02
여러창 동시 렌더링  (0) 2010.07.02
Gamebryo 템플릿 클래스  (0) 2010.04.08
Posted by blueasa
, |