diff --git a/Source/Engine/Networking/NetworkStream.cs b/Source/Engine/Networking/NetworkStream.cs index fb062c2c1..3fa4ad9dc 100644 --- a/Source/Engine/Networking/NetworkStream.cs +++ b/Source/Engine/Networking/NetworkStream.cs @@ -407,6 +407,23 @@ namespace FlaxEngine.Networking return new Quaternion(ReadSingle(), ReadSingle(), ReadSingle(), ReadSingle()); } + /// + /// Writes data of type into the message. + /// + public void WriteRay(Ray value) + { + WriteVector3(value.Position); + WriteVector3(value.Direction); + } + + /// + /// Reads and returns data of type from the message. + /// + public Ray ReadRay() + { + return new Ray(ReadVector3(), ReadVector3()); + } + /// /// Writes data of type into the message. /// diff --git a/Source/Tools/Flax.Build/Build/Plugins/NetworkingPlugin.cs b/Source/Tools/Flax.Build/Build/Plugins/NetworkingPlugin.cs index ec23852d8..449eb2188 100644 --- a/Source/Tools/Flax.Build/Build/Plugins/NetworkingPlugin.cs +++ b/Source/Tools/Flax.Build/Build/Plugins/NetworkingPlugin.cs @@ -75,6 +75,7 @@ namespace Flax.Build.Plugins { "FlaxEngine.Float3", new InBuildSerializer("WriteFloat3", "ReadFloat3") }, { "FlaxEngine.Float4", new InBuildSerializer("WriteFloat4", "ReadFloat4") }, { "FlaxEngine.Quaternion", new InBuildSerializer("WriteQuaternion", "ReadQuaternion") }, + { "FlaxEngine.Ray", new InBuildSerializer("WriteRay", "ReadRay") }, }; /// @@ -471,7 +472,7 @@ namespace Flax.Build.Plugins if (string.Equals(binaryModule.Key, "FlaxEngine", StringComparison.Ordinal)) return; - // Skip assemblies not using netowrking + // Skip assemblies not using networking if (!binaryModule.Any(module => module.Tags.ContainsKey(Network))) return;