ObjectDeliverer
v1.5.1
https://www.unrealengine.com/marketplace/ja/slug/objectdeliverer
ObjectDeliverer عبارة عن مكتبة لنقل/استقبال البيانات لـ Unreal Engine (C ++، Blueprint).
لديها الميزات التالية.
الفرع الرئيسي قابل للبناء باستخدام UE5 5.0 أو الأحدث؛ يتطلب UE4 بعض التعديلات للبناء.
يمكن استخدام البروتوكولات التالية مع المدمج في. يمكنك أيضًا إضافة البروتوكول الخاص بك.
تتوفر القواعد التالية لقواعد التقسيم المضمنة للبيانات المرسلة والمستقبلة.
حجم ثابت
مثال) في حالة الثابت 1024 بايت
الرأس (حجم الجسم) + الجسم
مثال) عندما تكون مساحة الحجم 4 بايت
تقسيم حسب رمز المحطة
مثال) عندما تكون 0x00 هي النهاية
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
}
انظر إلى الويكي https://github.com/ayumax/ObjectDeliverer/wiki