feat: Implement Room Streaming System
- Add RoomStreamingManager to manage room loading and unloading based on player proximity. - Create StreamingBudgetConfigSO for memory and performance budgeting of the streaming system. - Introduce TransitionDirector to handle seamless and atmospheric fade transitions between rooms. - Develop WorldGraph to represent room connectivity and facilitate neighbor queries and distance calculations. - Implement RoomNode and RoomEdge classes to structure room data and connections.
This commit is contained in:
@@ -49,10 +49,14 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Opsive.BehaviorDesigner.Edi
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "BaseGames.Parry", "BaseGames.Parry.csproj", "{CFD59BED-321E-6F34-65CA-408816F768FA}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "BaseGames.Enemies", "BaseGames.Enemies.csproj", "{5E00F025-ED00-233A-3B2F-BAFF76D883F0}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "BaseGames.Quest", "BaseGames.Quest.csproj", "{4D3050DE-F729-61B6-5E21-4D4D1BAA9DD5}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "BaseGames.Localization", "BaseGames.Localization.csproj", "{54A12CB8-FDC2-A038-90D9-B8626E1E7B7D}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "BaseGames.Enemies.Navigation", "BaseGames.Enemies.Navigation.csproj", "{53E8D9CF-060B-99CB-BEBD-39FC626FD593}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Assembly-CSharp-firstpass", "Assembly-CSharp-firstpass.csproj", "{A4F2B84C-88C0-47A4-3127-6C338342D39C}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "BaseGames.Core", "BaseGames.Core.csproj", "{FE8FDA48-F779-850A-348D-48764F9384AF}"
|
||||
@@ -63,8 +67,6 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "PathBerserker2d.Editor", "P
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "BaseGames.Camera", "BaseGames.Camera.csproj", "{BF259A17-68A8-44BC-05D5-CAF1B979D687}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "BaseGames.Enemies", "BaseGames.Enemies.csproj", "{5E00F025-ED00-233A-3B2F-BAFF76D883F0}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Kybernetik.Animancer.FSM", "Kybernetik.Animancer.FSM.csproj", "{54A35301-41E5-2524-BFA0-B5B1B9B2BCD9}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "BaseGames.World.Map", "BaseGames.World.Map.csproj", "{16BB97E7-3EA9-4707-2D93-441D9C908404}"
|
||||
@@ -107,8 +109,6 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Assembly-CSharp-Editor-firs
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Opsive.Shared.Runtime", "Opsive.Shared.Runtime.csproj", "{ECCD6E34-452D-CDC6-1478-F31514CE0DA0}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "BaseGames.Enemies.Navigation", "BaseGames.Enemies.Navigation.csproj", "{53E8D9CF-060B-99CB-BEBD-39FC626FD593}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "BaseGames.Feedback", "BaseGames.Feedback.csproj", "{43AEDD34-4132-8EAF-E2A6-A0B6BBE53858}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "BaseGames.Animation", "BaseGames.Animation.csproj", "{344DC018-FDC3-6B01-DADE-9903E71FE8BC}"
|
||||
@@ -221,6 +221,10 @@ Global
|
||||
{CFD59BED-321E-6F34-65CA-408816F768FA}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{CFD59BED-321E-6F34-65CA-408816F768FA}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{CFD59BED-321E-6F34-65CA-408816F768FA}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{5E00F025-ED00-233A-3B2F-BAFF76D883F0}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{5E00F025-ED00-233A-3B2F-BAFF76D883F0}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{5E00F025-ED00-233A-3B2F-BAFF76D883F0}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{5E00F025-ED00-233A-3B2F-BAFF76D883F0}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{4D3050DE-F729-61B6-5E21-4D4D1BAA9DD5}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{4D3050DE-F729-61B6-5E21-4D4D1BAA9DD5}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{4D3050DE-F729-61B6-5E21-4D4D1BAA9DD5}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
@@ -229,6 +233,10 @@ Global
|
||||
{54A12CB8-FDC2-A038-90D9-B8626E1E7B7D}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{54A12CB8-FDC2-A038-90D9-B8626E1E7B7D}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{54A12CB8-FDC2-A038-90D9-B8626E1E7B7D}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{53E8D9CF-060B-99CB-BEBD-39FC626FD593}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{53E8D9CF-060B-99CB-BEBD-39FC626FD593}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{53E8D9CF-060B-99CB-BEBD-39FC626FD593}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{53E8D9CF-060B-99CB-BEBD-39FC626FD593}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{A4F2B84C-88C0-47A4-3127-6C338342D39C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{A4F2B84C-88C0-47A4-3127-6C338342D39C}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{A4F2B84C-88C0-47A4-3127-6C338342D39C}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
@@ -249,10 +257,6 @@ Global
|
||||
{BF259A17-68A8-44BC-05D5-CAF1B979D687}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{BF259A17-68A8-44BC-05D5-CAF1B979D687}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{BF259A17-68A8-44BC-05D5-CAF1B979D687}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{5E00F025-ED00-233A-3B2F-BAFF76D883F0}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{5E00F025-ED00-233A-3B2F-BAFF76D883F0}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{5E00F025-ED00-233A-3B2F-BAFF76D883F0}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{5E00F025-ED00-233A-3B2F-BAFF76D883F0}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{54A35301-41E5-2524-BFA0-B5B1B9B2BCD9}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{54A35301-41E5-2524-BFA0-B5B1B9B2BCD9}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{54A35301-41E5-2524-BFA0-B5B1B9B2BCD9}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
@@ -337,10 +341,6 @@ Global
|
||||
{ECCD6E34-452D-CDC6-1478-F31514CE0DA0}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{ECCD6E34-452D-CDC6-1478-F31514CE0DA0}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{ECCD6E34-452D-CDC6-1478-F31514CE0DA0}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{53E8D9CF-060B-99CB-BEBD-39FC626FD593}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{53E8D9CF-060B-99CB-BEBD-39FC626FD593}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{53E8D9CF-060B-99CB-BEBD-39FC626FD593}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{53E8D9CF-060B-99CB-BEBD-39FC626FD593}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{43AEDD34-4132-8EAF-E2A6-A0B6BBE53858}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{43AEDD34-4132-8EAF-E2A6-A0B6BBE53858}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{43AEDD34-4132-8EAF-E2A6-A0B6BBE53858}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
|
||||
Reference in New Issue
Block a user