一:ue中udp通信方法(本篇使用的是第二种方法)
1.通过插件,然后在ue中蓝图中直接使用,比较方便。(下面这个两个是虚幻引擎中的udp插件,比较好用)
2. 通过自己编写c++代码,实现udp通信逻辑,在ue中的蓝图使用。
二:使用c++代码编写蓝图udp通信逻辑
在蓝图中c++类新创建一个BlueprintFunctionLibrary类,类名可以自己取,我这个去的类名为
UDPSocketServer.h,UDPSocketServer.cpp(源码放在下面了),网上代码基本上都是差不多的
源码(在我的源码中我通过udp测试软件实现了发送zoom:***%百分比数据控制角色大小缩放)
1.UDPSocketServer.h(头文件)
// Fill out your copyright notice in the Description page of Project Settings.
#pragma once
#include "CoreMinimal.h"
#include "Kismet/BlueprintFunctionLibrary.h"
#include "Runtime/Networking/Public/Networking.h"
#include "Engine.h"
#include "UDPSocketServer.generated.h"
/**
*
*/
UCLASS(Blueprintable)
// 这里需要注意一下DEMO_3D_API ,这个API是项目名字的API
class DEMO_3D_API UUDPSocketServer : public UBlueprintFunctionLibrary
{
GENERATED_BODY()
public:
static void ScreenMsg(const FString& Msg);
static void ScreenMsg(const FString& Msg, const float Value);
static void ScreenMsg(const FString& Msg, const FString& Msg2);
UFUNCTION(BlueprintCallable, Category = "UDP")
//新建初始化Receiver函数
static void StartUDPReceiver(const FString& YourChosenSocketName, const FString& TheIP, const int32 ThePort, bool& success);
UFUNCTION(BlueprintCallable, Category = "UDP")
static bool StartUDPSender(const FString& YourChosenSocketName, const FString& TheIP, const int32 ThePort);
UFUNCTION(BlueprintCallable, Categ