유니티
-
private void Awake() { GetComponent().Flags |= NetworkObjectFlags.MasterClientObject;} 포톤 퓨전에서 해당 내용은 NetworkObject의 관리자를 MasterClient로 설정한다는 뜻이다. 네트워크는 각각의 씬에서 네트워크상 생성된 오브젝트 또는 서로 동기화되는 오브젝트를 제외하면 각각 동작하게 되는데, 해당 플래그를 세우면Shared모드에서는 "처음 서버를 개설한 플레이어"가 해당 객체에 대한 네트워크상의 권한을 가진다. 각각의 클라이언트에서 동작은 할지 몰라도 아래와 같은 경우가 있다면,마스터 클라이언트[ "처음 서버를 개설한 플레이어"]에서만 해당 구문이 실행이 되는 것이다.만약 해당 플레이어가 나가 권한의 주체가 변경된..
flag |= NetworkObjectFlags.MasterClientObject;private void Awake() { GetComponent().Flags |= NetworkObjectFlags.MasterClientObject;} 포톤 퓨전에서 해당 내용은 NetworkObject의 관리자를 MasterClient로 설정한다는 뜻이다. 네트워크는 각각의 씬에서 네트워크상 생성된 오브젝트 또는 서로 동기화되는 오브젝트를 제외하면 각각 동작하게 되는데, 해당 플래그를 세우면Shared모드에서는 "처음 서버를 개설한 플레이어"가 해당 객체에 대한 네트워크상의 권한을 가진다. 각각의 클라이언트에서 동작은 할지 몰라도 아래와 같은 경우가 있다면,마스터 클라이언트[ "처음 서버를 개설한 플레이어"]에서만 해당 구문이 실행이 되는 것이다.만약 해당 플레이어가 나가 권한의 주체가 변경된..
2024.06.18 -
EventData.Position && Screen 해당 포지션은 현재 보고 있는 Screen의 실제 크기 내 값을 가짐 Screen = 1080 * 2340터치 좌하단 : 31.18 * 29.41터치 좌 상단 : 1045.88 * 2308.82 RectTrasform.rect.position Pivot을 기준으로 현재 트랜스폼 좌측하단의 위치값 1,1 인 피봇 위치에서 좌측하단 MIN에 해당하는 값은 -600, -600피봇을 기준으로 좌측 하단의 값을 나타내는 것이 Position이다그렇기에, Pivot 1,1 을 기준으로 좌하단 값은 -600,-600을 이동해야 도달할 수 있다. 만약에 Anchors를 변경해도 그러냐?Pivot만 같다면 똑같은 결과값이다. AnchorPosition실제 인..
UI를 위한 Position(rect,EventData.position...)EventData.Position && Screen 해당 포지션은 현재 보고 있는 Screen의 실제 크기 내 값을 가짐 Screen = 1080 * 2340터치 좌하단 : 31.18 * 29.41터치 좌 상단 : 1045.88 * 2308.82 RectTrasform.rect.position Pivot을 기준으로 현재 트랜스폼 좌측하단의 위치값 1,1 인 피봇 위치에서 좌측하단 MIN에 해당하는 값은 -600, -600피봇을 기준으로 좌측 하단의 값을 나타내는 것이 Position이다그렇기에, Pivot 1,1 을 기준으로 좌하단 값은 -600,-600을 이동해야 도달할 수 있다. 만약에 Anchors를 변경해도 그러냐?Pivot만 같다면 똑같은 결과값이다. AnchorPosition실제 인..
2024.06.15 -
설명 수평에 존재하는 자식 레이아웃에 대해 자동으로 크기에 맞추어 정렬을 수행한다. Reverse Arrangement역 정렬 Controller Child SizeHorizontal LayOut Group가 들어가 있는 부모 레이아웃의 크기 맞춘다. Spacing , Padding을 제외한 공백을 모두 채움단, Child Force 옵션을 체크해야 강제할 수 있음 Use Child Scale 정렬 시 자식의 Scale 크기를 고려할 것인지를 나타냄 EX) 정렬 시 RectTransform의 Width * Scale.x 값을 사용하는 것과 Width만을 사용하는 것 Child Force Expand 남은 공간에 대한 확장의 유무 현재 Horizontal LayOut Group이 삽입되어 있는 ..
[Unity]Horizontal Layout Group설명 수평에 존재하는 자식 레이아웃에 대해 자동으로 크기에 맞추어 정렬을 수행한다. Reverse Arrangement역 정렬 Controller Child SizeHorizontal LayOut Group가 들어가 있는 부모 레이아웃의 크기 맞춘다. Spacing , Padding을 제외한 공백을 모두 채움단, Child Force 옵션을 체크해야 강제할 수 있음 Use Child Scale 정렬 시 자식의 Scale 크기를 고려할 것인지를 나타냄 EX) 정렬 시 RectTransform의 Width * Scale.x 값을 사용하는 것과 Width만을 사용하는 것 Child Force Expand 남은 공간에 대한 확장의 유무 현재 Horizontal LayOut Group이 삽입되어 있는 ..
2024.06.14 -
Snap 또는 정렬https://blog.naver.com/gold_metal/223276261945 [팁] 게임오브젝트를 편리하게 배치해보자!안녕하세요. 골드메탈입니다. 이번에 가져온 팁은 게임 오브젝트를 장면에서 편리하게 배치해보자 편입니다...blog.naver.com
유니티 알쓸유잡Snap 또는 정렬https://blog.naver.com/gold_metal/223276261945 [팁] 게임오브젝트를 편리하게 배치해보자!안녕하세요. 골드메탈입니다. 이번에 가져온 팁은 게임 오브젝트를 장면에서 편리하게 배치해보자 편입니다...blog.naver.com
2024.06.13 -
StateAuthority * NetworkBehavior 을 상속받은 객체Object.StateAuthority = StateAuthority ! 씬에 존재하는 네트워 오브젝트는 제일 처음 불러온 플레이어가 권한을 가진다.권한을 가진 오브젝트가 생성을 하게되면 생성된 오브젝트의 권한도 가져온다. NetworkObject 구성 요소 개요네트워크 개체는 NetworkObject 구성 요소가 있는 게임 개체이며 Room의 단일 네트워크 개체를 나타냅니다.네트워크 ID서버는 Room에 있는 해당 개체에 대한 고유한 정수 식별자인 NetworkId 값을 NetworkObject 구성 요소에 할당합니다. 이 NetworkId는 모든 피어에서 일관되며 네트워크의 개체를 참조하는 데 사용됩니다.로컬 네트워크 개체 인..
Fusion 기본 정보StateAuthority * NetworkBehavior 을 상속받은 객체Object.StateAuthority = StateAuthority ! 씬에 존재하는 네트워 오브젝트는 제일 처음 불러온 플레이어가 권한을 가진다.권한을 가진 오브젝트가 생성을 하게되면 생성된 오브젝트의 권한도 가져온다. NetworkObject 구성 요소 개요네트워크 개체는 NetworkObject 구성 요소가 있는 게임 개체이며 Room의 단일 네트워크 개체를 나타냅니다.네트워크 ID서버는 Room에 있는 해당 개체에 대한 고유한 정수 식별자인 NetworkId 값을 NetworkObject 구성 요소에 할당합니다. 이 NetworkId는 모든 피어에서 일관되며 네트워크의 개체를 참조하는 데 사용됩니다.로컬 네트워크 개체 인..
2024.06.06 -
[Version 2.0.0]https://doc.photonengine.com/fusion/current/game-samples/fusion-asteroids Fusion 2 Asteroids Simple | Photon EngineThe sample is a beginner sample showing how to implement simple arcade top-down gameplay. The sample comes in two variants: Asteroids Host Mode Sidoc.photonengine.com ! Player PlayerDataNetworked.cs플레이어의 모든 정보를 가지고 있으며, 모든 클라이언트에 정보가 복제되는 것을 보장한다.스폰과 디스폰 시 정보 초기화도 진..
[Fusion] Asteroids.SharedSimple 뜯어보기[Version 2.0.0]https://doc.photonengine.com/fusion/current/game-samples/fusion-asteroids Fusion 2 Asteroids Simple | Photon EngineThe sample is a beginner sample showing how to implement simple arcade top-down gameplay. The sample comes in two variants: Asteroids Host Mode Sidoc.photonengine.com ! Player PlayerDataNetworked.cs플레이어의 모든 정보를 가지고 있으며, 모든 클라이언트에 정보가 복제되는 것을 보장한다.스폰과 디스폰 시 정보 초기화도 진..
2024.06.06 -
https://doc.photonengine.com/ko-kr/fusion/current/tutorials/shared-mode-basics/4-network-properties Fusion 2 4 - Network Properties | Photon EngineThis section shows how to synchronize additional data over the network in addition to the player's position using . Fusion synchronizes the transformdoc.photonengine.com 1. 네트워크 사용하여 스크립트 내 변수 변경기본적으로 NetworkObjectsFusion은 NetworkTransform과 같은 Fusion ..
photon fusion tutorial #3https://doc.photonengine.com/ko-kr/fusion/current/tutorials/shared-mode-basics/4-network-properties Fusion 2 4 - Network Properties | Photon EngineThis section shows how to synchronize additional data over the network in addition to the player's position using . Fusion synchronizes the transformdoc.photonengine.com 1. 네트워크 사용하여 스크립트 내 변수 변경기본적으로 NetworkObjectsFusion은 NetworkTransform과 같은 Fusion ..
2024.06.04 -
https://doc.photonengine.com/ko-kr/fusion/current/tutorials/shared-mode-basics/3-movement-and-camera Fusion 2 3 - Movement & Camera | Photon EngineIn Part 3 the existing scene gets extended by adding player movement based on player input and a first person camera that follows the correct player odoc.photonengine.com 1. 플레이어 이동 Fusion은 이존 유니티 프레임 워크인 Update FixedUpdate를 사용해서는 안된다.FixedUpdateNetwo..
Photon Fusion Tutorial #2https://doc.photonengine.com/ko-kr/fusion/current/tutorials/shared-mode-basics/3-movement-and-camera Fusion 2 3 - Movement & Camera | Photon EngineIn Part 3 the existing scene gets extended by adding player movement based on player input and a first person camera that follows the correct player odoc.photonengine.com 1. 플레이어 이동 Fusion은 이존 유니티 프레임 워크인 Update FixedUpdate를 사용해서는 안된다.FixedUpdateNetwo..
2024.06.04 -
https://doc.photonengine.com/ko-kr/fusion/current/tutorials/shared-mode-basics/1-getting-started Fusion 2 1 - Getting Started | Photon EngineFusion Shared Mode Basics explains the initial steps required to start a Fusion project. A general understanding of Unity and C# is expected.doc.photonengine.com 1. SDK 다운로드 및 기본 설정 Edit > Project Settings > Editor > Asset Serialization > Mode. => ForceMod..
Fusion Shared Tutorial #1https://doc.photonengine.com/ko-kr/fusion/current/tutorials/shared-mode-basics/1-getting-started Fusion 2 1 - Getting Started | Photon EngineFusion Shared Mode Basics explains the initial steps required to start a Fusion project. A general understanding of Unity and C# is expected.doc.photonengine.com 1. SDK 다운로드 및 기본 설정 Edit > Project Settings > Editor > Asset Serialization > Mode. => ForceMod..
2024.06.04 -
https://doc.photonengine.com/ko-kr/fusion/current/fusion-intro Fusion 2 소개 | Photon EngineFusion은 유니티를 위한 새로운 고성능 상태 동기화 네트워킹 라이브러리입니다. Fusion은 기본적으로 데이터 압축, 클라이언트 측 예측 및 지연 보상과 같은 고급 기능을 제공하는 동시에 일반적doc.photonengine.com Server서버가 모든 오브젝트에 대한 권한을 가진다.클라는 서버에 입력을 요청하거나 RPC를 통한 네트워크 객체만 변경이 가능하다.클라이언트 측 예측클라이언트 측 요청을 서버로부터 받기 전 클라이언트 측 오브젝트의 움직임을 예측하여 처리지연이 있더라도 다음 동작을 예측하기에 지연이 없는 것처럼 느낌.단 요청받은..
Photon Fusion Pun2https://doc.photonengine.com/ko-kr/fusion/current/fusion-intro Fusion 2 소개 | Photon EngineFusion은 유니티를 위한 새로운 고성능 상태 동기화 네트워킹 라이브러리입니다. Fusion은 기본적으로 데이터 압축, 클라이언트 측 예측 및 지연 보상과 같은 고급 기능을 제공하는 동시에 일반적doc.photonengine.com Server서버가 모든 오브젝트에 대한 권한을 가진다.클라는 서버에 입력을 요청하거나 RPC를 통한 네트워크 객체만 변경이 가능하다.클라이언트 측 예측클라이언트 측 요청을 서버로부터 받기 전 클라이언트 측 오브젝트의 움직임을 예측하여 처리지연이 있더라도 다음 동작을 예측하기에 지연이 없는 것처럼 느낌.단 요청받은..
2024.06.04 -
*테스트 기기 Galaxy S8 텍스쳐 대역폭을 줄이기 위한 크기 변경 GPU가 메모리에 저장되어 있는 텍스쳐를 읽어오는데, 모바일에서는 메모리의 대역폭이 문제가 될 수 있기 때문에 사이즈를 줄이고, 압축포맷을 변경하여 전체적인 크기를 줄인다. -별로 효과가 없었다. 버텍스 수 줄이기 버텍스 수가 2M 정도 되는데 이것 때문에 GPU 병목이 발생한다는 것으로 어느정도 결론이 났음. * 아래 버텍스 Simpifier API를 활용해 병합된 메시들을 Vertex를 줄여서 생성할 것임 https://thegamedev.guru/unity-gpu-performance/unity-mesh-simplifier/ Simplify Your Life With Unity Mesh Simplifier Lose those e..
[Unity] GPU 병목 해결 버텍스 줄이기*테스트 기기 Galaxy S8 텍스쳐 대역폭을 줄이기 위한 크기 변경 GPU가 메모리에 저장되어 있는 텍스쳐를 읽어오는데, 모바일에서는 메모리의 대역폭이 문제가 될 수 있기 때문에 사이즈를 줄이고, 압축포맷을 변경하여 전체적인 크기를 줄인다. -별로 효과가 없었다. 버텍스 수 줄이기 버텍스 수가 2M 정도 되는데 이것 때문에 GPU 병목이 발생한다는 것으로 어느정도 결론이 났음. * 아래 버텍스 Simpifier API를 활용해 병합된 메시들을 Vertex를 줄여서 생성할 것임 https://thegamedev.guru/unity-gpu-performance/unity-mesh-simplifier/ Simplify Your Life With Unity Mesh Simplifier Lose those e..
2024.03.14 -
//해당하는 테이블의 언어를 얻어옵니다. public string GetLocalText(string table, string key) { string txt = ""; //모바일일 경우 해당 모바일 키가 존재하는지 판단합니다. if (!GameConfig.IsPc()) { string tmp_key = key + "_Mobile"; var collection = LocalizationSettings.StringDatabase.GetTableEntry(table,key); string entry = collection.Entry.Key; if (entry.Equals(tmp_key)) { txt = LocalizationSettings.StringDatabase.GetLocalizedString(tabl..
[Unity] Localization Key[ID] 값 비교//해당하는 테이블의 언어를 얻어옵니다. public string GetLocalText(string table, string key) { string txt = ""; //모바일일 경우 해당 모바일 키가 존재하는지 판단합니다. if (!GameConfig.IsPc()) { string tmp_key = key + "_Mobile"; var collection = LocalizationSettings.StringDatabase.GetTableEntry(table,key); string entry = collection.Entry.Key; if (entry.Equals(tmp_key)) { txt = LocalizationSettings.StringDatabase.GetLocalizedString(tabl..
2024.03.13