본문 바로가기
프로그래밍/Unreal Engine 3

UDK > Class Name 을 이용한 직접적 참조

by neive 2012. 2. 29.
728x90


상용의 언리얼 엔진이라면 사용할 일 없는 방법이지만..

UDK 에서도 ini 에 때려 넣을 것이라면 사용할 일 없는 방법이지만...

object 형 데이터를 담고 있는 정적 데이터들을 Class Name 만으로 직접 억세스 하는 방법을 알아 봅시다-


베이스 클레스
class CData extends Object;

var array<string> strList;

defaultproperties
{
}


데이터 클레스 1

class CData_001 extends CData;

defaultproperties
{
	strList(0)="hello"
	strList(1)="hi"
	strList(2)="bye"
}


데이터 클레스 2

class CData_002 extends CData;

defaultproperties
{
	strList(0)="안녕하세요"
	strList(1)="안녕"
	strList(2)="잘가"
}


사용 예제

function foo(string sName)
{
	local class<CData> tempClass;
	local CData temp;
	local array<string> strList;
	local string s;

	tempClass = class<CData>( DynamicLoadObject("MyMod.CData_" $ sName, class'Class') );  // 본인 상황에 맞게 MyMod 부분을 바꿔야 겠죠?
	if(tempClass != None)
	{
		temp = new(self) tempClass;
		if(temp != None)
			strList = temp.strList;
	}

	foreach strList(s)
		`Log("strList :" @ s)
}

function fooo()
{
	foo("001");	// 결과적으로 CData_001 의 값을 얻는다
	foo("002");
}

728x90

'프로그래밍 > Unreal Engine 3' 카테고리의 다른 글

UDK > Wind Force  (0) 2012.03.05
UDK > 내 게임 만들기 (18)  (1) 2012.03.02
UDK > 내 게임 만들기 (17)  (0) 2012.02.26
UDK > 내 게임 만들기 (16)  (0) 2012.02.26
UDK > 내 게임 만들기 (15)  (0) 2012.02.24

댓글