Struct IPCAndSocketDriverConstructor
The default NetCode driver constructor, initialise the server world to use multiple Unity.Networking.Transport.INetworkInterface and the client world using
a single Unity.Networking.Transport.INetworkInterface, depending on the current RequestedPlayType and current platform.
In particular:
- On the server: both Unity.Networking.Transport.IPCNetworkInterface and Unity.Networking.Transport.UDPNetworkInterface NetworkDriver in the editor and only
a single Unity.Networking.Transport.UDPNetworkInterface driver in the build.
- On the client:
- a single Unity.Networking.Transport.IPCNetworkInterface NetworkDriver if the both client and server worlds are present in the same process.
- a single Unity.Networking.Transport.UDPNetworkInterface driver in all other cases.
In the Editor and Development build, if the network simulator is enabled, force on the client to use the Unity.Networking.Transport.UDPNetworkInterface network driver.
Assembly: Unity.NetCode.dll
Syntax
public struct IPCAndSocketDriverConstructor : INetworkStreamDriverConstructor
Methods
CreateClientDriver(World, ref NetworkDriverStore, NetDebug)
Create and register a new Unity.Networking.Transport.NetworkDriver suitable for connecting client to server to the destination NetworkDriverStore.
The network driver instance will use socket or IPC network interfaces based on the RequestedPlayType and the
presence of a server instance in the same process.
For WebGL builds, client use by default the Unity.Networking.Transport.WebSocketNetworkInterface.
Declaration
public void CreateClientDriver(World world, ref NetworkDriverStore driverStore, NetDebug netDebug)
Parameters
Type |
Name |
Description |
World |
world |
The destination world in which the driver will be created
|
NetworkDriverStore |
driverStore |
An instance of a NetworkDriverStore where the driver will be registered
|
NetDebug |
netDebug |
The netDebug singleton, for logging errors and debug information
|
CreateServerDriver(World, ref NetworkDriverStore, NetDebug)
Create and register one or more network drivers that can be used to listen for incoming connection into the destination NetworkDriverStore.
By default, a Unity.Networking.Transport.NetworkDriver that uses a socket network interface is always created. For WebGL builds in particular,
the server use the Unity.Networking.Transport.WebSocketNetworkInterface for communicating with the clients.
In the Editor or in a Client/Server player build, if the RequestedPlayType mode is set to
ClientAndServer, a second Unity.Networking.Transport.NetworkDriver that use an IPC network interface will be also created and
that will be used for minimizing the latency for the in-proc client connection.
Declaration
public void CreateServerDriver(World world, ref NetworkDriverStore driverStore, NetDebug netDebug)
Parameters
Type |
Name |
Description |
World |
world |
The destination world in which the driver will be created
|
NetworkDriverStore |
driverStore |
An instance of a NetworkDriverStore where the driver will be registered
|
NetDebug |
netDebug |
The netDebug singleton, for logging errors and debug information
|
Implements
Did you find this page useful? Please give it a rating:
Thanks for rating this page!
What kind of problem would you like to report?
Thanks for letting us know! This page has been marked for review based on your feedback.
If you have time, you can provide more information to help us fix the problem faster.
Provide more information
You've told us this page needs code samples. If you'd like to help us further, you could provide a code sample, or tell us about what kind of code sample you'd like to see:
You've told us there are code samples on this page which don't work. If you know how to fix it, or have something better we could use instead, please let us know:
You've told us there is information missing from this page. Please tell us more about what's missing:
You've told us there is incorrect information on this page. If you know what we should change to make it correct, please tell us:
You've told us this page has unclear or confusing information. Please tell us more about what you found unclear or confusing, or let us know how we could make it clearer:
You've told us there is a spelling or grammar error on this page. Please tell us what's wrong:
You've told us this page has a problem. Please tell us more about what's wrong:
Thank you for helping to make the Unity documentation better!
Your feedback has been submitted as a ticket for our documentation team to review.
We are not able to reply to every ticket submitted.