_some progerss?
This commit is contained in:
@@ -117,12 +117,18 @@ public class World
|
||||
|
||||
protected void CreateScene(string sceneNamePrefix, string sceneGuid)
|
||||
{
|
||||
string physicsSceneName = $"{sceneNamePrefix}PhysicsScene";
|
||||
PhysicsScene localPhysicsScene = Physics.FindOrCreateScene(physicsSceneName);
|
||||
if (false && sceneNamePrefix == "Client")
|
||||
{
|
||||
_scene = Level.Scenes.FirstOrDefault(x => !x.Name.StartsWith("Server"));
|
||||
}
|
||||
else
|
||||
{
|
||||
string physicsSceneName = $"{sceneNamePrefix}PhysicsScene";
|
||||
PhysicsScene localPhysicsScene = Physics.FindOrCreateScene(physicsSceneName);
|
||||
|
||||
Guid guid = JsonSerializer.ParseID(sceneGuid);
|
||||
string guidStr = JsonSerializer.GetStringID(guid);
|
||||
string sceneData = $@"
|
||||
Guid guid = JsonSerializer.ParseID(sceneGuid);
|
||||
string guidStr = JsonSerializer.GetStringID(guid);
|
||||
string sceneData = $@"
|
||||
{{
|
||||
""ID"": ""{guidStr}"",
|
||||
""TypeName"": ""FlaxEngine.SceneAsset"",
|
||||
@@ -145,25 +151,26 @@ public class World
|
||||
]
|
||||
}}";
|
||||
|
||||
{
|
||||
var onSceneLoaded = (Scene loadedScene, Guid id) =>
|
||||
{
|
||||
if (guid == id)
|
||||
var onSceneLoaded = (Scene loadedScene, Guid id) =>
|
||||
{
|
||||
loadedScene.PhysicsScene = localPhysicsScene;
|
||||
//scene = loadedScene;
|
||||
}
|
||||
};
|
||||
if (guid == id)
|
||||
{
|
||||
loadedScene.PhysicsScene = localPhysicsScene;
|
||||
//scene = loadedScene;
|
||||
}
|
||||
};
|
||||
|
||||
try
|
||||
{
|
||||
Level.SceneLoaded += onSceneLoaded;
|
||||
//Level.LoadScene(new SceneReference(guid));
|
||||
_scene = Level.LoadSceneFromBytes(Encoding.ASCII.GetBytes(sceneData));
|
||||
}
|
||||
finally
|
||||
{
|
||||
Level.SceneLoaded -= onSceneLoaded;
|
||||
try
|
||||
{
|
||||
Level.SceneLoaded += onSceneLoaded;
|
||||
//Level.LoadScene(new SceneReference(guid));
|
||||
_scene = Level.LoadSceneFromBytes(Encoding.ASCII.GetBytes(sceneData));
|
||||
}
|
||||
finally
|
||||
{
|
||||
Level.SceneLoaded -= onSceneLoaded;
|
||||
}
|
||||
}
|
||||
}
|
||||
Assert.IsTrue(_scene);
|
||||
@@ -382,8 +389,8 @@ file class ServerWorld : World
|
||||
actorState.jumped = networkEvent.Message.ReadBoolean();
|
||||
|
||||
//inputState.frame = receivedFrame;
|
||||
inputState.ViewDelta.X = networkEvent.Message.ReadSingle();
|
||||
inputState.ViewDelta.Y = networkEvent.Message.ReadSingle();
|
||||
//inputState.ViewDelta.X = networkEvent.Message.ReadSingle();
|
||||
//inputState.ViewDelta.Y = networkEvent.Message.ReadSingle();
|
||||
inputState.MoveForward = networkEvent.Message.ReadSingle();
|
||||
inputState.MoveRight = networkEvent.Message.ReadSingle();
|
||||
inputState.Attack = networkEvent.Message.ReadBoolean();
|
||||
@@ -400,8 +407,9 @@ file class ServerWorld : World
|
||||
uint playerId = networkEvent.Message.ReadUInt32();
|
||||
float time = networkEvent.Message.ReadSingle();
|
||||
float delay = Time.TimeSinceStartup - time;
|
||||
inputState.ViewDelta.X = networkEvent.Message.ReadSingle();
|
||||
inputState.ViewDelta.Y = networkEvent.Message.ReadSingle();
|
||||
inputState.ViewDelta = Float2.Zero;
|
||||
inputState.ViewAngles.X = networkEvent.Message.ReadSingle();
|
||||
inputState.ViewAngles.Y = networkEvent.Message.ReadSingle();
|
||||
inputState.MoveForward = networkEvent.Message.ReadSingle();
|
||||
inputState.MoveRight = networkEvent.Message.ReadSingle();
|
||||
inputState.Attack = networkEvent.Message.ReadBoolean();
|
||||
@@ -595,7 +603,9 @@ file class ClientWorld : World
|
||||
message.WriteUInt64(Frame);
|
||||
message.WriteUInt32(player.PlayerId);
|
||||
message.WriteSingle(Time.TimeSinceStartup);
|
||||
message.WriteVector2(inputState.ViewDelta);
|
||||
message.WriteSingle(movementState.viewAngles.X);
|
||||
message.WriteSingle(movementState.viewAngles.Y);
|
||||
//message.WriteSingle(movementState.viewAngles.Z);
|
||||
message.WriteSingle(inputState.MoveForward);
|
||||
message.WriteSingle(inputState.MoveRight);
|
||||
message.WriteBoolean(inputState.Attack);
|
||||
|
||||
Reference in New Issue
Block a user