내용 : 애니메이션이 계속 반복되서 1이되지 않고있음.
원인 : 애니메이션 이름이 달라서 문제가 됬음. (Animator : Combo, 스크립트 : combo)
기본적으로 플레이어와 비슷하게 작성하지만, 세부 State를 다르게 작성한다.
상태별로 동작할 것도 다르게 구성해야한다.
- 빌드? 개발한 게임을 파일로 변환하는 과정
- 'File' > 'Build Settings'로 이동합니다.
- 'Platform' 목록에서 'Windows'를 선택하고, 'Switch Platform'을 클릭합니다.
- 원하는 씬을 'Scenes in Build' 목록에 추가합니다.
- 'Player Settings'에서 게임의 설정을 변경할 수 있습니다. (예: 회사 이름, 게임 아이콘 등)
- 'Build' 버튼을 클릭하여 빌드를 시작합니다.
- 유의사항
- Windows 빌드는 Windows 운영체제에서만 실행됩니다.
- 빌드 과정에서 발생할 수 있는 문제들, 예를 들면 플러그인 호환성 이슈 등을 확인해야 합니다.
빌드 설정에서 안드로이드는 회사 이름과 제품 이름이 고유값을 사용하기 때문에 중복처리가 일어나지 않는다.
따라서 고유한 이름을 가지도록 만들어주어야한다.
네트워크 엔진으로 멀티플레이 기능을 쉽게 추가할 수 있음
ConnectUsingSettings
메서드 앱이 포톤 클라우드에 연결됩니다.
연결 상태는 PhotonNetwork.IsConnected로 확인할 수 있습니다.
CreateRoom 및 JoinRoom 메서드
CreateRoom 메서드는 새로운 방을 만들고, JoinRoom 메서드는 이미 존재하는 방에 참가
Instantiate 메서드
포톤 네트워크를 통해 새로운 게임 오브젝트를 생성합니다.
이 메서드는 Unity의 Instantiate 메서드와 유사하나, 네트워크를 통해 동기화됩니다.
OnConnectedToMaster 메서드
게임이 포톤 마스터 서버에 성공적으로 연결되면 호출됩니다.
OnJoinedRoom 메서드
로컬 플레이어가 방에 입장하면 호출됩니다.
OnPlayerEnteredRoom 메서드
다른 플레이어가 방에 입장하면 호출됩니다.
동기화 하기 위한 오브젝트에는 PhotonView 컴포넌트를 모두 달아주어야함.
PhotonView는 포톤 네트워크에서 네트워크 상태를 동기화하는 데 사용
이 컴포넌트를 통해 PhotonNetwork.Instantiate를 사용해 생성된 객체가 네트워크를 통해 동기화됩니다.
PhotonView는 주로 Transform 컴포넌트나 사용자 정의 스크립트와 같이 동기화하고자 하는 컴포넌트를 참조합니다.
PhotonTransformView는 위치, 회전, 및 크기를 동기화하는 데 사용되는 컴포넌트입니다. PhotonView에 추가하여 사용하며, 이 컴포넌트를 통해 게임 오브젝트의 움직임이 네트워크를 통해 동기화됩니다.
PhotonAnimatorView는 Animator 컴포넌트를 동기화하는 데 사용됩니다. 이 컴포넌트는 PhotonView와 함께 사용되며, 애니메이션 상태와 변수를 동기화하는 데 사용됩니다.
PhotonRigidbodyView는 Rigidbody 또는 Rigidbody2D 컴포넌트를 동기화하는 데 사용됩니다. 이 컴포넌트는 움직임과 회전을 동기화하여 물리적 효과를 네트워크를 통해 동기화할 수 있습니다.
포톤 뷰에서 View ID가 중요함. 같은 애들끼리 동기화 시키기때문에 같이 묶일 애들 이외에는 값이 다르도록 해주어야한다.
자동 동기화 말고 내가 원할 때 동기화
if (stream.IsWriting)
{
stream.SendNext(rigidbody.position);
stream.SendNext(rigidbody.velocity);
}
else
{
rigidbody.position = (Vector2)stream.ReceiveNext();
//소문자 object는 모든 애들의 최상위 클래스라고 보면됨.
rigidbody.velocity = (Vector2)stream.ReceiveNext();
}
GameObject prefab = Resources.Load<GameObject>("Paddle");
//리소스 불러올 땐 제네릭으로 타입 지정 해주어야됨.