private void SendTexturesToGameHost()
        {
            _consoleHandle.LogInfo("Sending textures and memory mapped filename to game host from editor...");

            var req = new SetRenderTargetsRequest();

            req.SharedPointer.AddRange(_sharedRendererHost.WritableTextureIntPtrs.Select(x => x.ToInt64()));
            req.SyncMmappedFileName = _sharedRendererHost.SynchronisationMemoryMappedFileName;
            try
            {
                _gameHostClient.SetRenderTargets(req);
            }
            catch
            {
                _requiresDelaySync = true;
            }
        }
예제 #2
0
 public override Task <SetRenderTargetsResponse> SetRenderTargets(SetRenderTargetsRequest request, ServerCallContext context)
 {
     _gameRunner.SetHandles(request.SharedPointer.Select(x => new IntPtr(x)).ToArray(), request.SyncMmappedFileName);
     return(Task.FromResult(new SetRenderTargetsResponse()));
 }