https://www.unrealengine.com/marketplace/ja/slug/objectdeliverer
ObjectDeliverer est une bibliothèque de transmission/réception de données pour Unreal Engine (C++, Blueprint).
Il présente les caractéristiques suivantes.
La branche principale est constructible avec UE5 5.0 ou version ultérieure ; UE4 nécessite quelques modifications pour être construit.
Les protocoles suivants peuvent être utilisés avec le protocole intégré. Vous pouvez également ajouter votre propre protocole.
Les règles suivantes sont disponibles pour les règles de répartition intégrées des données transmises et reçues.
Taille fixe
Exemple) Dans le cas de 1024 octets fixes
En-tête (BodySize) + Corps
Exemple) Lorsque la zone de taille est de 4 octets
Divisé par symbole de terminal
Exemple) Quand 0x00 est la fin
void UMyClass::Start ()
{
auto deliverer = UObjectDelivererManager::CreateObjectDelivererManager ();
// bind connected event
deliverer-> Connected . AddDynamic ( this , &UMyClass::OnConnect);
// bind disconnected event
deliverer-> Disconnected . AddDynamic ( this , &UMyClass::OnDisConnect);
// bind receive event
deliverer-> ReceiveData . AddDynamic ( this , &UMyClass::OnReceive);
// start deliverer
// + protocol : TCP/IP Server
// + Data division rule : Header(BodySize) + Body
// + Serialization method : Byte Array
deliverer-> Start ( UProtocolFactory::CreateProtocolTcpIpServer ( 9099 ),
UPacketRuleFactory::CreatePacketRuleSizeBody ());
}
void UMyClass::OnConnect (UObjectDelivererProtocol* ClientSocket)
{
// send data
TArray<uint8> buffer;
deliverer-> Send (buffer);
}
void UMyClass::OnDisConnect (UObjectDelivererProtocol* ClientSocket)
{
// closed
UE_LOG (LogTemp, Log, TEXT ( " closed " ));
}
void UMyClass::OnReceive (UObjectDelivererProtocol* ClientSocket, const TArray<uint8>& Buffer)
{
// received data buffer
}
Regardez le wiki https://github.com/ayumax/ObjectDeliverer/wiki