This page has been translated automatically.
Video Tutorials
Interface
Essentials
Advanced
How To
Basics
Rendering
Professional (SIM)
UnigineEditor
Interface Overview
Assets Workflow
Version Control
Settings and Preferences
Working With Projects
Adjusting Node Parameters
Setting Up Materials
Setting Up Properties
Lighting
Sandworm
Using Editor Tools for Specific Tasks
Extending Editor Functionality
Built-in Node Types
Nodes
Objects
Effects
Decals
Light Sources
Geodetics
World Nodes
Sound Objects
Pathfinding Objects
Players
Programming
Fundamentals
Setting Up Development Environment
Usage Examples
C++
C#
UnigineScript
UUSL (Unified UNIGINE Shader Language)
Plugins
File Formats
Materials and Shaders
Rebuilding the Engine Tools
GUI
Double Precision Coordinates
API
Animations-Related Classes
Containers
Common Functionality
Controls-Related Classes
Engine-Related Classes
Filesystem Functionality
GUI-Related Classes
Math Functionality
Node-Related Classes
Objects-Related Classes
Networking Functionality
Pathfinding-Related Classes
Physics-Related Classes
Plugins-Related Classes
IG Plugin
CIGIConnector Plugin
Rendering-Related Classes
VR-Related Classes
Content Creation
Content Optimization
Materials
Material Nodes Library
Miscellaneous
Input
Math
Matrix
Textures
Art Samples
Tutorials

Unigine.Plugins.Syncker.Syncker Class

This class represents the base interface of the Syncker, from which Master and Slave interfaces are inherited. It contains all common functions available for both Slave and Master.

Notice
Syncker plugin must be loaded.

Syncker Class

Enums

DELIVERY_METHOD#

Delivery mode to be used by the Syncker.
NameDescription
UNRELIABLE = 0Unreliable delivery mode. Pure UDP. Packets may be lost, duplicated, or received in an order that differs from the one they were sent. Packets are not compressed, fragmented, or merged.
SEQUENCED = 1Sequenced delivery mode. Packets may be lost, but never duplicated, they arrive in the exact order they were sent.
RELIABLE = 2Reliable delivery mode. Reliable and sequenced mode, enabled by default. All packets shall be delivered to the recipient in the exact order they were sent.

ADDRESSING_METHOD#

Addressing mode to be used by the Syncker.
NameDescription
BROADCAST = 0Broadcast addressing mode (one-to-all): hosts have different IP-addresses, but a single port.
UNICAST = 1Unicast addressing mode (one-to-one): hosts have different IP-addresses (some may be the same) and different ports.
MULTICAST = 2Multicast addressing mode (one-to-many): hosts have different IP-addresses, but a single port.

SWAP_SYNC_MODE#

Buffer swap synchronization mode.
NameDescription
DEFAULT = 0Default buffer swap synchronization.
NVIDIA = NVIDIA buffer swap synchronization. Detailed information on current sync status is displayed in the console.
Notice
This mode is available only for NVIDIA Quadro GPUs with G-SYNC support.

Properties

double ExtrapolationPeriod#

Console: syncker_extrapolation_period
The Current extrapolation period value for the computer.

double InterpolationPeriod#

Console: syncker_interpolation_period
The Current interpolation period value for the computer.

bool Interpolation#

Console: syncker_interpolation
The A value indicating if interpolation and extrapolation are enabled for the computer to tackle the problem of lost packets between the master and slaves.

float DisconnectTimeout#

The Current timeout period after which a Slave is considered as disconnected.

Syncker.ADDRESSING_METHOD AddressingMethod#

The Packets addressing mode currently used by the Syncker.

double IFps#

The Duration of the last frame, in seconds. This value is more accurate than that of the Game class.

double Time#

The Current Master frame time, in seconds, (even if called from a Slave computer). It is the time of the last buffer swap operation (i.e., beginning of the next frame). This value is more accurate than that of the Game class.

string ComputerName#

The name of the computer to be used when assigning a viewport to be displayed (see SpiderVision plugin). This name can be set at the application startup via the computer_name command-line argument. If not specified the name is obtained from the SpiderVision plugin, or if the latter is unavailable the name will be taken from the Operating System settings.

Syncker.SWAP_SYNC_MODE SwapSyncMode#

The Current swap synchronization mode used by the Syncker. One of the following:
  • DEFAULT - default syncronization mode.
  • NVIDIA - NVIDIA buffer swap synchronization. Detailed information on current sync status is displayed in the console (available only for NVIDIA Quadro GPUs with G-SYNC support).

Members


bool IsInterpolation ( Node node ) #

Returns a value indicating if the given node is interpolated by the Syncker.

Arguments

  • Node node - Node to be checked.

Return value

true if the given node is interpolated by the Syncker; otherwise, false.

void SetDebug ( bool enabled, int x, int y, int align_mask ) #

Console: syncker_debug
Enables or disables displaying of debug information at the specified position on the screen.

Arguments

  • bool enabled - true to display the debug information; false - to hide it.
  • int x - Horizontal margin of the debug information block. The default value is 10.
  • int y - Vertical margin of the debug information block. The default value is 10.
  • int align_mask - Alignment mask. One of the Gui::ALIGN_* variables or their combination. The default value is Gui::ALIGN_RIGHT | Gui::ALIGN_BOTTOM.

bool IsDebug ( ) #

Console: syncker_debug
Returns a value indicating if the debug information is to be displayed.

Return value

true if the debug information is to be displayed; otherwise, false.

bool SendMessage ( string channel, Blob message, Syncker.DELIVERY_METHOD delivery_method = DELIVERY_METHOD.RELIABLE ) #

Sends a user message contained in the specified buffer using the given delivery method to the specified named channel via the UDP protocol.

Arguments

  • string channel - Channel name. Multiple systems may use Syncker's network simultaneously (e.g. IG and user's application). For convenience, all messages are sent and received via named channels.
  • Blob message - Buffer, containing the user message.
  • Syncker.DELIVERY_METHOD delivery_method -

Return value

true if the message was sent successfully; otherwise, false.

void SetMessageReceivedCallback ( string channel ) #

Sets a callback function to be fired when a UDP user message is sent. A callback is executed in the Main Thread, but it is undefined when exactly — either in update(), or postUpdate(), or swap(). To unsubscribe from this callback, set the callback pointer to nullptr.

Arguments

  • string channel - Channel name. Multiple systems may use Syncker's network simultaneously (e.g. IG and user's application). For convenience, all messages are sent and received via named channels. If the specified channel does not exist, it shall be created.

void RemoveMessageReceivedCallback ( string channel ) #

Removes a callback function to be fired when a UDP user message is received.

Arguments

  • string channel - Channel name. Multiple systems may use Syncker's network simultaneously (e.g. IG and user's application). For convenience, all messages are sent and received via named channels. If the specified channel does not exist, it shall be created.
Last update: 2024-12-13
Build: ()