SDK & 릴리즈 노트
Fusion SDK 받기
나이틀리 빌드
버전 | 릴리즈 일자 | 다운로드 | ||
---|---|---|---|---|
1.1.0 Nightly | Apr 26, 2022 | Fusion SDK 1.1.0 RC Nightly Build 462 | Release Notes |
스테이블 빌드
버전 | 릴리즈 일자 | 다운로드 | ||
---|---|---|---|---|
1.0.0 스테이블 | 2022년 3월 17일 | Fusion SDK 1.0.0 F Build 439 | Release Notes |
필요 요건
- 유니티 2020.3 또는 그 이상
- 에셋 직렬화가 반드시 텍스트로 설정되어야 합니다(프로젝트 설정 > 편집기 > 에셋 직렬화, Mode = Force Text).
- Mono.Cecil (the com.unity.nuget.mono-cecil 패키지는 프로젝트에서 누락된 경우 패키지 관리자를 통해서 수동으로 추가될 수 있습니다).
지원되는 플랫폼
- Microsoft Windows
- macOS
- Android (Quest 포함)
- iOS
- Linux
곧 출시:
- Nintendo Switch
- Xbox One
- Xbox Series X
- PS4
- PS5
상세 내용을 알고 싶으시면 연락 주세요.
SDK 내용
릴리즈 노트
1.1.0
RC 나이틀리
Build 462 (Apr 26, 2022)
Bug Fixes
- Fixed: Issue with prediction sometimes going to high, especially on Android
Build 461 (Apr 25, 2022)
Bug Fixes
- Fixed: Corrected issue with large number of SimulationBehaviour/NetworkBehaviours exceeding the re-sorting safety limit when applying SortBefore and SortAfter attributes. Was quietly producing an invalid execution order on error
Build 460 (Apr 22, 2022)
Bug Fixes
- Fixed: Join Session right after Join a Lobby
- Fixed: NanoSockets Import Settings for GDK
- Fixed: FUSION_WEAVER on Dedicated Server TargetBuild
- Fixed: NDS to AutoStart with AutoHostOrClient
Build 459 (Apr 21, 2022)
Bug Fixes
- Fixed: AccuracyDrawer gui handling when nested corrected
- Fixed: Accuracy types as fields can be initialized using named AccuracyDefaults
Build 458 (Apr 20, 2022)
What's New
- Lag-compensantion hitbox buffer capacity can now be configured in the Lag-compensation settings
Changes
- Default lag-compensation hitbox snapshot history is now 12 ticks instead of 60
Bug Fixes
- Fixed: "UnloadAsset may only be used on individual assets and can not be used on GameObject's / Components / AssetBundles or GameManagers" error message when exiting play mode
Build 457 (Apr 19, 2022)
Changes
NetworkTransform.IPredictedSpawnBehaviour.PredictedSpawnFailed
no longer destroys the GameObject by default
Bug Fixes
- Fixed: Ignore zero Delta Time
- Fixed: Warnings when forcing a client NRB to be kinematic and its collision mode was set to Continuous or Continuous Dynamic.
This only affects clients in Server-only physics mode or clients without state authority in Shared Mode - Fixed:
NullReferenceException
when trying to spawn aNetworkObject
with an inactive child that has aNetworkTransform
component
Build 454 (Apr 13, 2022)
Bug Fixes
- Fixed: Mono-cecil package not installing with "Access Denied" error.
FusionInstaller
defaults tocom.unity.nuget.mono-cecil@1.10.2
now
Build 452 (Apr 11, 2022)
Changes
- Object.AllowStateAuthorityOverride default value is now true. For most use cases, devs will want this enabled
Bug Fixes
- Fixed: Shutting down
NetworkRunner
in multiple peer mode resulting in temp scene not being unloaded
Build 451 (Apr 09, 2022)
What's New
- NetworkMecanAnimator SetTrigger() methods given an additional optional passThroughOnInputAuthority option
Build 450 (Apr 08, 2022)
What's New
- NetworkRunner.GetPlayerConnectionToken
Build 449 (Apr 05, 2022)
Bug Fixes
- Fixed: Issue with shared mode input erroneously becoming full, causing skipped input ticks
Build 448 (Mar 31, 2022)
Bug Fixes
- Fixed: An issue in the Lag-Compensation
BoxOverlap
query resolution when the box was rotated
Build 447 (Mar 30, 2022)
Bug Fixes
- Fixed: String RPC parameters causing
ArgumentException
being thrown on Android
Build 446 (Mar 28, 2022)
What's New
NetworkProjectConfig.GlobalAssetLoading
andNetworkProjectConfig.GlobalAssetUnloading
static events - a way to load the config from a custom source and unload it, if necessaryNetworkProjectConfig.UnloadGlobal()
Changes
- Tutorials and Samples in Fusion Hub updated
NetworkProjectConfigAsset
is now a public type
빌드 445 (2022년 3월 25일)
변경 사항
- FusionStats SimulationCount 가 ForwardSimCount로 이름이 변경되었습니다 (ResimCount와 구별하기 위해)
버그 수정
- 수정: Fusion 편집기 디버그 로그를 올바른 색상으로 사용합니다
- 수정: 시뮬레이션 상에서 원시 메모리 누수
- 수정:
NetworkRunnerExtensions.SetActiveScene
씬 경로와 씬 이름이 고유하지 않은 경우 잘못된 씬을 활성으로 설정
빌드 443 (2022년 3월 23일)
중요 변경 사항
bool
은 포인터/참조 속성을 사용할 수 없습니다.
새로운 사항
NetworkRunner.Instances
- 모든 활성 플레이어의 읽기 전용 목록NetworkString
의 배열이 RPC 용으로 지원 테스트: 기본 RPC 코드젠 테스트입니다. 부울이 좀 문제가 있었습니다.
빌드 442 (20223월 22일)
버그 수정
- 수정: 인스펙터:
INetworkStructs
유형 및 플레이 종료 모드에서 인스펙팅할 때 콘솔에 에러가 로깅됩니다.
빌드 440 (2022년 3월 17일)
개선
Hitbox
및HitboxRoot
DrawGizmos
메소드는 이제 가상이며 인스펙터에서 구성 가능한 색상을 사용합니다.
1.0.0
F
빌드 439 (2022년 3월 17일)
- 공식 릴리즈
0.13.0
RC 나이틀리
빌드 438 (2022년 3월 16일)
개선
NetworkTransform
Telephot API에는 이제 앞으로(시작 상태 기준) 또는 뒤로(기본값, 종료 상태 기준) 보간할 수 있는 옵션이 있습니다.
변경 사항
- 트랜스폼 동작(NT/NRB/NCCP)은 이제 유니티
OnEnable
콜백을 가상으로 구현합니다. NetworkObject.Runner
는 예측된 스폰으로 설정됩니다.
빌드 437 (2022년 3월 15일)
새로운 사항
[Fusion.NetworkAssemblyIgnore]
어셈블레 레벨 속성. 어셈블리에 추가된 경우 Fusion은 어셈블리에서 네트워크 유형을 검색하지 않습니다.
변경 사항
INetworkStruct
가 베이킹 필드와 함께string
속성을 사용하는 경우 경고가 발생합니다.
버그 수정
- 수정:
NetworkRunner.IsShutdown
은 플레이 모드 종료시/OnApplicationQuit
처리시에 false 입니다. 테스트: 추가 테스트.CreateSimplePrefab
및CreateRunner
추가 - 수정: 이제 NRB는
Rigidbody.rotation
필드로 설정하기 전에 네트워크 quaternion을 정규화하여 단위 길이가 없는 것으로 간주되는 값의 문제를 방지합니다. - 수정: Codegen:
NetworkString<>
참조 및 포인터 속성에 사용되는 경우 assert가 발생됩니다. 제기합니다. - 수정: InSimulation이 false인 동안 FixedUpdateNetwork가 호출되는 문제
빌드 436 (2022년 3월 14일)
주요 변경 사항
NetworkString
길이가 이제 다음으로 좁혀졌습니다: 2, 4, 8, 16, 32, 64, 128, 256, 512
변경 사항
- 이제 FusionStats의 SimulationCount가 ForwardSimCount와 ResimCount의 두 가지 통계로 구분되었습니다. 열거형이 변경되었으므로 일부 기존 FusionStats 구현을 업데이트해야 할 수 있습니다.
버그 수정
- 수정: 시뮬레이션 실행 없이 일부 속성에 접근할 때
NetworkObject
및NetworkRunner
는NullReferenceExceptions
예외를 발생합니다
빌드 435 (2022년 3월 11일)
새로운 사항
- NetworkLinkedList<T>에 Get(), Set(), 및 IndexOf() 메소드가 추가되었습니다.
버그 수정
- 수정: 공유 비마스터 클라이언트가 비활성화된 씬 객체에 연결되어 있지 않음
- 수정:
NetworkRunner.EnsureRunnerSceneIsActive
는 다중 피어 모드에서 활성 씬을 변경하지 않음 - 수정: 공유 모드에서 주 권한을 넘겨주는 것과 관련된 몇 가지 문제
빌드 434 (2022년 3월 10일)
새로운 사항
- 호스트 마이그레이션 지원
변경 사항
- 대칭 NAT에 연결 시도를 사용하도록 설정
빌드 433 (2022년 3월 9일)
버그 수정
- 수정: Realtime 지역 핑 메소드
- 수정:
NetworkTransform
을 사용한 예측 스패닝된 개체의 첫 번째 보간 렌더링 문제
빌드 432 (2022년 3월 8일)
새로운 사항
- NetworkBehaviour.CopyStateFrom 추가
- NetworkObject.CopyStateFrom 추가
버그 수정
- 수정: EC 모드에서 매우 큰 개체에 대한 쓰기 범위를 벗어나는 문제
빌드 431 (2022년 3월 7일)
새로운 사항
- AppleSilicon M1용 NanoSockets
- 베이스 스위치 NanoSockets 프로젝트임.
- PS4 나노 소켓
- PS4 정적 lib에 연결
- 기본 PS4 NanoSockets 프로젝트
Fusion.TextWriterLogger
변경 사항
- Xbox NanoSockets 이동
- NanoSockets 프로젝트 전환
- 스위치 빌드를 위한 NanoSockets 소스
- 스위치를 위해 NanoSockets 설정
- NanoSockets 스위치 빌드 무시
- PS4 NanoSockets 출력 파일 이름 변경
- PS4 나노 소켓을 클린
- PS4 NanoSockets는 StaticLibrary 빌드
- PS4 매크로 정리
Fusion.ConsoleLogger
을 public으로 전환
삭제
- PS4 NanoSocket 미사용 정적 lib 참조
버그 수정
- 수정: SwitchMacros.h 의 경로
- 수정: 비네트워크 객체 연결 시뮬레이션 동작을 삽입 및 정렬
빌드 430 (Mar 04, 2022)
주요 변경 사항
- 호스트에 대한 RPC 로컬 호출(호스트 모드)에는
RpcInfo.Source
을PlayerRef.None
으로 설정되었습니다. (이전에는 로컬PlayerRef
. 이전 동작을 RPC로 되돌리려면[Rpc(HostMode = RpcHostMode.SourceIsHostPlayer)]
를 사용합니다. 이 경우 클라이언트는RpcInfo.Source
에서 호스트의 플레이어도 볼 수 있습니다.
새로운 사항
- 유니티 측 로거 구현 - FusionUnityLogger
변경 사항
- Log.Init(Action<string>, Action<string>, Action<string>, Action<string>) 미사용
버그 수정
- 수정: AssertException이 활성화되지 않은 씬
NetworkObjects
와 함께 애플리케이션을 종료할 때 느려짐.
빌드 429 (2022년 3월 3일)
새로운 사항
NetworkCharacterControllerPrototype
, 유니티의 캐릭터 컨트롤러를 사용하는 기본NetworkTransform
을 확장하는 프로토타입 동작Log.Init
파라미터:useColorTags
및usePrefix
- [ScriptHelp(BackColor = EditorHeaderBackColor.None)] 사용자 지정 Fusion 스크립트에 속성을 추가하여 Fusion 헤더 그래픽 검사기를 사용하지 않도록 설정하고 일반 스크립트 필드로 되돌릴 수 있습니다.
변경 사항
- 호스트의
RpcInfo.Source
값이Rpc.HostMode
로 제어됩니다. 호스트가 RPC를 호출할 때[Rpc(HostMode = RpcHostMode.SourceIsServer)]
는RpcInfo.Source
는 호스트의 로컬 플레이어와 동일합니다.
버그 수정
- 수정: 호스트에서 RPC를 호출할 때
RpcInfo.Source
불일치가 발생합니다. 이전: 로컬 호출의 경우 로컬 플레이어, 원격 클라이언트의 경우 없음입니다. 현재: 로컬 호출 및 원격 클라이언트의 경우 기본적으로 none이며Rpc.HostMode
로 변경할 수 있습니다. - 수정: AllowStateAuthorityOverride이 항상 동작하지 않는 문제
- 수정: 풀에서 재사용할 때 객체들이 콜백을 받지 못하는 문제
빌드 428 (2022년 3월 2일)
버그 수정
- 수정: Il2cpp 에러의 원인이 되는
NetworkArray<float>
속성[Accuracy(0)]
빌드 427 (2022년 3월 1일)
새로운 사항
NetworkTransform
은 이제IPredictedSpawnBehaviour
를 구현하고 보간된 렌더링 및 예측 오류 수정 기능을 기본적으로 지원합니다.
예측-스폰 된 객체의 변환 상태를 변경하는 동작은 NT 전에 정렬하거나 그 후에PredictedSpawnCacheTransformState
를 호출해야 합니다.
빌드 426 (Feb 28, 2022)
변경 사항
- 러너가 종료되면 개체가 삭제됩니다.
빌드 424 (2022년 2월 25일)
새로운 사항
SimulationBehaviour.CanReceiveCallback
개선
NetworkObject
: 개체가 올바르게 제거되었는지 확인합니다.(디버그 빌드에서)
변경 사항
NetworkObject
스폰 해제는 이제 인스턴스화입니다 (이전:시간이 다 될 때까지 연기)NetworkObject
은UnityEngine.Destroy
으로 안전하게 파괴할 수 있으며 싼이 바뀔 때 파괴하고 해체할 필요가 없습니다.NetworkObject
는 플레이 모드에서 빠져나갈 때 스폰 해제됩니다.NetworkRunner.GetInterfaceListHead(Type, int)
은 더 이상 쓸모가 없으므로 대신NetworkRunner.GetInterfaceListHead(Type, int, out SimulationBehaviour)
를 사용합니다.
삭제
Behaviour.IsEnabled
버그 수정
- 수정: 인텔 맥용 NanoSockets
- 수정: 클라이언트가 너무 큰 입력을 전송하거나 서버가 최종 일관성 모드에서 많은 상태로 전송될 때 패킷 손상과 관련된 문제 발생
빌드 423 (Feb 24, 2022)
새로운 사항
- 공유 모드에서 DisableSessionCreation 지원
트랜스폼 행동 재작업:
NetworkTransform
,NetworkRigidbody
및NetworkCharacterController
. 이 빌드는 모든 핵심 혁신 행동에 중요한 변화를 가져옵니다. 다음은 이러한 수정이 필요한 이유, 예상되는 사항 및 가장 중요한 변경 사항에 대한 요약입니다.이유:
- 이전에 사용 가능했던 행동(NT/NRB/NCC)은 매우 광범위한 문제와 시나리오를 해결하는 것을 목표로 했으며, 이로 인해 핵심 사용 사례에서 때때로 잘못 동작하는 코드 베이스를 복잡하고 유지하기가 어려웠습니다.
- 가능한 한 이러한 기본 기능과 이러한 행동에 의해 제공되는 선택권을 사용자가 확장하는 것은 쉽지 않았습니다. 이로 인해 사용자는 핵심 구현의 수정에 의존하여 필요에 맞게 사용자 정의할 수 없었습니다.
- NCC는 단순한 씬 콜라이더에서도 불안정했습니다. 새로운 고급 KCC 패키지가 출시되면서 프로토타이핑 도구로서의 가치가 더욱 떨어졌습니다.
예상되는 점:
- 새로운 행동은 구성하기가 더 쉬우며 대부분의 일반적인 사용 사례에서 더 안정적일 것으로 예상됩니다.
- 또한 게임 고유의 필요에 따라 쉽게 확장하고 조정할 수 있습니다. 새로운 프로토타입 컴포넌트가 바로 그 예입니다(아래 참조).
중요 변경 사항:
- 기존의 모든 핵심 변환 동작은 사용되지 않고 이름이 변경되었지만 핵심 라이브러리에 보관되었습니다. 이러한 기능은 더 이상 권장되지 않으며 지원이 제한되겠지만, 업그레이드를 원하지만 새로운 동작으로 전환하는 데 시간이 더 필요한 경우에도 계속 사용할 수 있습니다.
모든 새로운 동작은
NetworkCharacterController
및NetworkTransformAnchor
을 제외하고 이전 동작과 이름이 동일합니다(예:NetworkTransform
).앵커는 새로운 행동에 대항할 상대가 없습니다. 이를 위해 이전 동작의 이름이 변경되고 클래스 이름 끝에 사용되지 않음(예: 이전NetworkRigidbody
는NetworkRigidbodyObsolete
로 사용할 수 있음)이 추가되었습니다(클래스는 사용되지 않음으로 표시됨). 또한 새 동작에서 동일한 이름을 유지하면 기존 프리탭 및 씬 객체가 새 프리탭을 사용하도록 자동으로 업그레이드됩니다.더 이상 핵심 NCC 동작이 없습니다(기존 NCC 동작은 유지되지만 사용되지 않음으로 표시됨). 대신 SDK의 소스 코드로 제공되는 새로운
NetworkCharacterControllerPrototype
은 유니티의 Character Controller를 사용하며 기본NetworkTransform
동작을 확장하는 방법을 보여줍니다. 이러한 새로운 프로토타입 동작을 통해 우리는 단순하면서도 안정적인 프로토타이핑 도구를 제공하는 것을 목표로 하며, KCC 패키지는 여전히 출시 및 보다 복잡한 사용 사례에 권장됩니다.- 이제 트랜스폼 데이터는 항상 월드 공간에서 동기화됩니다. 이는 관심 영역(AOI) 관리가 예상대로 작동하도록 하는 데 중요합니다. 그러나 모든 트랜스폼 동작에 대해 구성 가능한 보간 공간을 사용할 수 있으므로 네트워크 데이터가 로컬 공간에 있는 것처럼 보기(보간 대상)를 보간하여 중첩된 변환이 예상대로 시각적으로 작동할 수 있습니다. 보간 예측 오류 보정은 여전히 세계 공간에서 항상 수행되며, 보다 복잡한 계층은 보간 소스, 공간 및 대상의 계층을 신중하게 제어해야 할 수 있습니다.
- 트랜스폼 행동에는 규모도 페어런팅/계층도 일치하지 않습니다. 이러한 유형의 데이터/관계를 동기화해야 하는 경우 핵심 동작을 확장하고, 로컬 공간의 척도를 동기화하고, 보간 대상의 분리된 계층을 제어하는 것이 좋습니다
- 비간섭 텔레포트를 수행하는 데 더 이상 사전 단계가 필요하지 않습니다. 전환을 부드럽게 하기 위해 선택적 보간 속도를 제공할 수 있습니다. 자세한 내용은 새 텔레포트 API 설명서를 참조하십시오.
개선
- 이제 네트워크 변환 동작은 렌더링에 사용되는 시작 및 종료 상태뿐만 아니라 시작 및 종료 상태 모두를 기준으로 예측 오류가 계산됩니다.
버그 수정
- 수정: 위치에 압축을 사용하지 않은 경우 관심 영역 계산 문제
- 수정: NetworkTransform 및 파생 동작에서 회전 예측 오류 감지
빌드 419 (2022년 2월 22일)
새로운 사항
NetworkProjectConfig.NullChecksForNetworkedProperties
변경 사항
- RpcInvokeInfo 재작업
- Weaver: Rpcs 는
NetworkObject
이 붙여져 있는지를 항상 체크합니다(이전: 디버그 DLL에서만) - Weaver:
[Networked]
속성이NetworkObject
붙여져 있는지 체크NetworkProjectConfig.NullChecksForNetworkedProperties
이 설정된 경우 (이전: 디버거 DLL 에서만)
빌드 416 (2022년 2월 18일)
변경 사항
PredictedSpawnSuccess
는 이제 비활성화된 객체에 대한 활성화 때까지 지연됩니다.
버그 수정
- 수정: Restart Background Connection 핸들러
빌드 415 (2022년 2월 17일)
변경 사항
- 테스트를 위해 PredictiveSpawnTest 업데이트
빌드 414 (2022년 2월 16일)
새로운 사항
protected virtual NetworkObject.Awake()
NetworkObject.DefaultExecutionOrder
변경 사항
NetworkObject.OnDestroy
protected 에서 protected virtual로NetworkObject
스크립트 실행 순서를 500.NetworkBehaviours
는= 처음에 비활성화된NetworkObjects
를 활성화할 때 일관된 동작을 보장하려면 실행 순서가 더 낮아야 합니다.
제거
- [ExecuteInEditMode] NetworkObject에서 삭제 - 더 이상 필요 없음
버그 수정
- 수정: 업데이트 루프에 이미 있는 시뮬레이션 동작을 추가할 때 통합 무한 루프/일시 정지 문제가 발생합니다.
- 수정: 위치 정확도 압축이 압축되지 않도록 설정된 경우 AOI에서 문제가 발생합니다.
- 수정: 처음에 비활성화된 개체에 대해
Awake
앞에Spawned
가 호출됩니다. 이는NetworkBehaviour
하위 클래스의 실행 순서가NetworkObject
(기본적으로 500)보다 낮은 경우에만 작동합니다. 그렇지 않은 경우 이러한 스크립트를 포함하는 비활성화된 개체로 장면/프리팹을 베이크하는 동안 경고가 발생합니다. - 수정: 큰 초기 델타 스냅샷에서 문제가 발생하여 충돌이 발생합니다.
빌드 413 (2022년 2월 15일)
버그 수정
- 수정: 프리팹 가져오기: 프리팹 주소를 지정하기 위해 더 이상
NetworkProjectConfig
를 수동으로 다시 가져올 필요가 없습니다. - 수정: 프리팹 가져오기: 주소 지정 가능한 폴더의 프리팹으로 인해
NetworkProjectConfig
를 임포트하는 동안InvalidOperationException
이 발생합니다.
빌드 412 (2022년 2월 14일)
새로운 사항
NetworkString<>
-string
타입에 대한 관리되지 않는 할당 없는 대체 형식입니다.NetworkString<>
은 해당 데이터를 UTF32 문자열로 보관하고 내부 용량은 일반 매개 변수로 제어됩니다. 예를 들어,NetworkString<_16>
은 최대 16개의 유니코드 코드 포인트를 보유합니다. 사용 가능한 용량은 1-32, 64, 128 및 256입니다.
빌드 411 (Feb 11, 2022년 2월 11)
버그 수정
- 수정: 많은 플레이어가 연결되어 있는 서버의 정적 메모리 압력을 크게 줄입니다.
- 수정: 잘못된 위치에서 호출될 경우 null-ref 예외를 발생시키는 SetItestGroup을 호출하는 데 문제
빌드 410 (Feb 10, 2022)
변경 사항
- ILWeaver:
[Networked]
속성이 정적인 경우 오류가 보고됩니다.
빌드 408 (2022년 2월 8일)
버그 수정
- 수정: 허용된 최대 MTU를 적용
빌드 406 (2022년 2월 7일)
버그 수정
- 수정: Photon Cloud 시간 초과 시 종료
- 수정: 실행 순서에 따라 동작과 동일한 틱이라고 불리는 FixedUpdate의 문제가 발생하기도 합니다.
- 수정: 서버/클라이언트 간의 일관성 없는 동작 호출 순서 문제. 이제 모든 컴퓨터에서 네트워크 개체 ID를 기반으로 호출 순서를 결정합니다.
- 수정: SinglePlayer 모드에서 CustomCallbackInterfaces
- 수정:
PredictionKey
를 수락하도록 API를 생성
빌드 405 (2022년 2월 4일)
버그 수정
- 수정: NetworkTransform 클래스의 캐시된 변환은 시작 시 사용할 수 없는 NB에 접근할 수 있으므로(Awake가 실행되지 않음) null을 확인합니다.
- 수정: 예측된 스폰과 동일한 틱에서 PredictedSpawnUpdate를 더 이상 실행하지 않습니다.
- 수정: Shared 및 ClientServer 모드를 전환할 경우 오류가 발생합니다.
빌드 404 (2022년 2월 3일)
버그 수정
- 수정:
NetworkBehaviours
없이NetworkObject
를 구울 때 Assert됩니다.
빌드 403 (2022년 2월 2일)
변경 사항
- 공용 IP만 아닌 로컬 IP로 서버 ping이 확장
버그 수정
- 수정: DisableNATPunchthrough 플래그
- 수정: MTU Default Size
빌드 402 (2022년 2월 1일)
버그 수정
- 수정:
SimulationBehaviour
static RPC가ArgumentOutOfRangeException
예외
빌드 401 (Jan 31, 2022)
변경 사항
- 사용불가/비활성화
NetworkObjects
,NetworkBehaviours
및SimulationBehaviours
가 베이크 프로세스에 의해 선택되고ActivatedByUser
로 표시됩니다.상태 개체를 연결할 때 사용자가 플래그를 지정하며 Fusion에 의해 활성화/활성화되지 않습니다. - 비활성화된 GameObjects의
NetworkBehaviours
는 콜백이 더 이상 실행되지 않습니다. - 처음에 비활성화된
NetworkObjects
는 Fusion에 의해 더 이상 활성화되지 않습니다. 그러나 이러한 개체의NetworkBehaviours
에는 여전히CopyBackingFieldsToState
(서버용) 및Spawned
가 호출됩니다. Fusion.Behaviour.IsEnabled
은 이제MonoBehaviour.isActiveOrEnabled
를 반환합니다(이전:MonoBehaviour.enabled
)
빌드 399 (2022년 1월 28일)
버그 수정
- 수정: 인스펙터에서 RunnerVisibilityNodes 찾기 버튼은 이제 장면/객체를 더럽힙니다.
- 수정:
NetworkObject
프리팹은 오래된 값 및 다시 적용 단추(열었을 때)를 표시합니다.
빌드 398 (2022년 1월 27일)
새로운 사항
- FusionStats.NoGraphShader 옵션 추가됨, 셰이더가 3D 공간에서 올바르게 렌더링되지 않는 특수한 VR 경우에 사용
빌드 397 (2022년 1월 26일)
버그 수정
- 수정:
NetworkBehaviour.CopyStateToBackingFields
및NetworkBehaviour.CopyBackingFieldsToState
오버라이딩:NetworkBehaviour.InvokeWeavedCode
재지정에 호출되어 weaver에게 명령을 추가할 위치를 지시해야 합니다. - 수정: SerializableDictionary<,>직렬화 키가 null인경우 ArgumentNullException 발생
- 수정: 유니티 2022.1 컴파일 오류
PrefabStageUtility.GetPrefabStage
빌드 396 (2022년 1월 25일)
영향도가 큰 변경사항
- 세션 사용자 지정 속성이 이제
Dictionary<string, SessionProperty>
유형입니다.
새로운 사항
- RunnerVisibilityControlsWindow가 이제 PlayerRef ID(클릭하면 해당 러너의 PlayerObject를 ping함)와 사용자 ID 값을 표시합니다.
- 문자열에 대한 사용자 지정 세션 속성을 지원합니다.
- 지원되는 사용자 지정 세션 속성을 저장하는 데 사용되는 새 세션 속성 유형입니다.
- 새 ShutdownReason.InvalidArguments
변경 사항
- 세션 사용자 지정 속성의 최대 수는 이제 10개입니다.
- 세션 사용자 지정 속성의 최대 크기는 이제 500바이트입니다.
- 이제 서버/호스트 또는 공유 마스터 클라이언트만 세션 속성을 업데이트할 수 있습니다.
- 요구 사항이 충족되지 않으면 SessionInfo.UpdateCustomProperties가 실패할 수 있습니다.
버그 수정
- 수정: CN 지역에 연결할 때 NameServer
빌드 395 (2022년 1월 24일)
새로운 사항
- FusionGraph 미터 막대는 이제 오버레이뿐만 아니라 CanvasType GameObject 와도 작동합니다.
- FusionStats에는 경고/오류 임계값에 대한 컨트롤과 이러한 색상 및 임계값에 대한 사용자 지정 지원이 추가되었습니다.
빌드 394 (2022년 1월 22일)
변경 사항
- 계층 이름의 버튼 오버레이는 이제 러너 이름 대신 PlayerRef ID 값을 사용합니다. 사용된 숫자가 임의이고 피어의 PlayerRef ID와 관련이 없기 때문에 NetworkDebugStart는 혼동을 피하기 위해 숫자 대신 순차 문자를 사용하여 클라이언트 러너의 이름을 지정합니다.
버그 수정
- 수정: 씬을 변경하면 인라인 도움말 및 Fusion GroupBox 스타일에 대한 텍스처가 null이 됩니다.
빌드 393 (2022년 1월 21일)
새로운 사항
- 로컬 PlayerObject 관련 필드가 NetworkRunner 및 NetworkObject 런타임 인스펙터에 추가되었습니다.
버그 수정
- 수정: 기본 Fusion 씬 2D에서 사용된 PlayerRB2DPrototype에 보간이 비활성화되었습니다. 자동으로 수정됩니다.
빌드 392 (2022년 1월 20일)
새로운 사항
- Interpolator<T> 은 이제 Boolean 과 Int32 타입을 지원합니다.
버그 수정
- 수정: 세션 업데이트 이후 누락된 속성
빌드 391 (2022년 1월 19일)
버그 수정
- 수정: Interpolator가 지정된 정확도 값(예: [Networked, Accuracy(.1f)])을 사용하지 않았으며 기본값은 .001f입니다.
빌드 390 (2022년 1월 17일)
새로운 사항
- 바에 대한 양호한/불량/불량 색상에 대한 FusionStats 처리
- FusionStats 히스토그램을 더 많은 통계 유형에 대해 처리
- 바 색상에 대한 FusionStats 색상을 재지정
빌드 389 (2022년 1월 16일)
새로운 사항
- FusionStats 히스토그램이 시간 기반 통계(RTT와 같은) 지원 추가
빌드 388 (2022년 1월 14일)
새로운 사항
NetworkBehaviour.InvokeOnChangedForInitialNonZeroValues
: 기본 값으로 true 리턴. 초기 값으로OnChanged
에서 호출되지 않게 하기 위해서는 오버라이드하고 false 를 리턴하세요.
개선 사항
NetworkObject
에디터:IsSpawnable
속성에 대한 인라인 도움말 내용NetworkObject
에디터: 프리팹 편집시PrefabInfo
섹션도 표시됩니다.
변경 사항
OnChanged
: 이전 동작을 복원했습니다. 여기서 0이 아닌 각 초기 값에 대해서도 콜백이 호출됩니다.
빌드 387 (2022년 1월 13일)
새로운 사항
- 시작 후 언제든지 클라이언트를 추가할 수 있도록 런타임에 NetworkDebugStart 추가 클라이언트 추가 및 공유 클라이언트 추가 버튼을 인스펙터에 추가했습니다. 나중에 참여한 플레이어를 시뮬레이션하는 데 유용합니다.
- NetworkObject를 찾을 수 없는 경우 FusionStats 경고가 표시됩니다.
버그 수정
- 수정:
AoI
없이EventualConsistency
를 사용하는 경우 중첩된NO
가 부착되지 않습니다. - 수정: 중첩된
NetworkObjects
가 늦게 참여한 클라이언트에서 처리되지 않습니다. 현재 이러한 개체는 비활성화된 상태로 유지됩니다. - 수정: 중첩된 NetworkObject를 참조하는 것이 가능합니다
- 수정: 디버거에 구조체의 컬렉션이 올바르게 표시되지 않습니다.
빌드 386 (2022년 1월 12일)
제거
- PlayerTtl, 이제 클라이언트가 떠나면 비활성화됩니다
버그 수정
- 수정: 서버를 시작하는 경우에만 추가 세션 슬롯
빌드 385 (2022년 1월 11일)
새로운 사항
- 'Add Fusion Stats' 및 기타 'GameObject > Fusion' 메뉴가 Fusion 메뉴에 추가되었습니다
빌드 384 (2022년 1월 10일)
새로운 사항
- NetworkObjectFlag.Ignore 플래그의 값을 가져오고 설정하기 위한 NetworkObject.IsSpawnable 속성
변경 사항
- 기본적으로 대체 UDP 포트를 사용
버그 수정
- 수정: NetworkDebugStartGUI는 사용 중일 수 있는 사용자 IMGUI에 대한 간섭을 방지하기 위해 이전 GUI.skin을 캐시하고 업데이트한 후 복원합니다.
빌드 383 (2022년 1월 7일)
변경 사항
- 씬 NO는 모두 부착된 후
Spawned
를 갖고 있습니다. 따라서[Networked]
객체 참조가 안정적으로 작동합니다.
버그 수정
- 수정: 직렬화가 아닌
NetworkBehaviour.Object
에 할당할 때 씬 더티를 설정하지 마세요 - 수정: Weaver: 외부 어셈블리에서
INetworkStructs
와 함께 컬렉션을 사용할 때 오류 - 수정: 유니티 2020.3.25에서 일부 속성에 대해 딕셔너리를 가져오지 못함
빌드 382 (2022년 1월 6일)
버그 수정
- 수정:
Local
에Space
가 설정되었을 때 NRB 회전 동기화 문제
빌드 381 (2022년 1월 5일)
개선 사항
[Networked]
속성에 필드 백업 순서 추가
버그 수정
- 수정: 유니티 2020.3.25에서 딕셔너리를 가져오지 못함
빌드 379 (2022년 1월 2일)
버그 수정
- 수정: 최신 Fusion 버전과 함께 이전에 생성된 FusionStats 미터를 사용할 경우 개체 경고를 삭제할 수 없음
빌드 373 (2021년 12월 23일)
제거
- 중복된 NetworkRunner.StartGame()
빌드 372 (2021년 12월 22일)
새로운 사항
- RunnerVisibilityControls 윈도우용 라이트 스킨 지원
버그 수정
- 수정: 루트 오브젝트가 처음에 AoI에 의해 EventualConsistency 모드에서 제외된 경우 중첩 오브젝트는 연결되지 않음
- 수정: 상위 항목이 전역 AoI가 아닌 경우 전역 AoI를 가진 중첩 오브젝트가 EventualConsistency 모드로 연결되지 않음
빌드 371 (2021년 12월 21일)
새로운 사항
RpcInvokeInfo
- RPC 호출 방법을 확인 방법. 기본 구문은[Rpc] RpcInvokeInfo Test() { return default; }
그리고 나서var info = Test(); Debug.Log(info);
입니다.
변경 사항
- Realtime SDK v4.1.6.11로 업데이트
빌드 370 (2021년 12월 20일)
제거
- SimulationBehaviourAttribute OrderBefore 및 OrderAfter 속성이 제거 되었습니다. 대신 [OrderBefore] 및 [OrderAfter]를 사용하세요
버그 수정
- 수정: Linux IL2CPP용 NanoSockets 빌드
- 수정:
Fusion.Runtime.xml.meta
의 Guid 고정
빌드 368 (2021년 12월 17일)
버그 수정
- 수정: 맞지 않았던 GroupBoxInfo 'RectOffset?'
빌드 367 (2021년 12월 16일)
변경 사항
OnChange
콜백은 객체 스폰에서 0이 아닌 속성에 대해 더 이상 호출되지 않습니다.
빌드 366 (2021년 12월 15일)
새로운 사항
- FusionStats는 실행 중인 Fusion 통계의 평균 값을 클릭하여 "틱당 평균", "샘플당 평균" 및 "초당 평균" 간을 토글 할 수 있습니다.
변경 사항
- 이제 RPC는 최종 일관성 모드에서 AoI(관심 영역)에 따라 선별됩니다.
NetworkRigidbody
와NetworkRigidbody2D
는 더 이상 실드 클래스가 아닙니다.
빌드 365 (2021년 12월 14일)
주요 변경 사항
- 이제 NetworkRunner.Despawn은 현재 틱(또는 시뮬레이션 루프 외부에서 디스폰이 호출된 경우 다음 틱 시작)이 끝날 때까지 실제 디스폰을 연기합니다. 이전 객체는 네트워크 러너에서 즉시 제거되기 때문에 이는 영향을 줄 수 있는 주요 변경 사항입니다.
변경 사항
- NetworkRunner.AuthenticationValues 노출
버그 수정
- 수정: 보간된 보정이 꺼질 때 누적 예측 오류가
NetworkTransform
behaviours에서 재설정되지 않은 사항
빌드 363 (2021년 12월 13일)
새로운 사항
[Networked]
속성을 위한INetworkInput
지원- FusionStats 그래프는 이제 사용할 수 없을 때 회색으로 표시되고 현재 모드에서 통계가 유효하지 않은 이유를 나타냅니다. 다음과 같은 경우: 디버그만, 클라이언트만, 비상태 권한만 또는 EC만 - 통계가 데이터를 표시하지 않는 이유를 더 잘 나타냅니다.
버그 수정
- 수정: NetworkMecanAnimator에 Animator.parameters, Animator.layerCount 그리고 Animator.parameterCount 속성의 캐싱 추가
- 수정: RB가 비활성화되었다가 절전 모드에서 다시 활성화될 때 클라이언트 상태가 상태 기관과 동기화되지 않는
NetworkRigidbody
에 대한 문제 - 수정: 자신의 fixed update 호출 중에 시뮬레이션 동작의 다음 포인터가 무효화된 경우 FixedUpdateNetwork가 호출을 건너뛰는 문제
- 수정: VS 디버거에서
[Networked]
컬렉션을 검사할 때 유니티가 죽는 문제
빌드 360 (Dec 10(2021년
새로운 사항
INetworkStructs
의[Networked]
string
속성. 비관리된 구조체 유지를 위해서 다음 구문 사용:[Networked] string Foo { get => default; set {} }
변경 사항
[Networked]
문자열은 이제 UTF32로 인코딩 됩니다
빌드 359 (2021년 12월 9일)
변경 사항
- 중첩된 NetworkObject는 스폰시에 부모의 입력 권한을 상속합니다
버그 수정
- 수정:
NetworkRigidbody
는 트랜스폼의 첫 번째 수정 사항이 수신될 때까지 클라이언트에서 트랜스폼을 동기화하지 않아 클라이언트 측 물리 예측을 실행할 때 동기화되지 않은 초기 상태가 발생할 수 있음. - 수정: NetworkDebugStart는 더 이상 서버/호스트용의 ProvideInput 값을 오버라이드 하지 않습니다. 모든 러너들은 기본값을 ProvideInput == true로 해야 합니다.
- 수정: Reflexive address를 확인하는 동안 셧다운 사항
- 수정: 콜백 핸들러에서 객체를 디스폰하여 다른 리스너가 알림을 받을 수 없도록 하는 사항
- 수정: 씬 객체를 확인할 때
MissingReferenceException
의 발생 가능성
빌드 358 (2021년 12월 8일)
새로운 사항
- Runner.GetPlayerUserId(PlayerRef)
- Runner.UserId
버그 수정
- 수정: 로비에 연결할 때 러너 셧다운
- 수정: 큰 Rpc 오버플로우 문제
- 수정:
NetBitBuffer
에 대한 범위를 벗어난 읽기/쓰기 허용 - 수정: FusionStats가 빌드에서 캔버스 가이드 개체를 지금 올바르게 삭제.
0.12.0
RC
빌드 357 (2021년 12월 7일)
주요 변경 사항
- 클라이언트는 이제 자신뿐만 아니라 게임에 참여하고 나가는 모든 플레이어에 대해 PlayerJoined 및 PlayerLeft 콜백을 받습니다. 또한 ActivePlayers에는 현재 클라이언트의 모든 플레이어가 포함되어 있습니다.
새로운 사항
- 공유 모드에서 특정 플레이어의 Photon Realtime 액터 id를 얻기 위해 NetworkRunner.GetPlayerActorId 추가
NetworkRunner.EnsureRunnerSceneIsActive
- NetworkRunner.SetPlayerObject 및 NetworkRunner.GetPlayerObject 추가
- RawInterpolator의 모든 메소드에 "bool? force = null" 파라미터 추가
- RawInterpolator.TryGetStruct<T> 추가
- 보간된 배열/딕셔너리/리스트를 얻기 위하여 RawInterpolator에 TryGetArray/TryGetDictionary/TryGetLinkedList 추가
- SinglePlayerPause(bool paused) 오버로드 추가
- 링크드 리스트용의 RawInterpolator에 쉬운 접근을 허용하기 위해 NetworkLinkedList<T>.Remap 추가
- 딕셔너리용의 원시 보간자에 쉬운 접근을 허용하기 위해 NetworkDictionary<K, V>.Remap 추가
- 원시 보간자 배열에 쉬운 접근을 주기 위해 NetworkArray<T>.Remap 추가
- 지연 보상 쿼리를 수행할 때 틱 '시작' 및 '종료'와 보간 알파를 지정 지원
- 이제 FusionStats.Create()를 사용하여 게임 객체나 씬에 런타임에 FusionStats를 추가할 수 있습니다.. NetworkObject가 제공된 부모에 있는지 탐지하고, 있으면 객체 통계를 사용합니다.
enum 설명과 함께 그래프 통계 표시 모드에 대한 명시적인 컨트롤을 추가했습니다. - FusionStats에 SimulationCount 통계 추가
NetworkBehaviour.Id
속성- NT/NCC/NRB에서 예측 오류 수정을 보간하는 데 사용되는
InterpolatedErrorCorrectionSettings
에 XML 문서 - 지연-보상 박스 오버랩,
Runner.LagCompensation.OverlapBox
오버랩을 통해 접근 가능 - FusionAddressablePrefabsPreloader
NetworkPrefabTable.GetEntries()
- 프리팹 테이블의 내용을 반복하는 방법- 포인터 속성의 인스펙터 지원
- 포인터 속성들의 초기화 지원. 구문:
[Networked] public Foo* Prop => MakePtr(new Foo());
- 참조 속성 지원. 구분:
[Networked] public ref Foo Prop => ref MakeRef(new Foo());
- NetworkRunner.SinglePlayerPause 및 NetworkRunner.SinglePlayerContinue 추가
NetworkLinkedList<T>
인스펙터 지원- 화면 오버레이뿐만 아니라 ingame 객체에 빌보드로 사용할 수 있도록 FusionStats를 확장
- 'GameObject>Fusion>Add Fusion Stats' 메뉴를 선택하여 FusionStats 선택 가능(그리고 그렇게 해야 함). 그러면 NetworkObject가 선택되었는지 여부에 따라 적절한 통계 UI가 생성됨
- Histogram 통계 핸들링
- FusionStatsMeterBar 그래프 타입
- FusionStats에 NetworkObject 및 Sockets 통계 옵션
변경 사항
NetworkRunner.InstantiateInRunnerScene
, 다중 피어 모드에서 호출되는 경우 GameObject를 인스턴스화하기 전에 활성 씬을 러너의 것으로 전환합니다. 이전에 활성화된 씬은 인스턴스화 후 복원됩니다.- 위버:
OnChanged
콜백 서명이 이제는 위빙중에 검증됩니다. - 위버: 구성 정보가 누락되면 오류가 아닌 경고가 발생합니다.
- ILWeaver 는 구성 정보가 없으면 오류를 리포트합니다 (이전: 경고)
- 포인터/참조 속성에 float/boolean/vector 타입이 사용될 경우 경고가 발생합니다.
- 주소 지정이 가능한 프리팹은 바로 사용할 수 있으며 더 이상 사전 로딩이 필요하지 않습니다.
- 이제 PlayerJoined 및 PlayerLeft가 참여/탈퇴하는 모든 플레이어를 위해 클라이언트와 서버에서 호출됩니다.
- 이제 ActivePlayer들은 클라이언트의 모든 플레이어도 반환합니다.
- 연결 흐름 내부에서 발생하는 예외는 항상 지금 기록됩니다.
버그 수정
- 수정: 일부 상황에서 개체가 소멸될 때
NetworkObject.Ptr
이 null화되지 않습니다. - 수정: Using a struct with
[Networked]
속성을 가진 구조체를 사용할 때Allow unsafe code
가 사용하지 않게 되어 있으면 예외를 발생시킵니다 - 수정: 유니티 2020.2.5 인스펙터 오류
- 수정:
NetworkObject
/NetworkBehaviour
속성에 대한 "Failed to unwrap" 스팸 경고 - 수정: NetworkRunner.ProvideInput은 이제 러너 시작 및 초기화 중에 언제든지 설정할 수 있습니다.
- 수정: 공유 모드에서 네트워크 개체 ID 충돌에 문제
- 수정:
Fusion/Toggle Debug Dlls
은 하드코딩된 Dll들의 경로를 가지고 있음 - 수정: 마스터 클라이언트에 대해 DestroyWhenStateAuthorityLeaves가 동작하지 않은 문제
- 수정: 상태 권한 변경 콜백에서 객체 소멸 문제
- 수정: NetworkDebugStart AlwaysShowStats는 단일 피어 모드에서 클라이언트용으로 2개의 상태 윈도우가 생성되었음
- 수정: 셧다운 시에
NetworkSceneManagerBase
의 상태를 깨끗이 치우지 못하는 점 - 수정: 객체 헤더가 누락되었을 때
NetworkObjectEditor
예외 발생 - 수정: 마스터가 나갔을 때 MasterClient 가 업데이트 안 되는 것
- 수정: 음수 반지름/확장 지연-보상 히트 박스가 쿼리에 의해 감지되지 않는 점
- 수정: 시차 보정된 구가 겹치고 히트 옵션 플래그에도 불구하고 레이캐스트가 항상 하위 체크 정확도로 수행
- 수정: 클라이언트에서
NetworkRunner.InterpolationRenderTime
의 계산의 문제 - 수정: 이제 InterpolationRender
- 수정: NetworkRunner.SimulationRenderTime이 이제 올바르게 계산합니다.
- 수정: ILWeaver 미식별
[field: NonSerialized]
속성 - 수정: 클라이언트가 연결되어 있지 않을 때 서버/호스트가 플레이어 잔여 메시지를 보내려고 시도하는 문제
- 수정: RunnerVisibilityNode가 게임 오브젝트들을 인스턴스화하는데 Runner에 자동적으로 추가. 이전에는 NetworkObjects에만 추가되었습니다.
0.11.0
RC 나이틀리
빌드 353 (2021년 11월 17일)
새로운 사항
- 인스펙터
[Networked]
속성 복수 편집 지원 - 인스펙터
[Networked]
구조체 속성 지원
변경 사항
- 자동
[Networked]
속성에 적용된 필드 속성([field: FooAttribute]
)들이 베이킹 필드에 적용
빌드 352 (2021년 11월 15일)
버그 수정
- 수정: 구조체가
[Networked]
속성을 가지고 있으면 Mono.Cecil 이 참조 됨
빌드 351 (2021년 11월 12일)
새로운 사항
- 공유 모드에서 상태 권한 오버라이드의 토글에 대한 지원 추가
- IEnumerable<T>에서 NetworkArray<T>의 지원 추가
- 각 networkbehaviour에 대한 저 수준 단어 오프셋 + 카운트 접근을 허용하는 NetworkBehaviour.WordInfo 추가
- NetworkLinkList<T> 용 지원 추가
빌드 350 (2021년 11월 11일)
새로운 사항
- 새로운 ShutdownReasons
변경 사항
- StartGame의 에러 처리 개선
- Runner.StartGame은 이제 StartGameResult를 출력합니다
빌드 348 (2021년 11월 10일)
새로운 사항
- 눌리거나 해제된 이베트를 감지하는 것을 포함하여 32개의 버튼을 단일 int로 표시하도록 사전 구축된 NetworkButtons 구조가 추가되었습니다.
INetworkStructs
에 대한[Networked]
속성의 제한된 지원. 현재 이러한 속성들에 대해서는 인스펙터가 없습니다. 또한NetworkObject
/NetworkBehaviour
속성들은 지원되지 않습니다.- 매니지드 타입에 대한
NetworkArray<T>
및NetworkDictionary<K, V>
지원 (예,NetworkBehaviour
,NetworkObject
). 참조된 객체가 러너에 의해 아직 스폰 되지 않았을 수 있기 때문에 반-작업으로 인스펙터에서 초기화합니다. NetworkArray<T>
및NetworkDictionary<T>
속성들은 이제NetworkBehaviour
와NetworkObject
또한 사용할 수 있습니다. 인스펙터 반-작업으로 초기화되는 것은 일부 객체들이 아직 스폰 되지 않을 수 있기 때문에 id는 0 임을 주의하세요. 제거:ElementReader<T>
와ElementWriter<T>
IElemenetReaderWriter<T>
(내부적으로NetworkArray<T>
와NetworkDictionary<T>
가 사용)- 구조체에 대한 [Networked] 배열과 딕셔너리 지원
- NetworkBehaviour에서 NetworkBehaviourId로 암시적 변환 연산자를 추가했습니다.
변경 사항
NetworkArray<T>
는 중첩된Writer/Reader
보다는ElementWriter<T>
와ElementReader<T>
델리게이트를 사용합니다
버그 수정
- 수정: NetConnectFailedReason 해석
빌드 347 (2021년 11월 10일)
새로운 사항
- 현재 시뮬레이션 시간 프레임 또는 스냅샷 사이에서부터 보간 데이터를 강제로 가져오기 위해 선택적인 부울 파라미터
버그 수정
- 수정:
Space
가Local
로 설정되었을 때 NT 예측 에러 보정 문제 - 수정:
Space
가Local
로 설정되었을 때 NT 회전 보간 문제 - 수정: 상태 권한이 있는 피어에서 실행되는 NT/NCC/NRB 예측 오류 보정 문제
- 수정: 필드의 정확도가 제한되어 신호 불안정성을 발생시킬 수 있는 NT/NCC/NRB 예측 오류 수정 문제
빌드 346 (2021년 11월 9일)
새로운 사항
- StartGame에 DisableClientSessionCreation
빌드 345 (2021년 11월 8일)
버그 수정
- 수정: 계속해서 호출되는 OnChanged 콜백 문제
빌드 344 (2021년 11월 5일)
새로운 사항
- 다음 체크 표시를 기다리지 않고 콜백이 호출되도록 콜백 내부의 상태를 검사하려는 경우 OnChange 콜백 내부에서 호출할 수 있는 Changed<T>.Rescan() 메소드 추가
버그 수정
- 수정: 시뮬레이션 생성자로부터의 로깅은 이제 디버그 dll로만 기록됩니다.
- 수정: OnChanged 콜백 내에서 상태가 변경된 경우 상태 권한에서 OnChanged 콜백이 호출되지 않는 버그
빌드 343 (2021년 11월 4일)
변경 사항
- NetworkRunner에서 NetworkObject로 RequestStateAuthority 그리고 ReleaseStateAuthority 이동
- AssignInputAuthority는 클라이언트/서버, 클라이언트/호스트에서만 동작 _또는_ 공유 모드에서 StateAuthority이 있는 경우
- AssignStateAuthority 및 RemoveStateAuthority 제거함, NetworkRunner.RequestStateAuthority 및 NetworkRunner.ReleaseStateAuthority 사용
버그 수정
- 수정: 생성된 RPC에서 "resim"으로 전환하여 사용할 수 있어야 하는 문제
- 수정: 유니티 2021.2에서 경고 해결을 위해 BurstInsertAndResolveDelegate에 [UnmanagedFunctionPointer(CallingConvention.Cdecl)] 추가
빌드 342 (2021년 11월 03일)
새로운 사항
- 128kb 및 256kb 할당 페이지 지원 추가
변경 사항
- PageShiftValues enum 을 PageSizes로 이름 변경
버그 수정
- 수정: 클라이언트 측 물리를 실행할 때 NRB 렌더링을 예측할 수 없으며
InterpolationDataSources
가Auto
로 설정 - 수정: 공유 모드에서 스냅샷이 해제가 되지 않는 점
- 수정: 클라이언트의 정적 메모리 할당을 추가 감소
- 수정: 편집기에서 플레이 모드를 중지할 때 적은 양의 메모리 누수
빌드 341 (2021년 11월 02일)
새로운 사항
- NetworkRunner.SetActiveScene이 씬 경로 또는 이름 수용 (확장 메소드)
- 새로운 AutoHostOrClient 게임 모드
- NetworkRunner.IsVisible이 true로 설정된 경우 devs가 연결된 객체의 기본 상태를 수정할 수 있는 RunnerVisibilityNode에 DefaultState 속성 추가
변경 사항
NetworkSceneManagerDefault
컴포넌트가 추가되고INetworkSceneObjectProvider
가 러너에게 전달되지 않으면 경고 출력
버그 수정
- 수정: 캔버스 빌드 중에 FusionStats 사용 불가
- 수정: NetworkRunner 가 IsMultiplePeerSceneTemp 플래그를 재설정 하지 못하는 사항
- 수정: 큰 프레임 스킵 또는 셔터가 발생할 때 클라이언트에서 "missing snapshot" 오류
- 수정: 클라이언트에서 정적 메모리 소비 감소
- 수정: 셧다운 시 Null 참조 오류
빌드 340 (2021년 11월 01일)
변경 사항
- 백그라운드 스레드에서 소켓 실행을 위한 기능 제거
빌드 339 (2021년 10월 31일)
새로운 사항
- RunnerVisibilityControls는 이제 매우 작은 윈도우 크기에서는 동작하지 않음 (윈도우의 왼편에 도킹 허용)
- RunnerVisibilityControls은 이제 'Visibility'와 'Provide Input'을 위해 기본값을 토글 하는 것보다는 아이콘을 사용합니다. 더 작은 윈도우 크기 허용
- RunnerVisibilityControls 내의 러너 이름을 클릭할 수 있으며 관련된 러너 게임 객체에 핑/선택하게 됩니다. Lazy<> 사용을 위해 GUIStyle 정역학 변경
- 이제 계층의 러너 오버레이가 버튼 역할을 하며 연결된 NetworkRunner 게임 오브젝트를 핑/선택
버그 수정
- 수정: RunnerVisibilityControls은 연관된 씬 이름( 복수-피어 모드에서 씬 이름에서 변경하기 위해 필요)보다는 러너 이름을 사용
빌드 338 (2021년 10월 30일)
버그 수정
- 수정: 'MakeInitializer'가 구현이 없어서 발생하는 GocdGen 예외
빌드 336 (2021년 10월 29일)
- 초기 0.11.0 버전
0.10.0
RC
빌드 335 (2021년 10월 29일)
새로운 사항
[UnitySerializeField]
속성 - 검사기에서 사용 가능한 백업 필드를 사용하기 위해 private[Networked]
속성에 적용[UnityFormerlySerializedAsAttribute]
속성 -[FormerlySerializedAsAttribute]
속성을 백업 필드에 추가하기 위해[Networked]
속성에 적용- 인라인 [Networked] 속성 초기화 지원. 이제 다음이 유효합니다:
[Networked] public int Foo { get; set; } = 1;
. 배열과 딕셔너리에 대해서는MakeInitializer
사용, 예)[Networked] public NetworkArray<int> Foo { get; } = MakeInitializer(new[] { 0, 1, 2 });
- 인라인 [Networked] 속성 초기화 지원. 배열과 딕셔너리에 대해서는
MakeInitializer
사용, 예)[Networked] public NetworkArray<int> Foo { get; } = MakeInitializer(new[] { 0, 1, 2 });
변경 사항
[Networked]
배열 또는 딕셔너리 속성들은 세터를 가질 수 없습니다
버그 수정
- 수정: 상태 권한 피어에서 NT/NCC 상태가 재설정되어 편집기/백업 필드에서 수행된 수정 사항이 복구
0.9.0
베타 Nightly
빌드 333 (2021년 10월 28일)
새로운 사항
- StartGameArgs에 사용자 지정 PhotonAppSettings
NetworkBehaviour
용 원시bool
[Networked]
속성 지원.NetworkBool
은 여전히 구조체에서 사용되는 것이 필요합니다
버그 수정
- 수정: NetworkMecanAnimator.SetTrigger() 메소드를 이전 처리 방식으로 되돌림. 입력 권한은 더 이상 Animator를 통해 트리거를 전달하지 않으며, 이 호출은 상태 권한에서만 의미가 있습니다.
빌드 332 (2021년 10월 27일)
새로운 사항
- 플레이어 간의 신뢰할 수 있는 데이터 전송 지원이 추가
변경 사항
- 신뢰할 수 있는 데이터를 로컬 플레이어 또는 자체에서 서버로 보내려고 하면 데이터가 OnReliableData 콜백을 호출
- SendReliableDataFromServerToPlayer을 SendReliableDataToPlayer로 이름 변경
- SendReliableDataFromClientToServer를 SendReliableDataToServer로 이름 변경
버그 수정
- 수정:
NetworkBool
은 이제[Serializable]
그리고 전용으로 그려주는 것이 있음. - 수정:
[Networked]
포인터 속성에 대한 ILWeaver 오류 - 수정: 누락된 PhotonAppSettings
- 수정: 복수 피어 모드에서
NetworkSceneManagerDefault
내 assertion을 트리거 하는OnConnectedToServer
콜백에서 프리팹 스폰
빌드 331 (2021년 10월 26일)
- 'Assets\Photon\PhotonLibs[Metro,WebSocket,Photon3Unity3D.]' 파일은 더 이상 필요하지 않으므로 삭제해주세요.
새로운 사항
NetworkArray
그리고NetworkDictionary
속성은 유니티에서 편집 가능합니다.- 배열과 참조 타입
[Networked]
속성들은 인스펙터에서 기본 값으로 설정된 값을 갖고 있습니다. - 유니티 빌드에서 러너로 전달되는
INetworkSceneObjectProvider
가 없을 때 디버그 경고
변경 사항
- Photon Realtime SDK 이 v4.1.6.10로
NetworkBehaviour.Defaults
이NetworkBehaviour.CopyBackingFieldsToState
그리고NetworkBehaviour.ReadDefaults
이NetworkBehaviour.CopyStateToBackingFields
로NetworkBehaviour
인스퍽터: 네트워크된 속성들은 별도 페이지에서 더 이상 표시되지 않습니다. 대신, "기본" 변수가 갱신됩니다.
버그 수정
- 수정:
NetworkPhysicsSimulation
이후 수정된 NRB의 보간 예측 오류 수정 문제 An issue in the interpolated prediction error correction of NRBs modified after theNetworkPhysicsSimulation
- 수정: 공유 모드 백엔드에서 클라이언트 및 정기적인 간격으로 상태 업데이트를 적용하지 않는 문제
- 수정:
RunnerVisibilityNode
에서NetworkSceneManagerDefault
가 등록되지 않음 - 수정: 중첩된 씬
NetworkBehaviours
이 부착되지 않음 - 수정:
BehaviourEditorUtils.GetDelegateFromMember
에서NullReferenceException
빌드 330 (2021년 10월 25일)
변경 사항
- 현재 Runner.NATType 노출
버그 수정
- 수정: NetworkMecanAnimator.SetTrigger() 호출은 HasInputAuthority가 true이면 이제 Animator.SetTrigger()로 전달됩니다.
빌드 329 (2021년 10월 23일)
새로운 사항
- NAT 타입 디스커버리
변경 사항
- Reflexive Address 쿼리 최적화
버그 수정
- 수정: 델타 스냅샷이 서버에서 유효한 스냅샷을 폐기하는 데 문제
빌드 328 (2021년 10월 22일)
새로운 사항
서버<>클라이언트 토폴로지에서 클라이언트에 대한 예측 디스푼 지원이 추가 버그 수정
수정: StartArgs에서 PlayerCount 확인 누락
- 수정:
NetworkSceneManagerDefault
에서 오타
0.8.0
베타 Nightly
빌드 327 (2021년 10월 21일)
주요 변경 사항
- 씬 로드 점검 - 이제 씬 로드는
INetworkSceneObjectProvider
인터페이스를 통해 유니티 측에서 구현됩니다. 기본 구현은NetworkSceneManagerDefault
와 함께 제공됩니다.
새로운 사항
- BitSet64, BitSet128, BitSet192, BitSet256
BitSet
타입- NetworkRunner.SendReliableDataFromServerToPlayer 와 NetworkRunner.SendReliableDataFromClientToServer를 통해 신뢰할 수 있는 데이터의 큰 청크 전송 지원
변경 사항
- 다중 피어 모드에서는 더 이상 "wrapper" 씬을 사용하지 않습니다. 씬이 로드되고 단일 피어 모드와 동일하게 고정됩니다.
OnBeforeSpawned
콜백은 일반적은Spawned
전에 호출되는 대신 이제 클라이언트에서PredictedSpawnSpawned
이전에 호출됩니다.
삭제
- NetworkProjectConfig.Scenes.
NetworkSceneManagerDefault
는 대신SceneRef
를 씬의 빌드 인덱스로 처리하지만 일반적으로INetworkSceneObjectProvider
구현에서 원하는 대로(빌드 인덱스, 비트필드 등) 사용할 수 있습니다.
버그 수정
- 수정: 첫 번째 델타를 무시하는 TimerDelta 버그
빌드 325 (2021년 10월 20일)
새로운 사항
- 클라이언트 측 예측에서 트랜스폼 상태에 대한 보간 오류 수정
- 객체별 rpc 통계 추가
빌드 324 (2021년 10월 19일)
새로운 사항
- EC 모드에 객체별 대역폭 추가
변경 사항
- 로비에 최대 플레이어 수와 플레이어 수 표시
버그 수정
- 수정: 클라이언트 측 재 시뮬레이션에서
Runner.IsFirstTick
과IsLastTick
이 바뀌는 것 - 수정: Fusion러너를 재사용할 때 셧다운 상태
빌드 322 10월 18(2021년
새로운 사항
- 사용자 지정 인증 지원
- INetworkRunnerCallbacks에서 새로운 OnCustomAuthenticationResponse
- 사용자 지정 인증 관련 새로운 셧다운 사유
변경 사항
- 잘못된 초기화에 대한 정보를 노출하는 비동기 StartGame 핸들링 재작업
버그 수정
- 수정: 클라이언트가 스냅샷 기록보다 너무 많이 뒤처질 경우 대역폭이 급증할 경우 문제
- 수정: 중첩된 NetworkObject 스폰을 위한 VisibilityNode 처리 수정
빌드 321 (2021년 10월 14일)
새로운 사항
- 편집 시간 및 런타임에 FusionStats 윈도우을 보다 효과적으로 제어
- 표시할 통계를 선택하기 위한 FusionStats enum
버그 수정
- 수정: 모든 크기와 비율에서 읽을 수 있는 FusionStats
빌드 320 (2021년 10월 13일)
새로운 사항
- NT/NRB/NCC/NTA 모두 텔레포트 이벤트까지 보간하는 Lerp 대상 역할을 하는 텔레포트에 대한 추가 상태 정보를 인코딩(그렇지 않으면 하나의 프레임 동안 텔레포트가 정지)
- NT/NRB에 LocalScale 동기화 추가
- 페어런팅/크기 엣지 케이스를 위한 더 많은 보간 처리 추가
- InterpolationTarget에 대해 NetworkObject에서 분리하기 위한 실험 옵션이 추가되었으며 보간 스케일링을 개선하기 위해 필요에 따라 부모 재 지정
버그 수정
- 수정: NetworkRunner.TryFindBehaviour<T>에서의 무한 루프
빌드 318 (2021년 10월 08일)
새로운 사항
- NetworkBehaviourId를 NetworkBehaviour로 변환하기 위해 NetwokRunner.TryGetNetworkBehaviour<T> 추가
- NetworkDictionary<K, V>.Get 추가
- NetworkDictionary<K, V>.Set 추가
빌드 317 (2021년 10월 07일)
변경 사항
- STUN 시도 증가
버그 수정
- 수정: 단일 플레이어 모드에서 실행할 때 NetworkRunner 인스펙터 편집기 코드에 null 오류가 가끔 발생
빌드 316 (2021년 10월 07일)
버그 수정
- 수정: NetworkDictionary.TryGet 반전
- 수정: Rpc 파라미터로
NetworkObjectGuid
및NetworkPrefabRef
가 허용되지 않는 점
빌드 315 (2021년 10월 07일)
새로운 사항
- NetworkDictionary에 인덱서 추가
- NetworkDictionary에 ContainsValue 추가
변경 사항
- .NET 딕셔너리 API와의 일관성을 위해 NetworkDictionary.Contains 을 NetworkDictionary.ContainsKey 로 이름 변경
- 기본 클래스에서 대신 발생하도록 InvokeSceneLoadStart로 호출을 이동
버그 수정
- 수정: AddCallbacks 및 RemoveCallbacks 은 이제 내부 콜백 목록이 있는지 확인하고 NetworkRunner 전에 호출할 수 있습니다
- 수정: 네트워크 사전 메모리 정렬 문제
빌드 314 (2021년 10월 06일)
새로운 사항
[Networked]
프로퍼티용 표준 유니티 프로퍼티 속성 - UnityHeader, UnityRange 등
개선
- Odin 호환성
- ILWeaver -
[Networked]
프로퍼티 속성 필드에서도 사용할 수 있는 속성 특성(AttributeTargets
에 따라 다름)이 이제 기본 필드에도 적용됩니다. 즉, Odin 속성을[Networked]
프로퍼티에 직접 사용할 수 있습니다.
변경 사항
- InlineHelpAttribute의 가시성을 public 으로
- ProvideInput은 클라이언트와 호스트용에서 이제 기본값이 true 입니다.
빌드 313 (2021년 10월 06일)
새로운 사항
- NetworkEvents와 유사하지만 유니티 이벤트 대신 일반 C# delegate 를 사용하는 NetworkDelegates 추가
- INetworkRunnerCallbacks.OnSceneLoadStart 추가
- INetworkRunnerCallbacks.OnSceneLoadDone 추가
변경 사항
- 더 이상 호출/사용되지 않으므로 INetworkRunnerCallbacks.OnObjectWordsChanged 삭제
버그 수정
- 수정: Constructor on NetworkDictionary<K, V> 은 이제 public 입니다.
빌드 311 (2021년 10월 05일)
변경 사항
- NetworkBehaviourId는 이제 IEquatable<T>, == 그리고 != 연산자 오버로드와 GetHashCode()를 구현합니다.
버그 수정
- 수정: ISceneLoadDone 콜백에서 네트워크 개체를 생성할 수 없는 문제
- 수정: NetworkDictionary<K, V> 은 이제 K 지네릭 아규먼트로 enums을 받습니다.
빌드 310 (2021년 10월 05일)
새로운 사항
- System.Guid 용 위버 지원 추가
변경 사항
- NetworkRunner.IsSharedModeMasterClient 노출
빌드 309 (2021년 10월 04일)
새로운 사항
- NetworkDictionary<K, V> 지원 추가
0.7.0
베타 Nightly
빌드 308 (2021년 10월 03일)
새로운 사항
- HelpURL 참조가 컴포넌트에 추가됨
변경 사항
- 헤더를 클릭하면 URL을 시작하기 위해 헤더가 묶여 있는 경우에도 항상 프로젝트 폴더에 스크립트가 표시
빌드 307 (2021년 10월 02일)
새로운 사항
- IPv6 지원
- 사용자 지정 STUN 서버 지원
변경 사항
- STUN 서버 해결=
- Reflexive 정보가 없을 때 NAT 펀치 사용 불가
빌드 306 (2021년 10월 01일)
새로운 사항
- ISceneLoadStart 추가
- ISceneLoaded 이 호출되지 않는 문제 해결
변경 사항
- ISceneLoaded를 ISceneLoadDone로 이름 변경
버그 수정
- 수정: 콜백 인터페이스로 ISceneLoadStart가 등록되지 않는 문제
- 수정: 서버로 부터 연결 거점됨이 전송되지 않는 문제
빌드 304 (2021년 9월 30일)
버그 수정
- 수정: 특정 시나리오에서 씬 객체가 서버에서 비활성화된 상태로 유지되는 문제
- 수정: 새로운 오딘 대처는 NetworkBehaviourEditor.cs에서 오딘의 가상 OnEnable을 숨기고 있음
빌드 303(2021년 9월 29일)
변경 사항
- 이제 씬 객체는 로드된 후 기본적으로 비활성화되며 복제된 데이터가 수신된 후에만 활성화됩니다.
버그 수정
- 수정: Odin 편집기의 인라인 도움말이 표시되지 않음. Fusion 유형의 Odin 편집기는
FUSION_ODIN_DISABLED
정의를 사용하여 비활성화할 수 있습니다. - 수정: 수직 스크롤 막대가 없을 때 인라인 헬프 크기 조정 문제
- 수정: 유니티 어셈블리에 대한 xml 문서가 인라인 헬프가 불러오지 않은 문제
- 수정: OnConnectRequest내의 연결 허용/거부 콜백
빌드 302 (2021년 9월 28일)
개선
- 인스펙터 인라인 헬프 불러오기 시간
버그 수정
- 수정: 자동 생성된
NetworkBehaviour.Defaults()
오버라이드가 기본 클래스의 구현을 호출하지 않는 문제
빌드 300 (2021년 9월 27일)
새로운 사항
NetworkPrefabTable.Count
및NetworkPrefabTable.LastId
- 사용자 정의 구조를 보간할 수 있도록 RawInterpolator 구조를 가져오기 위해 지네릭이 아닌 NetworkBehaviour.GetInterpolator추가
변경 사항
- 인라인 도움말 버튼이 다시 왼쪽에 배치
- 저 수준 접근을 위한 Simulation.SnapshotHistory 버퍼 노출
버그 수정
- 수정: 개체가 풀로 다시 릴리스되지 않는 문제
- 수정: FUN 내부에서 종료 호출 문제
빌드 299 (2021년 9월 24일)
주요 변경 사항
- Fusion.Odin.asmdef 과 모든
Fusion.*Odin
behaviour 타입 제거. 대신 일반 Fusion behaviour 클래스를 사용하세요.Fusion.BehaviourEditor
는 Odin-aware입니다. 유니티 제한으로 인하여, 이 빌드가 기존 Fusion 통합을 업데이트하는 데 사용되는 경우Assets/Photon/Scripts/Odin
는 수동으로 제어해 주어야 합니다. - Fusion.Odin.asmdef 과 모든
Fusion.*Odin
behaviour 타입 제거. 대신 일반 Fusion behaviour 클래스를 사용하세요.Fusion.BehaviourEditor
는 Odin-aware 입니다.
빌드 298 (2021년 9월 23일)
새로운 사항
AssemblyNameAttribute
와AssemblyNameAttributeDrawer
,NetworkProjectConfig.AssembliesToWeave
에서 사용하기 위해서 put.
개선
- 인스펙터: 인라인 도움말이 배열에서 작동
- 인스펙터: 사용자 지정 드로우어의 호환성 개선
변경 사항
- 인스펙터: 인라인 도움말 버튼이 속성 값의 오른쪽에 표시
- ILWeaver: 어셈블리 이름은 이제 대소문자를 구분하지 않음
삭제
Fusion.Behaviour.Editor*
properties. 지금부터[ScriptHelp]
속성을 사용하세요
빌드 297 (2021년 9월 22일)
주요 변경 사항
- 프리팹 파이프라인 변경으로 인해, 프리팹을 다시 불러와야합니다.
Fusion/Rebuild Object Table
을 통해 수행할 수 있습니다.
새로운 사항
[NetworkPrefab]
속성.NetworkObject
필드를 추가할 때, 객체 피커는FusionPrefab
레이블로 프리팹만 표시하게 됩니다. 삭제:NetworkProjectConfig.PrefabSources
: 프리팹 소스 정보는 이제 구성의 숨겨진 중첩 자산에 저장되며FusionPrefab
레이블이 표시된 프리팹을 기반으로 생성됩니다. 즉, 프리팹 정보를 직접 포함하지 않으므로 직렬화된 구성이 훨씬 작아졌습니다.
변경 사항
- 이제 가져오는 동안
NetworkObject
스크립트가 있는 프리팹에FusionPrefab
레이블이 지정됩니다. NetworkPrefabRef
속성 드로우어: 객체 피커는FusionPrefab
레이블로 프리팹을 표시합니다.- 구성의 초기
PrefabAssetsContainerPath
값이 빈 문자열입니다. 즉,NetworkPrefabAsset
(NetworkPrefabRef
/NetworkObject
참조에 대한 참조 기반) 생성이 기본적으로 비활성화됩니다. 기존 구성은 영향을 받지 않습니다. NetworkPrefabTable.TryAdd
은 이제 guid와INetworkPrefabSource
인스턴스를 받습니다. 프리팹이 런타임에 추가되어야 한다면NetworkPrefabSourceStatic
및NetworkPrefabSourceUnityBase
서브클래스는INetworkPrefabSource
구현에서 사용할 수 있습니다.- NetworkPrefabAssets 는 기본값으로 사용불가입니다 (
NetworkProjectConfig
인스펙터에 설정된PrefabAssetsContainerPath
필드가 필요합니다.
버그 수정
- 수정: 초기 위빙용 구성 경고
빌드 296 (2021년 9월 22일)
버그 수정
- 수정: 다른 어셈블리의
NetworkBehaviour
하위 클래스가[Networked]
속성에 사용되었을 때 ILWeaver 오류가 발생했습니다.
빌드 294 (2021년 9월 21일)
새로운 사항
- Fusion Matchmaking API
- 모든 주요 세션 관련 정보의 SessionInfo 클래스
- 특정 세션에 참여하기 위한 NetworkRunner.StartGame(GameMode, SessionInfo)
- 로비에 참여하기 위한 NetworkRunner.JoinSessionLobby(SessionLobby, LobbyName)
- 세션 로비 목록 변경 사항을 받기 위한 INetworkRunnerCallbacks.OnSessionListUpdated
- 에러 종료의 더 나은 처리를 위한 몇 가지 새로운 셧다운 사유
변경 사항
- NetworkRunner.GameInfo이 NetworkRunner.SessionInfo로 이름 변경
- 사용자 지정 Params 및 사용자 지정 로비를 가진 NetworkRunner.StartGame
빌드 292 (2021년 9월 17일)
버그 수정
- 수정:
[Networked]
properties returningNetworkBehaviours
를 리턴하는[Networked]
속성에서 IL 오류
빌드 291 (2021년 9월 15일)
변경 사항
LagCompensatedHit.Object
는 사용되지 않으며GameObject
로 이름이 변경됨. 더 상세한 문서화
빌드 290 (2021년 9월 13일)
새로운 사항
- [NetworkSerializeMethod] 그리고 [NetworkDeserializeMethod] 속성. 두 개 모두 모든 유형의 Fusion-직렬화 가능한 (
[Networked]
속성과 Rpcs에서 사용가능)것을 만들수 있습니다. 예상되는 서명, 타입 T에 대해서,은[NetworkSerializeMethod(MaxSize = <MaxByteSize>)] public static int <MethodName>(NetworkRunner runner, T obj, byte* data)
(쓴 바이트의 갯수 리턴) 그리고[NetworkDeserializeMethod] public static int <MethodName>(NetworkRunner, byte* data, ref T result)
(읽은 바이트의 갯수 리턴). 선택적인 서명 지원도 합니다. 이 타입은 기존INetworkStruct
(S) 을 T 로 "랩" 합니다:[NetworkSerializeMethod] public static S <MethodName>(NetworkRunner runner, T obj)
and[NetworkDeserializeMethod] public static T <MethodName>(NetworkRunner runner, S wrapper)
or[NetworkDeserializeMethod] public static void <MethodName>(NetworkRunner runner, S wrapper, ref T result)
버그 수정
- 수정: 빈 세션 이름을 가진 공유 모드에서 NDS
빌드 289 (2021년 9월 9일)
버그 수정
- 수정: NetworkProjectConfig PhysicsEngine 이 2D로 설정된 경우 Physics2D.simulateMode는 자동적으로 런타임에 스크립트 모드로 설정됩니다.
- 수정:
Fusion.Editor.cs
에서 예측하지 못한 문자
빌드 288 (2021년 9월 8일)
버그 수정
- 수정: 인스펙터 -
NetworkObject
복수 선택 - 수정: ILWeaver가 복수
netstandard
어셈플리가 참조된 경우 예외 발생 - 수정: 유니티 2021.2b 용 AssetDatabaseUtils 컴파일
빌드 287 (2021년 9월 7일)
새로운 사항
- Tanknarok 데모 링크가 Fusion Hub 창에 추가되었습니다.
Fusion 허브의 스타일을 단일 GuiSkin과 통합된 명암 테마로 리팩터링하여 향후 유지관리가 용이해집니다. - Fusion 허브 창에 추가된 Fusion 및 Photon 설정에 대한 링크
버그 수정
- 수정: Fusion 허브 링크로 부터의 지역화 제거 (모두 en-us 버전을 가르킴)
빌드 286 (2021년 9월 3일)
변경 사항
- GuiSkin 에셋을 기본값으로 사용하는 NetworkDebugStartGUI에 GuiSkin 옵션이 추가되었습니다. 프로덕션 인터페이스에는 사용할 수 없지만 일부 사용자 지정이 가능합니다.
버그 수정
- 수정: 클라이언트 설정에 대한 NetworkDebugStart 처리가 이제 모든 경우(멀티 피어 및 단일 피어)에서 올바르게 작동합니다.
빌드 285 (2021년 9월 1일)
변경 사항
NT/NRB/NCC 텔레포트가 보간 상태를 From 상태가 아닌 To로 유지하여 'NoInterpolation' 처리와 일치하도록 변경되었습니다. 버그 수정
수정: 상자에 대해 지연 보상 레이캐스트를 수행할 때 일부 구성에서 반전되어 정상으로 도달합니다.
- 수정: 텍스트 필드를 수정중일 때 NetworkDebugStartGUI 널 오류 수정
빌드 283 (2021년 8월 31일)
새로운 사항
- NetworkDebugStart 에 셧다운 버튼 추가 및 시작 후 GUI 숨김을 위해 옵션 추가
- 셧다운 버튼을 표시하기 위한 NetworkDebugStart 옵션
- NetworkDebugStart 및 NetworkRunner르 ㄹ위한 셧다운 처리 및 지우기/재설정
- 실행시 컴포넌트 인스펙터에 NetworkRunner 셧다운 버튼 추가
- 현재 스테이지 정보 레이블에 NetworkDebugStartGUI 추가
버그 수정
- 수정: 실행 순서 인스펙터 윈도우에서 OrderBefore/OrderAfter 충돌이 다시 올바른 경고 표시
- 수정: 숨겨진 요소들을 위한 수직 공간에 DrawifAttribute 추가
- 수정: 일부 에지 사례에서 NRB의 로컬 공간에 대한 covert 누락
- 수정: 수직 비율 씬의 NetworkDebugStartGUI 처리 및 극단전 화면 비율
빌드 282 (2021년 8월 30일)
버그 수정
- 수정: 공유 모드에서 스폰해제 문제
- 수정: 공유 모드의 관심 관리 버그
빌드 280 (2021년 8월 28일)
버그 수정
- 수정: TempAlloc이 이제 관리되는 할당자 페이지 크기보다 큰 할당을 처리
빌드 279 (2021년 8월 27일)
새로운 사항
- 'Property Groups' 기능 추가
버그 수정
- 수정: 공유 모드에서 씬 객체의 초기 상태 문제
- 수정: 이미 상태 인증을 받은 공유 모드에서 데이터를 수신할 때의 상태 인증 처리
- 수정: NRB.SharedMode.Defaults init 버그
- 수정: 공유 모드 개체 상태가 손상된 문제
빌드 276 (2021년 8월 26일)
새로운 사항
- 이는 NetworkBehaviour에서 동작에 대한 내부 상태를 설정하기 위해 스폰_전_에 콜백을 가져오는 데 사용할 수 있는 ILocalPrefabCreated 및 IRemotePrefabCreated 인터페이스 추가
변경 사항
- 틱 전후에 랜덤하게 나타나는 대신 틱 동안 항상 발생하기 위해 PlayerJoined/PlayerLeft 콜백 단순화
버그 수정
- 수정: 원격 프리팹이 생성되지 않은 문제
- 수정: 처음 롤백하는 동안 NRB/NT에 대해 상태를 수신받는 기본 오버라이드 문제
빌드 274 (2021년 8월 25일)
- Fusion SDK 버전 0.7.0 출시
0.6.0
베타 Nightly
빌드 273 (2021년 8월 25일)
새로운 사항
- EC용 변경된 상태 캐시 공유 추가
변경 사항
- Allocator.Copy 성능 대폭 향상
버그 수정
- 수정: SimulationInput 인스턴스를 다시 시작할 때 클라이언트의 메모리 누수
- 수정:
NetworkBehaviour
하위 클래스가 기본 타입의Defaults(bool,bool)
호출하지 않은 문제 - 수정: SimulationInput.Buffer.CopySortedTo 할당
- 수정: 서버에 의한 델타 스냅샷 트랜스폼 모드에서 추가적인 불필요한 상태 복사 제거
빌드 272 (2021년 8월 25일)
주요 변경 사항
- SimulationBehaviour.GetInput이 NetworkBehaviour로 이동되었습니다. SimulationBehaviour에서 입력이 필요한 경우, Object.Runner.TryGetInputForPlayer를 사용하세요.
- Spawned() 및 Despawned() 가상 메소드가 NetworkBehaviour로 이동했습니다. 더 이상 SimulationBehaviour에서 사용할 수 없습니다. SimulationBehaviour에서 Spawned/Despawned 콜백이 필요한 경우, ISpawned 및 IDespawned 인터페이스를 사용하세요.
- SimulationBehaviour.StateAuthorityChanged 이 제거되었습니다. 대신 새로운 IStateAuthorityChanged 콜백 인터페이스를 사용하세요.
새로운 사항
- StartGameArgs.ConnectionToken을 통해 제공되는 연결 토큰 지원 추가. 공유 모드에서는 사용하지 않습니다.
- 사용자가 O(1) 상시 콜백 조회에 접속할 수 있도록 StartGameArgs.CustomCallbackInterfaces를 추가했습니다.
- 인터페이스 시뮬레이션 동작 연결 목록을 미리/다음으로 가져오기 위한 NetworkRunner.GetInterfaceListNext 및 NetworkRunner.GetInterfaceListPrev 추가.
- IsFirstTick 및 IsForward 추가
버그 수정
- 수정: 이제 GetInterfaceListHead가 타입 파라미터를 올바르게 사용합니다.
- 수정: NetworkObjectGuidDrawer에서 안전하지 않은 컴파일러 오류 이외의 포인터를 사용할 수 없음
- 수정: 원격 객체의 프리팹들은 이제 틱 안에서 올바르게 스폰됩니다
- 수정: IsLastTick 은 이제 재 시뮬레이션을 하는 동안 올바른 값을 가집니다
- 수정: 일치하는 예측된 생성 개체를 검색하면 이제 PredictionKey 대신 PredictionKey 및 PrefabType이 사용됩니다
- 수정: OnBeforeSpawned 콜백은 성공적일 때 이제 예측된 스폰용으로 호출됩니다.
- 수정: IBeforeClientPredictionReset 및 IAfterClientPredictionReset 이 올바르게 호출됩니다
- 수정: StateAuthorityChanged 가 이제 모든 경우에 올바르게 호출됩니다
- 수정: 버스트 통합 매개변수 호출량 및 순서
- 수정: NetworkRigidBody 가 이제 프록시로 올바르게 IsKinematic == true 로 복제됩니다.
- 수정: NetworkRigidbody 가 이제 스페이스 로컬 설정을 사용합니다
빌드 271 (2021년 8월 24일)
새로운 사항
- 지연 보상 레이케스트용 QueryTriggerInteraction 파라미터 (PhysX 포함 시)
버그 수정
- 수정: 지연 보상 API는 공유 모드에서도 사용할 수 있습니다 (쿼리는 로컬에서 클라이언트로)
- 수정: 잘못된 일련 번호 assert 검토 버그
- 수정: 플러그인 코드의 동일한 비트/바이트 복사 문제
- 수정: 버퍼의 바이트 길이 대신 비트 길이 CloudCommunicator 복사 메모리 문제
- 수정: 연결 토큰에 관련된 아주 드물게 나타나는 메모리 누수
- 수정: 네이티브 소켓 종료 시 해제 순서가 잘못되어 드물게 충돌이 발생할 수 있는 문제
- 수정: 넷 비트 버퍼 스택의 사소한 메모리 누수
빌드 268 (2021년 8월 23일)
새로운 사항
- 직렬화된 정확도는 NetworkProjectConfig에서 해당 태그가 삭제되더라도 사용자 정의 태그에 대한 해시 참조를 유지하며 태그가 복구되기전 까지 또는 정확도의 글로벌 설정이 선택된 다른 태그에 대하여 AccuracyDefaults.Default를 사용하게 됩니다.
변경 사항
- 정확성 구조체 기본값은 AccuracyDefaults.Uncompressed 보다는 AccuracyDefaults.Default 입니다.
빌드 266 (2021년 8월 20일)
새로운 사항
- 프로젝트 구성의
AssembliesToWeaver
또는Accuracy
가 변경될 경우 강제로 위버를 실행시키기 위한Fusion.CodeGen.Trigger
에셋
변경 사항
- 기본 프리팹 에셋 컨테이너가 "Assets/Photon/Fusion/User/NetworkPrefabAssetContainer.asset"로 변경
- AccuracyDefaults 드로우어에서 'Recompile' 버튼 제거. 구성을 변경한 후 필요할 때 자동 리웨이브로 교체.
빌드 265 (2021년 8월 19일)
주요 변경 사항
- OnConnectionRequest 콜백은 이제 추가적인 byte[] 토큰 파라미터를 받습니다.
새로운 사항
- 128 바이트 연결 토큰 지원
- 이전
NetworkProjectConfig
에셋 자동 변환
변경 사항
- NetworkRunner.Connect 는 이제 byte[] 토큰 파라미터를 받습니다
- SocketThreadingMode 은 더 이상 구성할 수 없습니다
빌드 264 (2021년 8월 19일)
주요 변경 사항
NetworkProjectConfig
형식과 파일 확장자가 변경되었습니다. 업그레이드하면NetworkProjectConfig
에셋을 선택하고Convert To The New Config Format
버튼을 누르세요.
새로운 사항
- ILWeaver는 기본 위치에서 구성을 발결하지 못하면 가능한
NetworkProjectConfig
위치를 제안합니다.
변경 사항
- ILWeaver는 더 이상 글로벌 에셋 텍스트 직렬화가 필요하지 않습니다
삭제
NetworkProjectConfigAsset.Instance.Config
삭제. 대신NetworkProjectConfig.Global
을 사용하세요.
빌드 263 (2021년 8월 19일)
주요 변경 사항
- 클라이언트 인증을 사용하는 서버/호스트 모드가 완전히 제거되었습니다. 앞으로 클라이언트 권한 게임은 공유 모드에서만 가능합니다. 서버/호스트 모드는 항상 서버 권한 부여 모드입니다.
- 공유 모드에서 물리 예측이 제거되었습니다.
새로운 사항
- 클라이언트/서버 또는 공유 모드에서 실행하고 있다면 쿼리를 쉽게 하기 위한 Runner.Topology 추가
변경 사항
- NetworkProjectConfiguration의 PhysicsMode는 공유 모드에 더 이상 적용되지 않으므로 이제 서버 물리 모드로 불립니다.
- NetworkProjectConfiguration의 ReplicationMode는 'Delta Snapshots' 와 Eventual Consistency'만을 가지고 있습니다. 접두사 ServerAuth 및 ClientAUth 옵션은 제거 되었습니다.
- NetworkRunner.GetActiveSimulationBehaviours 제거, 대신 Ne거workRunner.GetAllBehaviours 를 사용하세요
- 러너가 셧다운 중에 있다면
HitboxManager
는 FUN에서 더 이상 실행되지 않습니다.
버그 수정
- 수정: 예측 된 스폰은 이제 RunnerVisibilityNode 처리로 고려됩니다.
- 수정: 러너가 셧다운 또는 처분되는 될 때
Hitbox.OnDrawGizmos
에서 가능한 NullReferenceException
빌드 262 (2021년 8월 18일)
버그 수정
- 수정: 서버의 올바른 데이터가 도착했음에도 불구하고 예측적으로 생성된 개체가 미리 실패로 설정되는 문제
- 수정: 스폰해제가 다른 러너에 속한 개체에 대해 호출될 수 없는지 확인
빌드 261 (2021년 8월 18일)
버그 수정
- 수정: NetworkBehaviour의 'Add NetworkObject' 버튼은 이제 복수 선택에서도 동작합니다
빌드 260 (2021년 8월 16일)
새로운 사항
- 고급 Odin 직렬화를 비활성화를 하는 FUSION_ODIN_EDITOR_ONLY 정의 추가 (Sirenix.Serialization). Odin의 편집기에서만 모드를 사용하려면 이 정의를 유니티 프로젝트에 추가해야 합니다.
- NetworkObject.LastReceiveTick 추가
- 시뮬레이션 컬링 기능 추가
- 관심 지역 시스템에 레이어 마스크 추가
변경 사항
NetworkProjectConfig
는 지금 일관되게 씬 경로를 사용합니다. 하지만, 이전 버전과 Unity 호환성을 보장하기 위해NetworkProjectConfig.TryGetSceneRef
수용은 전체 경로 및 씬 이름을 허용합니다.- 의미를 더 명확히 전달하기 위해 'Player' 구성 설정을 'Default Players'로 이름 변경
- 클라이언트 권한 모드에서 'send client input to server' 환경 구성 옵션 제거
- 구성에서 UseAreaOfInterest를 UseInterestManagement로 이름 변경
버그 수정
- 수정: 클라이언트 인증 모드에서 실행할 때 PredictionKey가 더 이상 게임 상태로 끝나지 않습니다.
- 수정: 서버 시작시 빈 룸 이름 이제, 룸 이름이 지정되지 않으면, 서버 피어는 무작위 이름으로 룸을 생성합니다
- 수정:
NetworkDebugStart
가 현재 씬NetworkProjectConfig
에 올바르게 추가되지 않은 문제 - 수정: 올바른 상수 FUSION_BURST를 표시하기 위해 누락된 컴파일러 정의에 대한 수정된 오류 메시지
- 수정: 공유 모드에서 RPC 포워딩 문제
빌드 259 (2021년 8월 10일)
새로운 사항
- 인라인 도움말 및 헤더에 대한 'Lite' 테마 처리가 개선.
간단한 인라인 헬프 스킨으로 기본 GUIStyle을 사용 가능.
gui 스타일/아이콘에 대한 그래픽 소스가 추가
변경 사항
HitOptions.DetailedHit
는 쓸모가 없게 되었습니다: 지연 보상 쿼리는 이제 항상 상세 정보를 계산합니다
버그 수정
- 수정: 위치 오프셋이 있는 지연 보상 히트박스 루트의 광범위한 위상 볼륨을 계산하는 데 문제가 발생하여 히트박스가 검사되지 않을 수 있는 문제.
- 수정: 광범위한 데이터 구조의 효율성을 떨어뜨릴 수 있는 지연 보상
HitboxRoot
경계 계산 문제 - 수정: 히트 포인트가 무한값으로 설정의 원인인 광선 길이가
Mathf.Infinity
,float.MaxValue
또는 매우 큰 값으로 설정된 경우 구 개체에 대한 지연 보상 레이캐스트 쿼리의 문제 - 수정: 클라이언트 권한 객체에서 Rpc가 호출되지 않는 문제
- 수정: source=RpcSources.StateAuthority인 Rpc가 공유 모드에서 호출할 수 없는 문제
- 수정: 인라인-헬프의 인스펙터 처리 그리고 레티나/고해상도 타입 디스플레이에서의 컴포넌트 헤더 Simpiler reskining에 기본 스타일 및 단일 텍스처를 사용하도록 헤더 스킨 변경 프로젝트의 헤더용 저장된 메이크 파일 더 많은 헤더 컬러/아이콘 옵션 추가 나중에 스킨/모양을 쉽게 변경할 수 있도록 Fusion 스타일 추가
빌드 258 (2021년 8월 8일)
버그 수정
- 수정: 클릭시 NetworkBehaviour "Missing NetworkObject" 버튼은 이제 올바르게 transform.root에 NetworkObject를 추가합니다.
빌드 257 (2021년 8월 7일)
버그 수정
- 수정: 어셈블리가 한 번이상 참조되는 경우 ILWeaver가 예외를 발생 시킴
- 수정: RunWeaver()가 강제로 위빙전에 NetworkProjectConfigAsset에 모든 변경 사항을 저장
빌드 256 (2021년 8월 6일)
새로운 사항
Fusion/Run Weaver
메뉴 항목.Type Foo has not been weaved
인 경우 실행할 수 있고 런타임 오류 메시지- HitboxRoot 컴포넌트의 레이아웃/도움말 개선 버튼 UI 코드를 에디터에서 HitRoot 클래스로 이동(꼭 필요하지 않는 경우 에디터 스크립트 피함)
버그 수정
- 수정: HitboxRoot의 Auto-BroadRange 버튼은 이제 Box 콜라이터 타입을 올바르게 처리
- 수정: HitboxRoot의 Auto-BroadRange 버튼은 Hitboxes의 스케일링 및 오프셋 값 처리에 따라서 스케일링을 선택적으로 무시
빌드 255 (2021년 8월 5일)
새로운 사항
- 초 단위로 잔여 시간을 얻기 위해 TickTimer.RemainingTime 추가
- BehaviourButtonActionAttribute를 사용한 인스펙터 버튼용 인라인 도움말 지원
- XMLDocumentation에서 모든 멤버 유형에 대한 툴팁/요약 처리 지원을 추가(인라인 버튼 등을 사용하여 인라인 도움말/팁을 사용할 수 있습니다.)
- 루트
BroadRadius
를 현재 히트박스의 최소 경계 반지름으로 재설정하는HitboxRoot.SetMinBoundingRadius
메소드. 메소드는 컴포넌트 편집기의 새 버튼에서 트리거될 수 있으며, 0으로 설정된 넓은 반지름으로 루트가 초기화되면 자동으로 호출됩니다.
변경 사항
- FusionInstaller는 오래된 nuget.mono-cecil 대신 com.unity.nuget.mono-cecil 설치합니다.
- 구성이 텍스트 모드에서 직렬화되지 않은 경우 ILWeaver에서 경고가 발생합니다.
버그 수정
- 수정: AccuracyDefaults의 Recompile 버튼은 유니티 2021.1의 모든 내용을 다시 컴파일하지 않습니다.
- 수정: Mono-Cecil 이 누락된 경우, Fusion.CodeGen에서 컴파일하지 않는 대신 경고가 발생합니다.
빌드 254 (2021년 8월 4일)
새로운 사항
- 보간된 데이터를 읽는 접근을 허용하기 위해 Interpolator<T>ReaderDelegate 추가
- 보간 위임자 오버라이드를 허용하기 위해 Interpolator<T>.InterpolationDelegate 추가
변경 사항
- 지연 보상
Hitbox
및HitboxRoot
활성 상태가 GameObject/Behavior 상태에서 분리되었으며 새로운 get/set 메서드 및 속성으로 접근할 수 있습니다.
버그 수정
- 수정: 항목을 제거할 때 스택 오버플로우를 발생시킬 수 있는 지연 보상 구조체 문제
- 수정: 공유 씬 객체의 몇 가지 수정
0.5.0
베타 Nightly
빌드 253 (2021년 8월 3일)
새로운 사항
- DestroyOrphaned - "존재하지 않는" 번호를 제거하기 위한 방법
- 고급 오딘 직렬화 지원(인터페이스와 같은) 추가. 오딘의 SerializedMonoBehaviour와 동등한 기본 클래스로 BehaviourSerializedOdin, SimulationBehaviourSerializedOdin, 그리고 NetworkBehaviourSerializedOdin 사용.
변경 사항
NetworkSceneManager
- 추상NetworkSceneManagerBase
는 이제 확장될수 있으며 사용자 지정 씬 로딩 로직 구현을 위해 러너 프리팹에 추가
버그 수정
- 수정: 파생된 NetworkedBehaviours는 부모의 private [Networked] 값을 Networked 속성 폴드아웃에 표시합니다.(이전에는 protected/public 값만 표시되었습니다)
- 수정: NetworkSceneManager 재로드 초기 씬
- 수정:
NetworkObject
계층 구조에 있지 않은SimulationBehaviours
용 씬 베이킹 - 수정:
NetworkDebugStart
DontDestroyOnLoad - 경고와 함께 게임 오브젝트 부모 그 자체 포함 - 수정: 씬 전환이 발생하는 동안 클라이언트가 가입할 때 문제 (복수 피어)
- 수정: NetworkDebugStart 가 부모이면, 런타임에 루트로 이동, 그렇지 않으면 DontDestroyOnLoad가 동작하지 않음
- 수정: 맵 베이킹 - 고아가 된 SimulationBehaviours (예, 계층 위에 NetworkObject가 없는 항목)들을 수용할 수 있습니다
- 수정: 여러 피어 모드에서 게임 개체를 제거하면 SharedInstanceUnitySceneRoot가 올바르게 정리됩니다.
빌드 251 (2021년 8월 2일)
새로운 사항
- InterpolationDataSource.NoInterpolation에 대한 Fusion 처리 보간을 비활성화하는 옵션
- 'GameObject>Fusion>Setup Basic Fusion Scene 2D' 메뉴로 기본 동작을 하는 2D 씬 빠른 설정 추가
- 컴포넌트 헤더 그래픽은 가비지를 줄이고 캐시를 더 추가했습니다. 이제 긴 컴포넌트 이름이 인스펙터 폭에 맞게 단어를 적절하게 잘라냅니다.
변경 사항
- HitboxManager은 러너에 의해 자동적으로 처리됩니다 (NetworkProjectSettings로 이동 구성). Runner.LagCompensation를 통해 인스턴스 접근 가능
- 강제 셧다운인 경우 클라이언트 연결해제 동작 개선 (ALT-F4, 등)
- BehaviourOdin, NetworkBehaviourOdin 및 SimulationBehaviourOdin 기본 클래스를 사용할 때 Fusion 헤더 그래픽이 표시됩니다.
- NRB 및 NRB2D는 이제 NetworkRigidbodyBase 클래스에서 상속됩니다.
- Exception message when
NetworkBehaviourWeavedAttribute
가 없는 경우 예외 메시지가 더 의미있도록 부여하였습니다 - SimulationBehaviour.Runner 및 SimulationBehaviour.Object는 NonSerialized로 표시됩니다.
- ILWeaver 가 분리된 어셈블리로 이동했으며(Unity.Fusion.CodeGen) 이제 유니티의 ILPostProcessor 파이프라인을 사용합니다. 그 결과 위버는 훨씬 더 빠르고 신뢰할 수 있게 되었습니다. 또한 위빙 오류는 이제 컴파일 오류로 처리됩니다(지우기 버튼으로 실수로 지울 수 없음). NetworkProjectConfig가 기본 위치에 저장되어 있지 않은 경우, Fusion.CodeGen.User.cs내의 ILWeaverSettings.OverrideNetworkProjectConfigPath를 구현합니다.
버그 수정
- 수정: NetworkTransformAnchor는 null 부모로 취급하며 MultiPeer 루트 씬 객체인 부모 모두 null 입니다. MultiPeer 루트를 부모로 하는 객체를 처음 다시 부모를 만들때 텔레포트 히치 수정.
- 수정: NetworkCharacterController은 스폰의 원시 발생으로 부터 텔레포트를 해결하는 NetworkTransform으로 이제 동일한 Defaults() 처리를 사용합니다. 몇 부분에서 누락된 SharedInstance를 MultiPeer로 이름을 변경했습니다.
- 수정: NT/NRB/NCC 클래스 내에서 Defaults() 처리에 관련된 스폰 위치 문제.
Before/AfterAllTicks explicit에서 implicit 인터페이스 구현으로 변경 - 수정: Assembly resolve when building using IL2CPP and .NET 4.x on Unity 2021.1+
- 수정: netstandard가 사용 중일 때 mscorelib를 참조하려고 하는 ILWeaver에서 문제
- 수정: 유니티 2021.1에서 ILWeaver 참조 .NET 코어 라이브러리
- 수정: 통합으로 인해 개체가 이미 파괴되었지만 네트워크 ID 조회 테이블에 여전히 존재하는 경우를 탐지하기 위해 DestroyRemotePrefab 내부에 null 검사를 추가
- 수정: 종료 시 전송되지 않은 패킷 및 수신되지 않은 패킷과 관련된 메모리 누수
- 수정: 지연 시뮬레이션을 사용할 때 유니티 에디터에서 메모리 누수
- 수정: 추가적인 메모리 누수
- 수정: NetworkRigidbody2D 기능 복구 됨
- 수정: 패킷 단편화와 IPv6의 몇 가지 문제
- 수정: new Spawn<T> 오버로드가 NetworkObject 참조를 올바르게 찾지 못하는 문제
- 수정: FUSION_WEAVER_DEBUG UnityEditor 위버 컴파일 오류
- 수정: Unity에서 ILP에 로그인된 예외의 호출 스택을 구문 분석하는 데 어려움이 있습니다. 이 스택을 여러 줄로 나눈 다음 개별적으로 기록
- 수정: NetworkObjects가 이제 DontDestroyOnLoad에 자동적으로 설정되지 않습니다.
- 수정: 몇 가지 메모리 누스
빌드 246 (2021년 7월 27일)
새로운 사항
- NetworkRunner.Spawn<T>(T prefab) 추가, T : NetworkBehaviour로 NetworkRunner.Spawn의 보완책
- NetworkBehaviour.Interpolator<T>.TryGetValues 추가
빌드 245 (2021년 7월 23일)
새로운 사항
- 컴포넌트 헤더 그래픽을 두 번 클릭하면 편집할 수 있는 스크립트가 열립니다. (유니티 기본 스크립트 필드와 동일한 동작)
- float/vector2/vector3/vector4/quaternion 타입의 사용자 정의 네트워크 속성 보간 지원 추가
버그 수정
- 수정: 이제 새 Fusion 릴리스를 가져오면 기존 구성 파일이 제대로 검색됩니다.
- 수정: 상태 권한이 클라이언트가 아니며 쿼리 옵션에서 하위 확인 정확도가 설정된 경우 서버/호스트에서 수행되는 지연 보상 쿼리 문제
빌드 244 (2021년 7월 22일)
버그 수정
- 수정: 이제 리소스 폴더가 완전히 누락/삭제/이동된 경우에도 구성 파일을 올바르게 생성할 수 있습니다.
빌드 243 (2021년 7월 22일)
변경 사항
- SimulationBehaviour.Object 및 NetworkBehaviour.Object는 이제 예상되는 스폰된 객체용으로 지정됩니다.
버그 수정
- 수정: NetworkObject.IsProxy가 이제 객체 존재여부를 확인합니다
빌드 242 (2021년 7월 22일)
새로운 사항
- NetworkObject.IsPredictedSpawn, Obsoleted NetworkObject.IsPredicted 추가
변경 사항
- StartGameArgs를 사용하면 런타임에 INetworkObjectPool을 제공하여 풀 객체가 동적으로 사용할 수 있도록 설정할 수 있습니다.
- NetworkObjectPool은 이제 편집기 관리자에서 연결할 수 있도록 mono behaviour 대신 스크립트 가능 개체입니다.
- 두 번째 스폰해제된 매개 변수 "bool hasState"는 이제 EC 모드에서 실행될 때 true가 됩니다. hasState가 true이면 소멸 중인 객체의 네트워크 상태에 접근할 수 있습니다.
- 스폰해제된 것은 이제 NetworkRunner를 첫 번째 매개 변수로 사용하므로 스폰해제n 중에도 항상 러너에 접근할 수 있습니다.
- NetworkObject StateAuthority/InputAuthoirty/IsSceneObject는 더 이상 연결되지 않은 객체에 대해 null 참조 예외를 발생시키지 않습니다.
버그 수정
- 수정: 입력 델타 압축기에서 사용되지 않는 워드에 대한 대역폭 오버헤드 제거
- 수정: NetworkRunner.Despawn는 null 객체에 대하여 올바르게 검사합니다
- 수정: NetworkProjectConfig 와 PhotonConfig 에셋은 새로운 프로젝트를 생성할 때 올바르게 생성되지 않음
빌드 241 (2021년 7월 21일)
새로운 사항
- PlayerRef.PlayerId 추가
변경 사항
- NetworkObject.IsPredicted가 객체가 서버에 의해서 확인되었을 때 더 이상 ture가 아닙니다
- 예측한 스폰된 객체는 이제 러너 접근을 갖고 있습니다
- Despawn은 이제 클라이언트에서도 예측 스폰된 객체들을 "스폰해제"할 수 있는 추가적인 allowPredicted 파라미터(기본값 false)를 받습니다.
빌드 238 (2021년 7월 20일)
새로운 사항
- NetworkProjectConfig 및 PhotonAppSettings 에셋은 이제 존재하지 않는 경우 생성됩니다
- 인스펙터 컴포넌트 그래픽 헤더 추가 (기본 스크립트 필드 대체)
- 기본값이 변경될 때 경고가 표시된 재컴파일 버튼을 AccuracyDefaults에 추가 (새 정확도 값을 다시 연결하려면 실행/구축하기 전에 다시 컴파일해야 합니다)
변경 사항
- 실시간 클라이언트 연결 타임아웃이 30 초 이는 장기 실행 세션에 대한 원치 않는 연결 끊김을 방지 목적
- SDK 패키지에서
NetworkProjectConfig.asset
및PhotonAppSettings.asset
제거
빌드 236 (2021년 7월 12일)
삭제
- NetworkTransformParent 제거. 부모와 동기화를 위해 NetworkTransformAnchor로 교체되었습니다
버그 수정
- 수정: Longs 그리고 ulongs [Networked] 속성이 ILWeaver 오류 원인
빌드 235 (2021년 7월 10일)
버그 수정
- 수정: 누락된 NetworkObject 추가를 위한 NetworkBehaviour의 인스펙터 버튼은 이제 되돌리기를 허용하고 모든 유스 케이스에서 올바르게 더티가 되어야 합니다
빌드 234 (2021년 7월 9일)
새로운 사항
Runner.GameInfo
이 속성은 룸 이름 및 현재 연결된 영역과 같은 일부 Photon Cloud 메타데이터를 표시합니다.RpcAttribute.TickAligned - false로 설정하면 대기 중인 틱 정렬 Rpc가 없는 경우 대상의 틱이 따라잡을 때까지 기다리지 않고 Rpc가 처리됩니다.(순서가 유지됩니다)
버그 수정
- 수정: Rpc 파라미터로 Longs 그리고 ulongs가 ILWeaver 오류 원인
- 수정: Fusion 윈도우는 유니티가 재 시작되었을 때 상태를 기억합니다
빌드 233 (2021년 7월 8일)
버그 수정
- 수정: NetworkTransformAnchor으로 부터 파생되었을 때 ILWeaver 오류
빌드 232 (2021년 7월 7일)
버그 수정
- 수정: 이제 지연 보상 쿼리에서 일시적 디스패닝된 개체가 무시됩니다.
빌드 231 (2021년 7월 6일)
버그 수정
- 수정: 이제 NetworkDebugStart에서 FusionStats가 마지막으로 생성되고 활성 EventSystems가 있는지 확인합니다. 로그를 스팸으로 처리하는 '여러 이벤트 시스템' 경고 문제를 해결합니다.
빌드 229 (2021년 7월 2일)
변경 사항
- NetworkBehaviour.Defaults는 이제 2개의 파라미터를 받습니다: afterSpawned 및 isLocalSpawn
- Photon 앱 설정 스크립트 가능한 객체에서 AppIdRealtime에서 AppIdFusion로 이름 변경
- Photon Realtime SDK v4.1.6.3
버그 수정
- 수정: transform.position이 서버 모드의 서버/클라이언트 간에 생성된 콜백에서 일관되지 않고 클라이언트 인증 모드에서도 일관성이 없는 문제
빌드 228 (2021년 7월 1일)
버그 수정
- 수정: Vector2/Vector3/Quaternion에서 [Accuracy(0)] 문제
- 수정: 재사용된 플레이어 인덱스에 의해 생성된 객체가 공유 모드의 다른 클라이언트에 표시되지 않는 버그
- 수정: INetworkStruct 를 구현하는 정적 필드의 Weaver 문제
빌드 227 (2021년 6월 30일)
주요 변경 사항
- OnShutdown 이벤트에 ShutdownReason 추가 OnShutdown 콜백의 추가 매개 변수를 포함하도록 INetworkRunnerCallbacks를 수정해야 합니다.
새로운 사항
- 'Rebuild Object Table' 및 'Import Scenes From Build Settings' 바로가기를 유니티의 Fusion 메뉴에 추가
- NetworkDebugStart에 AlwaysShowStats boolean 설정 추가
- 공유 모드를 위한 관신 지역 지원 추가
- NetworkTransform/NetworkRigidbody/NetworkCharacterController에 트랜스폼 페어런티 지원 추가
- NetworkRigidbody 및 NetworkCharacterController에 텔레포트 추가
변경 사항
- NetworkAreaOfInterestBehaviour.PositionOffset 에서 NetworkAreaOfInterestBehaviour.PositionWordOffset로 이름 변경
빌드 226 (2021년 6월 29일)
새로운 사항
- NetworkRunner.RequestStateAuthority 및 NetworkRunner.ReleaseStateAuthority 추가
버그 수정
- 수정: 공유 모드에서 클라이언트가 나갈 때 객체 파괴
빌드 223 (2021년 6월 25일)
버그 수정
- 수정: 일부 유니티 버전에서 패키지 임포트 후 "Could not load NetworkProjectConfigAsset" 오류
빌드 222 (2021년 6월 24일)
새로운 사항
- NetworkObject.RemoveInputAuthority 및 NetworkObject.RemoveStateAuthority 추가
버그 수정
- 수정: 정확도가 double로 지정되었을 때 더 이상 위버가 예외를 발생시키지 않습니다.
빌드 221 (2021년 6월 23일)
변경 사항
- ISceneLoaded, IPlayerJoined, IBeforeAllTicks 등과 같은 콜백 인터페이스는 사용 불가로 되어 있는 곳에서는 호출되지 않습니다
버그 수정
- 수정: 초기 객체 없이 시작된 첫 번째 HitboxRoot 개체를 Manager에 추가할 때 지연 보상 시스템에서 발생 문제
- 수정: 물리 모드가 없음으로 설정된 경우 NetworkRigidbody가 오류를 발생시키는 문제
빌드 220 (2021년 6월 22일)
새로운 사항
- 지연 보상 쿼리용 RaycastAll
변경 사항
- 이제 NetworkRigidbody는 내장된 일체 강체 보간을 자동으로 비활성화합니다. NetworkRigidbody가 보간을 사용하는 경우 해당 강체에 대한 모든 보간을 처리합니다.
- NetworkRigidbody 인스펙터에서 SyncDragMass 및 InterpolationTarget의 순서가 변경되었습니다.
- 이제 인스펙터의 Network 속성들은 기본 닫힌 폴드아웃을 사용하므로 이러한 값을 모니터링하면 NetworkBehaviours가 복잡한 편집기에서 성능 문제를 일으킬 수 있습니다.
버그 수정
- 수정: SinglePlayer 모드
- 수정: 안드로이드에서 IL2CPP 메모리 정렬 문제
빌드 218 (2021년 6월 19일)
변경 사항
- Runtime 및 베이크된 정보가 NetworkObject 인스펙터에 노출
빌드 217 (2021년 6월 18일)
새로운 사항
- 특정 히트박스의 과거 pos/rot에 대한 지연 보상 쿼리(두 개의 오버로드: 틱 또는 플레이어 참조 뷰 기준).
변경 사항
- 문서를 개선 및 보간 구성 옵션을 쉽게 사용
버그 수정
- 수정: 중첩된 INetworkInput 과 INetworkStruct 타입의 모든 문제
- 수정: 약간의 델타 시간이 취소되는 보간 시간 지터 델타 계산의 사소한 문제
빌드 216 (2021년 6월 17일)
새로운 사항
- 새로운 인게임 통계 구현
변경 사항
- NetworkDebugStart 자동 모드가 메뉴에 표시되지 않습니다. 클라이언트 시작을 위해 수동 또는 UserInterface 설정을 사용하세요.
버그 수정
- 수정: 전용 서버에 연결되어 있는 MaxPlayers
- 수정: StartClients 및 StartClient 재작업을 위한 etworkDebugStart 메뉴
- 수정: 드문 경우 클라이언트 측 예측 시간이 매우 높은 예측 오프셋에 걸리는 버그
- 수정: 드문 경우 클라이언트 측 예측 시간이 매우 높은 예측 오프셋에 걸리는 버그
- 수정: SmoothRandom 생성자의 Assert 버그
빌드 215 (2021년 6월 16일)
버그 수정
- 수정: NetworkBehaviourUtils가 private로 표시된 경우 특정 RPC를 연결할 때 문제
빌드 214 (2021년 6월 15일)
새로운 사항
- 특정 타입의 모든 활성 네트워크/시뮬레이션 동작을 얻기 위해 NetworkRunner.GetAllBehaviours<T> API 추가
- IRunnerVisibilityRecognizedType Monobehaviours에 추가하여 RunnerVisibility 시스템에 포함되도록 플래그할 수 있습니다.
변경 사항
- GetAllBehaviours용으로 GetActiveSimulationBehaviours 사용되지 않음
버그 수정
- 수정: SinglePlayer 모드 시작
빌드 213 (2021년 6월 14일)
버그 수정
- 수정: [Neworked] 포인터 타입용 처리를 위한 Networked 속성 UI 추가
빌드 211 (2021년 6월 11일)
버그 수정
- 수정: macOS 용 Nanosockets
- 수정: Singleplayer 게임 sdtart
빌드 208 (2021년 6월 9일)
- 초기 베타 릴리즈
변경 사항
- 알파 changelog 삭제