언어:
페이지 정보

4. 레벨 스타트업 스크립트

레벨이 시작되면, 플레이어가 기존에 배치한 플레이어 스타트 액터 위치에 시작되도록 했으면 좋겠습니다. 그러기 위해서는 플레이어를 해당 위치로 옮긴 뒤 방향을 맞춰줘야 합니다.

  1. 레벨 에디터 툴바에서 블루프린트 버튼을 클릭하고 레벨 블루프린트 열기 를 선택하여 블루프린트 에디터에서 현재 레벨 스크립트를 엽니다.

    level_blueprint.png

  2. 이벤트 그래프에 우클릭하고 이벤트 추가 아래 BeginPlay 이벤트 를 선택합니다.

    begin_play.png

  3. 이벤트 그래프에 우클릭하고 Get Game Mode 를 선택하여 현재 Game Mode 인스턴스에 대한 레퍼런스를 구합니다. Return Value 핀을 끌어 놓고 Cast to BP_OdinGameMode (BP_OdinGameMode 에 형변환)을 선택합니다. BeginPlay 이벤트의 실행 출력 핀을 BP_OdinGameMode 에 형변환 노드의 실행 입력 핀에 연결합니다.

    game_mode.png

  4. As BP Odin Game Mode 핀을 끌어 놓고 End Loading Sequence 를 선택합니다. 레벨 로드 이후 필요한 몇 가지 청소 작업을 해줍니다.

    end_loading.png

  5. As BP Odin Game Mode 출력 핀을 끌어 놓고 (game 카테고리 아래) Get Main Pawn 을 선택합니다. 플레이어로의 레퍼런스를 구할 수 있는데, 이를 통해 위치를 설정할 수 있습니다.

    player.png

  6. Main Pawn 핀을 끌어 놓고 (Utilities > Transformation 카테고리 아래) Teleport 를 선택합니다. End Loading Sequence 노드의 실행 출력 핀을 Teleport 노드의 실행 입력 핀에 연결합니다.

    teleport.png

  7. 레벨 에디터 뷰포트에서 기존에 배치한 플레이어 스타트 액터를 선택합니다. 블루프린트 에디터로 돌아와 이벤트 그래프에 우클릭하고 Create a Reference to [ActorName] ([액터 이름]으로의 레퍼런스 생성)을 선택합니다.

    player_start.png

  8. 플레이어 스타트 레퍼런스의 출력 핀을 끌어 놓고 Get ActorLocation 을 선택합니다. Return Value 출력을 Teleport 노드의 Dest Location 입력에 연결합니다.

    location.png

  9. 플레이어 스타트 레퍼런스의 출력 핀을 끌어 놓고 Get ActorRotation 을 선택합니다. Return Value 출력을 Teleport 노드의 Dest Rotation 입력에 연결합니다.

    Copy Node Graph

    rotation.png

    이 이미지 좌상단 구석의 아이콘을 클릭하여 블루프린트 그래프를 복사한 뒤 프로젝트에 붙여넣습니다.

결과

레벨 에디터 툴바의 플레이 를 클릭하면 이제 플레이어 스타트 액터 위치에서 시작하여 로봇이 오는 방향을 향하고 있을 것입니다.

test.png