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 |
댓글