728x90
안녕하세요. 인텔리원스튜디오(IntelliOneStudio)입니다.
오늘은 GPT-4, GPT-4o 활용해서 텔리포트 기능을 구현해볼까해요.
[오늘의 목표] GPT-4, GPT-4o 활용해서 텔리포트 기능 구현하기
1. 텔리포트 스크립트 구현
2.실행하고 확인하기
※ ChatGPT 답변 내용 중 제가 별도로 표시한 파란색 내용을 기준으로 읽으시면 좀 더 이해가 쉽게 될거예요.
텔리포트 구현을 위해 트리거 스크립트 활용
플레이어가 텔리포트 위치에 왔을 때 원하는 곳으로 이동하기 위해 아래 트리거 스크립트를 이용할거예요.
트리거 스크립트는 아래 기사를 참고하면 되요.
2024.05.09 - [디지털노마드] - [챗GPT게임개발18] ChatGPT를 활용하여 트리거와 이벤트 시스템을 활용
텔리포트 위치는 PlatformerModel 클래스에서 관리
PlatformModel 클래스는 게임 데이터를 관리하는 클래스예요.
그래서 이 클래스에 텔리포트 위치 변수를 추가하는 게 좋아요.
PlatformerModel 클래스에 텔레포트되는 위치를 저장하는 것이 좋습니다. 이렇게 하면 게임 데이터와 관련된 모든 정보를 한 곳에서 관리할 수 있어 코드가 더 깔끔해지고 유지보수가 용이해집니다.
using Platformer.Mechanics;
using UnityEngine;
namespace Platformer.Model
{
[System.Serializable]
public class PlatformerModel
{
public Cinemachine.CinemachineVirtualCamera virtualCamera;
public PlayerController player;
public Transform spawnPoint;
public float jumpModifier = 1.5f;
public float jumpDeceleration = 0.5f;
// 텔레포트 위치 추가
public Vector3 teleportPosition;
}
}
PlayerController 클래스에 텔리포트 함수를 추가
플레이어가 텔리포트 위치에 닿으면 위치 이동할 수 있도록 함수를 생성해요.
PlayerController 클래스에서 PlatformerModel에 있는 텔레포트 위치 변수를 사용하도록 수정합니다.
public void TeleportAndMoveCamera()
{
// 플레이어 위치 업데이트
transform.position = model.teleportPosition;
Debug.Log("Teleported to: " + model.teleportPosition);
// 카메라가 새 위치를 추적하도록 업데이트
if (model != null && model.virtualCamera != null)
{
model.virtualCamera.m_Follow = transform;
model.virtualCamera.m_LookAt = transform;
Debug.Log("Camera moved to follow the player.");
}
else
{
Debug.LogWarning("Virtual camera not assigned.");
}
}
Unity Editor에서 설정하기
이제 만들어진 스크립트를 아래와 같이 적용해봐요.
Unity Editor에서 SimpleTrigger의 onTriggerEnter 이벤트를 설정할 때, 플레이어의 teleportPosition을 설정하고 TeleportAndMoveCamera 메서드를 호출하도록 설정합니다.
- 트리거 오브젝트의 SimpleTrigger 컴포넌트의 onTriggerEnter 이벤트에 플레이어 오브젝트를 드래그하여 할당합니다.
- 드롭다운 메뉴에서 PlayerController -> TeleportAndMoveCamera를 선택합니다.
- teleportPosition은 코드 내에서 설정하거나 다른 방법으로 설정할 수 있습니다. 예를 들어, SimpleTrigger의 teleportDestination을 사용하여 설정할 수 있습니다.
이제 플레이어가 특정 지점에 도달하면 teleportPosition으로 텔레포트되고, 카메라도 함께 이동합니다.
실행하고 확인해보기
모든 변경 사항을 저장하고 실행하면 되요.
아래 영상과 플레이어가 외계인을 만나면 특정 지역으로 위치를 이동해요
오늘은 GPT-4, GPT-4o 활용해서 텔리포트 기능을 구현해봤어요.
지금까지,
언제나 성장하는 인텔리원스튜디오(IntelliOneStudio)입니다.
감사합니다.
728x90
'디지털노마드' 카테고리의 다른 글
[챗GPT게임개발34] GPT-4, GPT-4o 활용해서 흔들리는 다리 만들기 (4) | 2024.05.24 |
---|---|
[챗GPT게임개발33] GPT-4, GPT-4o 활용해서 급격한 지면 경사에서 자연스럽게 이동하기 (4) | 2024.05.23 |
[챗GPT게임개발31] GPT-4, GPT-4o 활용해서 플레이어의 경사면 오르기 구현하기 (69) | 2024.05.19 |
[챗GPT게임개발30] GPT-4, GPT-4o 활용해서 플레이어의 총알 발사 애니메이션 적용하기(1) (2) | 2024.05.18 |
[챗GPT게임개발29] GPT-4, GPT-4o 활용해서 산탄 효과(Particle System)를 플레이어에 적용하기 (76) | 2024.05.18 |