ayumax / Objectdeliverer
Licence: mit
ObjectDeliverer is a data transmission / reception library for Unreal Engine (C ++, Blueprint).
Stars: ✭ 78
Projects that are alternatives of or similar to Objectdeliverer
Varest
REST API plugin for Unreal Engine 4 - we love restfull backend and JSON communications!
Stars: ✭ 707 (+806.41%)
Mutual labels: unreal-engine, blueprint
Logbert
Logbert is an advanced log message viewer for log4net, log4j and others.
Stars: ✭ 70 (-10.26%)
Mutual labels: tcp, udp
Tensorflow Ue4
TensorFlow plugin for Unreal Engine 4
Stars: ✭ 753 (+865.38%)
Mutual labels: unreal-engine, blueprint
Blinksocks
A framework for building composable proxy protocol stack.
Stars: ✭ 587 (+652.56%)
Mutual labels: tcp, udp
Libnet
A portable framework for low-level network packet construction
Stars: ✭ 640 (+720.51%)
Mutual labels: tcp, udp
Gensio
A library to abstract stream I/O like serial port, TCP, telnet, UDP, SSL, IPMI SOL, etc.
Stars: ✭ 30 (-61.54%)
Mutual labels: tcp, udp
Proxy admin free
Proxy是高性能全功能的http代理、https代理、socks5代理、内网穿透、内网穿透p2p、内网穿透代理、内网穿透反向代理、内网穿透服务器、Websocket代理、TCP代理、UDP代理、DNS代理、DNS加密代理,代理API认证,全能跨平台代理服务器。
Stars: ✭ 487 (+524.36%)
Mutual labels: tcp, udp
Godsharp.socket
An easy-to-use .NET socket server and client.
Stars: ✭ 35 (-55.13%)
Mutual labels: tcp, udp
Tools
C# 工具箱,提供Socket(TCP、UDP协议)、Redis、activemq、数据库访问等技术的封装实现
Stars: ✭ 34 (-56.41%)
Mutual labels: tcp, udp
Mr2
Mr.2 can help you expose local server to external network. Support both TCP/UDP, of course support HTTP. Zero-Configuration.
Stars: ✭ 1,102 (+1312.82%)
Mutual labels: tcp, udp
Leaf
A lightweight and fast proxy utility tries to include any useful features.
Stars: ✭ 530 (+579.49%)
Mutual labels: tcp, udp
Parallec
Fast Parallel Async HTTP/SSH/TCP/UDP/Ping Client Java Library. Aggregate 100,000 APIs & send anywhere in 20 lines of code. Ping/HTTP Calls 8000 servers in 12 seconds. (Akka) www.parallec.io
Stars: ✭ 777 (+896.15%)
Mutual labels: tcp, udp
Yasio
A multi-platform support c++11 library with focus on asio (asynchronous socket I/O) for any client application.
Stars: ✭ 483 (+519.23%)
Mutual labels: tcp, udp
Libzt
ZeroTier Sockets - Put a network stack in your app
Stars: ✭ 486 (+523.08%)
Mutual labels: tcp, udp
Mts
Project of Multi-protocol Test Tool opensourced by Ericsson
Stars: ✭ 34 (-56.41%)
Mutual labels: tcp, udp
ObjectDeliverer
UE4 Marketplace
https://www.unrealengine.com/marketplace/ja/slug/objectdeliverer
Description
ObjectDeliverer is a data transmission / reception library for Unreal Engine (C ++, Blueprint).
It has the following features.
- Communication protocol, data division rule, serialization method can be switched by part replacement.
- Available for both C ++ and Blueprint
Relationship between branch and UE4 Engine version
The master branch only supports UE4 4.25. You cannot build with 4.24 or lower. Use the'lessthan_425 'branch if you use it below 4.24.
Engine Version | branch |
---|---|
4.25 | master |
4.24 or less | lessthan_425 |
Communication protocol
The following protocols can be used with built-in. You can also add your own protocol.
- TCP/IP Server(Connectable to multiple clients)
- TCP/IP Client
- UDP(Sender)
- UDP(Receiver)
- Shared Memory(Windows Only)
- LogFile Writer
- LogFile Reader
Data division rule
The following rules are available for built-in split rules of transmitted and received data.
Serialization method
- Byte Array
- UTF-8 string
- Object(Json)
Installation
- Please clone this repository
- Please copy the Plugins directory to the project folder
- Please activate ObjectDeliverer from Plugins after launching editor
Quick Start
- Create an ObjectDelivererManager
- Create a DeliveryBox(If you wish to send and receive data other than binary)
- Set the send / receive protocol and PacketRule, then start the ObjectDelivererManager
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
}
How to use each function
Look at the Wiki https://github.com/ayumax/ObjectDeliverer/wiki
Note that the project description data, including the texts, logos, images, and/or trademarks,
for each open source project belongs to its rightful owner.
If you wish to add or remove any projects, please contact us at [email protected].