본문 바로가기

블루프린팅/3. 객체지향과 프레임워크

(6)          글쓰기    
[언리얼][블루프린트]게임플레이 프레임워크 클래스 탐색 새 블루프린트를 생성하는 첫 번째 단계 중 하나는 템플릿으로 사용할 부모 클래스를 선택하는 것이다. 버튼에 표시되는 클래스를 기본 클래스라고 하며 게임 플레이 프레임워크의 일부다. 다른 클래스를 부모 클래스로 사용하려면 모든 클래스 카테고리를 확장하고 하는 클래스를 검색한다. 다음은 언리얼은 Object라는 기본 클래스의 계층을 보여준다. Pawn과 Character클래스를 자식으로 갖는 액터클래스와 Scene Component를 자식으로 갖는 Actor Component클래스와는 뿌리가 다르다는것을 알수 있다. Pawn Class Pawn, 폰이란 월드 내 플레이어에 대한 물리적 표현입니다. Pawn 클래스는 플레이어나 AI 가 제어할 수 있는 모든 액터의 베이스 클래스입니다. Pawn 은 월드 내 플..
[블루프린트][객체지향] 컨스트럭션 스크립트 블루프린트 에디터의 패널 중 하나는 컨스트럭션 스크립트라고하며 블루프린트가 처음 레벨에 추가됐을때, 레벨에디터에서 해당 속성이 변경되었을때 또는 런타임에 인스턴스가 생성됐을 때 모든 액터의 블루프린트가 수행하는 특별한 함수다. 예를 들어 레벨별로 블루프린트의 각 인스턴스에 대해 서로 다른 스태틱 메시를 선택할 수 있도록 인스턴스 편집 가능한 스태틱 메시를 사용해서 블루프린트를 생성해 보겠다. 1. 프로젝트를 하나 만들거나 기존것을 사용한다. 2. 콘텐츠브라우저에서 추가 버튼을 클릭후 블루프린트 클래스 옵션을 선택후 부모클래스로 액터를 선택하고 이름을 BP_Construction하고 더블클릭후 블루프린트 에디터를 연다. 3. 컴포넌트패널에서 추가버튼을 클릭후 스태틱메시 컴포넌트를 선택한다. StaticMe..
[블루프린트][객체지향] 액터의 스폰과 파괴 컨텐트 드로워클릭후 +Add를 누르고 블루프린트 클래스를 선택한후 액터를 선택해 이름을 BP_Spawn으로 한다. 더블클릭해서 블루프린트 클래스 에디터를 열고 왼쪽위 Components Add를 눌러 Basic Shapes를 하나 추가한다. 뷰포트의 이벤트그래프를 클릭하고 액터의 인스턴스를 만드는 Sapwn Actor from Class라는 함수가 있다. 이 함수를 이벤트그래프에 추가하려면 이벤트그래프 패널을 우클릭해 컨텍스트 메뉴를 열고 검색 상자에 spawn을 입력해서 결과를 필터링한 다음 함수 이름을 클릭한다. Class는 Fire를 검색해서 Blueprint Effect Fire를 선택해준다. 1을 누르면 실행하게 만들기 위해 컨텍스트메뉴을 열어 Keyboard Events 1을 선택하고 Spaw..
액터관리 액터클래스는 객체에 사용되는 기본 클래스이며 레벨에 배치하거나 생성할 수 있다. 만들 블루프린트의 대부분은 액터 클래스 또는 액터의 자식 클래스를 기반으로 한다. 액터참조 integer, float와 같은 원시타입 변수들은 간단하지만, 객체 또는 액터들은 훨씬 복잡하고 메모리를 차지하기 때문에 전체를 복사하는 것보다는 저장된 메모리위치를 참조하는것이 효율적이다 이러한 타입의 변수를 오브젝트 레퍼런스라고 한다. C에서 포인터 같은 개념이다. 연습 BP_Barrel이 Hit되면 BPFire라는 변수에 연결된 Blueprint_Effect_Fire의 히든상태를 바꾸어 나타나게 한다. 1. 1인칭 템플릿을 기반으로 프로젝트를 만든다 2. 컨텐츠 드어 버튼을 클릭해 콘텐츠 브라우저를 연 다음 추가 버튼을 클릭하고..
OOP개념에 익숙해지기 클래스 객체지향 프로그램을 위해 객체를 만드기 위한 템플릿이다. 틀린 비유일지 모르지만 클래스는 런타임시 존재하지 않고 움직이지 않는다. 클래스를 이용해 객체를 만들었을때 비로서 움직이기 시작한다. 하나의 클래스로 복수의 객체를 만들수 있고 만들어진 객체는 독립적이다. 객체는 객체내에서만 참조할수 있는 것들이 있고 클래스끼리 공유할 수 있는 것들도 있다. 따라서 여러 객체들끼리 통신하는 것이 쉽고도 어려울수 있다. 객체 지향 프로그래밍(Object-Oriented Programming, OOP)이란 컴퓨터 프로그램을 어떤 데이터를 입력받아 순서대로 처리하고 결과를 도출하는 명령어들의 목록으로 보는 시각에서 벗어나 여러 독립적인 부품들의 조합, 즉 객체들의 유기적인 협력과 결합으로 파악하고자 하는 컴퓨터 ..
객체지향 프로그래밍과 게임플레이 프레임워크 블루프린트는 객체지향프로그래밍 OOP의 원리를 기반으로 한다. OOP의 목표중 하나는 프로그래밍 개념을 실제 세계에 더 가깝게 만드는 것이다. 언리얼엔진은 게임 개발에 사용되는 몇가지 필수 클래스를 가지고 있다. 이 클래스들은 게임플레이 프레임워크의 일부다. 게임플레이 프레임워크의 메인 클래스는 액터라고 불린다.