본문 바로가기

블루프린팅/13. 데이터구조및 흐름제어

(4)          글쓰기    
[13장 데이터 구조및 흐름제어] 흐름제어 흐름을 제어하는 조건문은 이전에 Branch를 많이 사용했다. 이건 if문과 비슷하다. Switch와 비슷한 Switch on int, Switch on String, Switch on Enum등도 있다. 복수의 조건문의 오른쪽아래 핀추가+를 눌러 추가하면 된다 Flip Flop A와 B의 True/False 상태를 매번 바꾸어 A,B중 하나만 번갈아가며 실행되게 해준다. 총알발사 마지막 로직에 추가하면 총알을 발사할때 마다 .A/B가 번갈아 가며 출력된다. For Each Loop For Loop는 지정된 인덱스를 차례대로 발생하지만 For Each Loop는입력된 배열엘리먼트및 배열 인덱스를 출력핀에서 사용할 수 있다. DO Once 한번만 실행되는 노드이다 Reset후 다시 실행시킬수 있다. DO ..
[13장 데이터 구조및 흐름제어] 세트와 맵 세트 세트는 또 다른 타입의 컨테이너이다. 세트는 우리나라 말로 집합이다. 보통 엘리먼트의 값은 중복값이 없으며 인덱스가 없다. 집합에 관련된 연산자가 마련되어 있다. SET는 다음과 같은 노드들을 갖고 있다. ADD : 세트에 요소를 추가 ADD ITEMS: 세트에 배열의 요소를 세트에 추가 CONTAINS: 세트에 엘리먼트가 있다면 True를 반환 LENGTH: 세트의 요소수를 반환 TO ARRAY: 세트를 배열에 복사한다. 비용이 많이 든다 CLEAR: 모든 요소를 제거한다 REMOVE: 세트의 엘리먼트를 제거한경우 True 반대의 경우 False를 리턴한다. REMOVE ITEMS: 세트에서 배열에 있는 지정된 요소들을 제거한다. UNION: 두개의 세트를 합쳐친 새로운 세트를 만든다 DIFFER..
[13장 데이터 구조및 흐름제어] 오브젝트레퍼런스 배열예제 이번에는 게임중 적을 스폰시 임의의 위치를 랜덤으로 발생시킬수도 있지만, 보통 여러 후보지를 미리 설정해 놓고 그중 하나를 랜덤으로 선택해서 사용하는 것이 더 편할 수 있다. 무작위 발생시 다른 오브젝트와의 충돌까지 계산해야 하므로. 후보지의 위치를 Vector로 저장할 수도 있지만 여기서는 오브젝트레퍼런스를 사용해 후보지위치에 접근할 것 같다. 1. 시간 콘텐츠가 포함된 삼인칭 템플릿을 기반으로 프로젝트를 생성한다. 블로거는 기존의 프로젝트를 그대로 사용하였다. 2. Content폴더에 BookUE5폴더를 만든다. 3. BookUE5폴더로 들어가 추가버튼을 클릭하고 블루프린트 클래스를 만든다. 부모는 액터로 하고 이름은 BP_RandomSpawner로 지정하고 에디터를 연다. 4. 마이블루프린트 변수+..
4부 고급 블루프린트 13장 데이터 구조및 흐름제어 다양한 컨테이너 타입 살펴보기 컨테이너는 그 인스턴스가 값또는 인스턴스의 모음을 저장할 수 있는 데이터구조타입이다. 컨테이너의 값은 동일한 타입이어야 한다. 컨테이너의 엘리먼트는 엘리먼트에 연결된 레이블을 사용해 나중에 다시 가져올 수 있다. 블루프린트에서 사용가능한 컨테이너는 배열, 세트, 맵이다. 변수를 컨테이너로 바꾸려면 변수 타입 옆에 있는 아이콘을 클릭하고 나타나는 컨테이너중 하나를 선택한다. 아무 프로젝트나 ContainerTest라는 블루프린트>Actor를 하나 만든다. 연습은 아래에서 할것이니까 이건 그냥 보기만 하자 마이 블루프린트 변수+를 클릭 이름을 ContainerExample 타입:인테저로 설정한다. 디테일판넬의 VariableType의 변수이름 옆 파란색 아이콘을 클릭하고 나타나..