https://www.unrealengine.com/marketplace/ja/slug/objectdeliverer
ObjectDeliverer adalah perpustakaan transmisi/penerimaan data untuk Unreal Engine (C++, Blueprint).
Ini memiliki beberapa fitur berikut.
Cabang master dapat dibangun dengan UE5 5.0 atau lebih baru; UE4 memerlukan beberapa modifikasi untuk dibuat.
Protokol berikut dapat digunakan dengan built-in. Anda juga dapat menambahkan protokol Anda sendiri.
Aturan berikut tersedia untuk aturan terpisah bawaan dari data yang dikirim dan diterima.
Ukuran Tetap
Contoh) Dalam kasus tetap 1024 byte
Header (Ukuran Tubuh) + Badan
Contoh) Bila ukuran areanya 4 byte
Pisahkan berdasarkan simbol terminal
Contoh) Ketika 0x00 adalah akhir
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
}
Lihat Wiki https://github.com/ayumax/ObjectDeliverer/wiki