Crate bevy_replicon_renet
source ·Expand description
Provides integration for bevy_replicon
for bevy_renet
.
§Getting started
This guide assumes that you have already read quick start guide from bevy_replicon
.
All Renet API is re-exported from this plugin, you don’t need to include bevy_renet
or renet
to your Cargo.toml
.
Renet by default uses the netcode transport which is re-exported by the renet_transport
feature. If you want to use other transports, you can disable it.
§Initialization
Add RepliconRenetPlugins
along with RepliconPlugins
:
use bevy::prelude::*;
use bevy_replicon::prelude::*;
use bevy_replicon_renet::RepliconRenetPlugins;
let mut app = App::new();
app.add_plugins((MinimalPlugins, RepliconPlugins, RepliconRenetPlugins));
Plugins in RepliconRenetPlugins
automatically add renet
plugins, you don’t need to add them.
If the renet_transport
feature is enabled, netcode plugins will also be automatically added.
§Server and client creation
To connect to the server or create it, you need to initialize the
RenetClient
and NetcodeClientTransport
or
RenetServer
and NetcodeServerTransport
resources from Renet.
Never insert client and server resources in the same app for single-player, it will cause a replication loop.
This crate provides the RenetChannelsExt
extension trait to conveniently convert channels
from the RepliconChannels
resource into renet channels.
When creating a server or client you need to use a ConnectionConfig
from renet
, which can be initialized like this:
use bevy::prelude::*;
use bevy_replicon::prelude::*;
use bevy_replicon_renet::{renet::ConnectionConfig, RenetChannelsExt, RepliconRenetPlugins};
let channels = app.world.resource::<RepliconChannels>();
let connection_config = ConnectionConfig {
server_channels_config: channels.get_server_configs(),
client_channels_config: channels.get_client_configs(),
..Default::default()
};
For a full example of how to initialize a server or client see the example in the repository.
Re-exports§
pub use bevy_renet::renet;
Modules§
Structs§
Traits§
- External trait for
RepliconChannels
to provide convenient conversion into renet channel configs.