캔버스(Canavas) 키즈멧 노드 만들기

반응형
상위 링크 : http://udn.epicgames.com/Three/DevelopmentKitGemsKR.html
참조 링크 : http://udn.epicgames.com/Three/DevelopmentKitGemsCanvasKismetNodesKR.html

이번에 할 것은 캔버스용 키즈멧 노드를 만드는 것이다.
즉, 에디터에서 켄버스를 사용해서 키즈멧을 사용할 수 있도록 추가해 준다.



1. Render HUD의 추가.
   이는 Event에 ExtHUD라는 카테고리에 만든다.
   Event에 만들기 위해서는 SequenceEvent class를 확장해야 할 필요가 있다.

 

class HUDKismetSeqEvent_RenderHUD extends SequenceEvent;

var Object PlayerController;
var Vector CameraPosition;
var Vector CameraDirection;

...

defaultproperties
{
 ObjName="Render HUD"
 ObjCategory="ExtHUD"

 MaxTriggerCount=0
 bPlayerOnly=false

 OutputLinks(0)=(LinkDesc="Out")

 VariableLinks(0)=(ExpectedType=class'SeqVar_Object',bHidden=true,LinkDesc="PlayerController",bWriteable=true,PropertyName=PlayerController)
 VariableLinks(1)=(ExpectedType=class'SeqVar_Vector',bHidden=true,LinkDesc=
                                                                                       "Camera Position",bWriteable=true,PropertyName=CameraPosition)
 VariableLinks(2)=(ExpectedType=class'SeqVar_Vector',bHidden=true,LinkDesc=
                                                                                       "Camera Direction",bWriteable=true,PropertyName=CameraDirection)
}

2. Render material, Text, Texture 추가.
기존에 만든 New Event/ ExtHUD/ RenderHUD는 event 형식으로 만든 것이었다.
이 이벤트에 의해 사용할 Action을 만들어야 한다.
유아이용으로  쓰기 위해서 필요한건 텍스쳐나 글자뿌리는 정도 일 것이다.

몇가지의 Action을 설정해 줘야하니 추상클래스 부터 만든다.
class HUDKismetSeqAct_RenderObject extends SequenceAction
 abstract;
요렇게 만들어서 공통적인 부분을 추가해 주면 된다.

class HUDK

 

 

ismetSeqAct_RenderText extends HUDKismetSeqAct_RenderObject;
이 액션에서 필요한 프로퍼티나 확장값들을 셋팅.

나머지 더 추가하고 싶은 것들도 이와 같이 설정해 주면 된다.


아래의 사진은 스크립트로 만든 Render HUD로 키즈멧을 배치하고 Action을 추가해서 설정한 결과화면이다.

TAGS.

Comments