프로그래밍 농장

Adding Components to a Class BP [ Unreal Engine ] 본문

Unreal Engine

Adding Components to a Class BP [ Unreal Engine ]

Tennessee201 2021. 9. 1.
728x90

이전 시간과 같이 클래스 블루프린트를 만들기로하였다면, 해당 블루프린트의 부모클래스를 정의하여야하며, 이를 통해 부모 클래스로부터 기능들을 상속받을수있다.

 

우리는 이를 통해 Light_BP를 생성하였고, 이는 레벨내에 배치할수있다는 의미이다. 

이번에는 클래스 블루프린트와 이를 구성할 컴포넌트를 만들겠습니다. 

콘텐츠 브라우저 -> Blueprint 폴더에서 Light_BP 블루프린트를 실행합니다.  그럼 아래와 같이 디폴트 창이 뜰떄가 있는데, 이는 말그대로 설정값의 디폴트값들이며, 추후 필요할떄 사용할수있다. 

일단은 풀 블루프린트 에디터 열기를 누르면 화면이 블루프린트의 이벤트 그래프로 바뀐다. 

블루프린트의 이벤트 그래프

이후 상단의 '뷰포트'를 클릭시 아래와같은 화면이 나올것이다. 

가장 먼저 할 일은 블루프린트에 컴포넌트를 추가하는 것이다. 

저번 시간에 해보았듯이, 컴포넌트의 작업은 좌상단에서 하거나, 콘텐츠 브라우저에서 우클릭을 하여 고를수있다. 

 

아래와 같이 클래스 상에 Lamp 컴포넌트를 새로 추가해보겠다. 

블루프인트에 컴포넌트가 추가된 모습

다음으로는 이 컴포넌트를  root 컴포넌트로 만들어 주는것이다.  이는 다른 모든 항목들과 연관 된다는 뜻이다. 

위와같이 램프 컴포넌트를 디폴트루트위에 드래그&드롭 해주게되면, LampFixture 컴포넌트가 이 블루프린트의 루트가 된다. 

이후 컴포넌트 추가에서 SpotLight 를 선택하여 아래와 같이 LampFixture아래에 추가해준다. 이후 컴파일->저장.

 

이후, 기존의 클래스 블루프린트로 돌아와서 하단 Component창의 Blueprint를 보면 이전에 작업하였던 LampFixture를 레벨 상에 추가할수있다는 것을 확인할수있을것이다. 

이후 아래와 같이 직접 생성한 컴포넌트를 레벨 상에 추가할수있다. 하지만 여기서 컴포넌트의 세부적인 설정 ( 라이트의 방향 . . ) 들은 에디터 상에서 직접 바꿀수있는것같지만 , 이 작업은 클래스 블루프린트에서 해주어야한다.

 

<클래스 블루프린트>

이후 Grid의 감도 조절, 각도조절 등을 통하여 조명에서 라이트가 나오는 각도와 밝기 등을 아래와 같이 설정할수있다. 

 

이제는 저번과 같이 간단한 상호작용을 위하여 Box Collision을 추가해준다. 이는 Box trigger과 같은 작업을 수행한다.

 

이후 아래와 같이 클래스 블루프린트에서 Box Collision의 각도를 맞추어 상호작용의 준비를 해준다. 

728x90