유니티에서 온라인 멀티플레이어 게임을 만들고 싶은 4홀에서 방에 들어가고 싶어요.
이번 목표.
마지막 상태 마이그레이션 다이어그램에서 이미지에 빨간색 제로 둘러싸인 근처를 만듭니다.
이미지 맵
현관
http://www.monobitengine.com/doc/mun/contents/Reference/Glossary.htm#%E3%83%AD%E3%83%93%E3%83%BC
특정한 조건으로 룸메이트 같은 거 나눠도 돼요?
소프라의 정규 성냥과 잘 어울리는 느낌으로 대충 분리할 때 사용하는 것이 좋다.
이번에는 특별히 여러 개의 홀을 만들 이유가 없어서 기본 홀을 사용하고 싶습니다.
현관 입실 처리
기본 로비에 들어가는 이벤트를 추가합니다.
http://www.monobitengine.com/doc/mun/contents/FeatureClient/AutoJoinLobby.htm MonobitEngine.MonobitNetwork.autoJoinLobby = true;
이 코드는 Monobit Network입니다.ConnectServer () 를 호출하기 전에 추가하면 기본 로비로 이동합니다.
그러니까 추가해 봐.
※ 변경점이 있는 곳을 제외한 곳에서 사랑을 베기using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;
using MonobitEngine;
public class SceneTitle : MonobitEngine.MonoBehaviour
{
// スタートボタンが押された際に行いたい処理
private void OnClickStart()
{
// 自動でデフォルトのロビーへ入室する
MonobitNetwork.autoJoinLobby = true;
// スタートボタンが押されたときにサーバーへ接続させたい
// 引数にはゲームのバージョンをいれてあげるといいです
MonobitEngine.MonobitNetwork.ConnectServer("DungeonAction_v_1_0");
}
}
이렇게 하면 로비에 들어갈 수 있다.
로비 입실 성공 후 즉시 처리할 수 있도록 원본 코드를 더욱 변경할 것입니다.
http://www.monobitengine.com/doc/mun/contents/FeatureClient/CallbackFunction.htm public void OnJoinedLobby()
이 함수만 추가하면 로비에 들어간 후의 처리를 실현할 수 있다.
※ MonobitNetwork.autoJoinLobby
를 true
로 설정하면 OnConnectedToServer()
라고 부르지 않고 OnJoinedLobby()
대신 OnConnectedToServer()
에 설치된 내용을 OnJoinedLobby()
로 옮깁니다.using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;
using MonobitEngine;
public class SceneTitle : MonobitEngine.MonoBehaviour
{
// スタートボタンが押された際に行いたい処理
private void OnClickStart()
{
// 自動でデフォルトのロビーへ入室する
MonobitNetwork.autoJoinLobby = true;
// スタートボタンが押されたときにサーバーへ接続させたい
// 引数にはゲームのバージョンをいれてあげるといいです
MonobitEngine.MonobitNetwork.ConnectServer("DungeonAction_v_1_0");
}
/// <summary>ロビーへ入室した際に呼ばれるコールバック</summary>
private void OnJoinedLobby()
{
// ロビー入室に成功したのでロビー画面へ切り替える
SceneManager.LoadScene("Lobby");
}
}
로비에 들어가면 로비 화면으로 전환할 수 있다.
로비 화면
버튼을 누르면 장면을 전환하는 기능과 제목 화면으로 돌아갈 때 서버를 차단하는 기능을 실현한다.
로비에 들어갔는지 확인하다
http://www.monobitengine.com/doc/doxygen/client/html/class_monobit_engine_base_1_1_monobit_network.html#ab4b92a64b1b2657f1eda9332186c721c
bool MonobitEngineBase.MonobitNetwork.inLobby
이렇게 하면 로비에 들어간 상태를 확인할 수 있다.
로비에 들어가지 않은 상태에서 가고 싶지 않은 처리를 제한하는 데 쓰일 수 있다.
서버에서 연결 해제
MonobitEngine.MonobitNetwork.DisconnectServer();
그것을 사용하여 서버에서 연결을 끊습니다.void OnDisconnectedFromServer()
DisconnectServer()
이후 함수라고 불린다.
서버가 끊긴 후 진행하고 싶은 처리는 여기에 적혀 있습니다.
상기 기능에 따라 로비 화면 제어를 제작한다.
※ uGUI 설치는 생략되었습니다./// <summary>ロビー入室後の画面</summary>
public class SceneLobby : MonobitEngine.MonoBehaviour
{
// Start is called before the first frame update
private void Start()
{
// ロビーへの入室が成されているかを確認する
if(!MonobitNetwork.inLobby)
{
Debug.Log("Not in lobby");
return;
}
/*-------------------------------ロビー画面変更後のuGUI配置などの処理-----------------------------*/
}
/// <summary>MUNサーバーとの接続を切った際に呼ばれるコールバック</summary>
private void OnDisconnectedFromServer()
{
// サーバーから切断された後にタイトル画面に戻るようにする
SceneManager.LoadScene("Title");
}
/// <summary>ルーム作成画面へ移動するボタンを押した際に呼ばれる</summary>
private void OnClickCreateRoom()
{
SceneManager.LoadScene("CreateRoom");
}
/// <summary>ルーム入室画面へ移動するボタンを押した際に呼ばれる</summary>
private void OnClickJoinRoom()
{
SceneManager.LoadScene("JoinRoom");
}
/// <summary>タイトル画面へ戻るボタンを押した際に呼ばれる</summary>
private void OnClickBack()
{
// サーバーから切断する
MonobitNetwork.DisconnectServer();
}
}
이로써 로비 화면에 필요한 기능이 설치되었다.
다음에는 방을 만드는 그림을 만들고 싶어요.
자료
http://www.monobitengine.com/doc/mun/contents/Reference/Glossary.htm#%E3%83%AD%E3%83%93%E3%83%BC
http://www.monobitengine.com/doc/mun/contents/FeatureClient/AutoJoinLobby.htm
http://www.monobitengine.com/doc/mun/contents/FeatureClient/CallbackFunction.htm
http://www.monobitengine.com/doc/doxygen/client/html/class_monobit_engine_base_1_1_monobit_network.html#ab4b92a64b1b2657f1eda9332186c721c
Reference
이 문제에 관하여(유니티에서 온라인 멀티플레이어 게임을 만들고 싶은 4홀에서 방에 들어가고 싶어요.), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/koyuki2007/items/f0e16adc3938081eb06e
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
http://www.monobitengine.com/doc/mun/contents/Reference/Glossary.htm#%E3%83%AD%E3%83%93%E3%83%BC
특정한 조건으로 룸메이트 같은 거 나눠도 돼요?
소프라의 정규 성냥과 잘 어울리는 느낌으로 대충 분리할 때 사용하는 것이 좋다.
이번에는 특별히 여러 개의 홀을 만들 이유가 없어서 기본 홀을 사용하고 싶습니다.
현관 입실 처리
기본 로비에 들어가는 이벤트를 추가합니다.
http://www.monobitengine.com/doc/mun/contents/FeatureClient/AutoJoinLobby.htm
MonobitEngine.MonobitNetwork.autoJoinLobby = true;
이 코드는 Monobit Network입니다.ConnectServer () 를 호출하기 전에 추가하면 기본 로비로 이동합니다.그러니까 추가해 봐.
※ 변경점이 있는 곳을 제외한 곳에서 사랑을 베기
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;
using MonobitEngine;
public class SceneTitle : MonobitEngine.MonoBehaviour
{
// スタートボタンが押された際に行いたい処理
private void OnClickStart()
{
// 自動でデフォルトのロビーへ入室する
MonobitNetwork.autoJoinLobby = true;
// スタートボタンが押されたときにサーバーへ接続させたい
// 引数にはゲームのバージョンをいれてあげるといいです
MonobitEngine.MonobitNetwork.ConnectServer("DungeonAction_v_1_0");
}
}
이렇게 하면 로비에 들어갈 수 있다.로비 입실 성공 후 즉시 처리할 수 있도록 원본 코드를 더욱 변경할 것입니다.
http://www.monobitengine.com/doc/mun/contents/FeatureClient/CallbackFunction.htm
public void OnJoinedLobby()
이 함수만 추가하면 로비에 들어간 후의 처리를 실현할 수 있다.※
MonobitNetwork.autoJoinLobby
를 true
로 설정하면 OnConnectedToServer()
라고 부르지 않고 OnJoinedLobby()
대신 OnConnectedToServer()
에 설치된 내용을 OnJoinedLobby()
로 옮깁니다.using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;
using MonobitEngine;
public class SceneTitle : MonobitEngine.MonoBehaviour
{
// スタートボタンが押された際に行いたい処理
private void OnClickStart()
{
// 自動でデフォルトのロビーへ入室する
MonobitNetwork.autoJoinLobby = true;
// スタートボタンが押されたときにサーバーへ接続させたい
// 引数にはゲームのバージョンをいれてあげるといいです
MonobitEngine.MonobitNetwork.ConnectServer("DungeonAction_v_1_0");
}
/// <summary>ロビーへ入室した際に呼ばれるコールバック</summary>
private void OnJoinedLobby()
{
// ロビー入室に成功したのでロビー画面へ切り替える
SceneManager.LoadScene("Lobby");
}
}
로비에 들어가면 로비 화면으로 전환할 수 있다.로비 화면
버튼을 누르면 장면을 전환하는 기능과 제목 화면으로 돌아갈 때 서버를 차단하는 기능을 실현한다.
로비에 들어갔는지 확인하다
http://www.monobitengine.com/doc/doxygen/client/html/class_monobit_engine_base_1_1_monobit_network.html#ab4b92a64b1b2657f1eda9332186c721c
bool MonobitEngineBase.MonobitNetwork.inLobby
이렇게 하면 로비에 들어간 상태를 확인할 수 있다.로비에 들어가지 않은 상태에서 가고 싶지 않은 처리를 제한하는 데 쓰일 수 있다.
서버에서 연결 해제
MonobitEngine.MonobitNetwork.DisconnectServer();
그것을 사용하여 서버에서 연결을 끊습니다.void OnDisconnectedFromServer()
DisconnectServer()
이후 함수라고 불린다.서버가 끊긴 후 진행하고 싶은 처리는 여기에 적혀 있습니다.
상기 기능에 따라 로비 화면 제어를 제작한다.
※ uGUI 설치는 생략되었습니다.
/// <summary>ロビー入室後の画面</summary>
public class SceneLobby : MonobitEngine.MonoBehaviour
{
// Start is called before the first frame update
private void Start()
{
// ロビーへの入室が成されているかを確認する
if(!MonobitNetwork.inLobby)
{
Debug.Log("Not in lobby");
return;
}
/*-------------------------------ロビー画面変更後のuGUI配置などの処理-----------------------------*/
}
/// <summary>MUNサーバーとの接続を切った際に呼ばれるコールバック</summary>
private void OnDisconnectedFromServer()
{
// サーバーから切断された後にタイトル画面に戻るようにする
SceneManager.LoadScene("Title");
}
/// <summary>ルーム作成画面へ移動するボタンを押した際に呼ばれる</summary>
private void OnClickCreateRoom()
{
SceneManager.LoadScene("CreateRoom");
}
/// <summary>ルーム入室画面へ移動するボタンを押した際に呼ばれる</summary>
private void OnClickJoinRoom()
{
SceneManager.LoadScene("JoinRoom");
}
/// <summary>タイトル画面へ戻るボタンを押した際に呼ばれる</summary>
private void OnClickBack()
{
// サーバーから切断する
MonobitNetwork.DisconnectServer();
}
}
이로써 로비 화면에 필요한 기능이 설치되었다.다음에는 방을 만드는 그림을 만들고 싶어요.
자료
http://www.monobitengine.com/doc/mun/contents/Reference/Glossary.htm#%E3%83%AD%E3%83%93%E3%83%BC
http://www.monobitengine.com/doc/mun/contents/FeatureClient/AutoJoinLobby.htm
http://www.monobitengine.com/doc/mun/contents/FeatureClient/CallbackFunction.htm
http://www.monobitengine.com/doc/doxygen/client/html/class_monobit_engine_base_1_1_monobit_network.html#ab4b92a64b1b2657f1eda9332186c721c
Reference
이 문제에 관하여(유니티에서 온라인 멀티플레이어 게임을 만들고 싶은 4홀에서 방에 들어가고 싶어요.), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/koyuki2007/items/f0e16adc3938081eb06e
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
Reference
이 문제에 관하여(유니티에서 온라인 멀티플레이어 게임을 만들고 싶은 4홀에서 방에 들어가고 싶어요.), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/koyuki2007/items/f0e16adc3938081eb06e텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)