当前位置: 首页 > article >正文

Unreal Engine5 笔记(持续更新)

CDebug及UE_LogdebugPrintGEngine-AddOnScreenDebugMessage(-1, 5, FColor::Red, Begin play);含参printint a 100; GEngine-AddOnScreenDebugMessage(-1, 5, FColor::Red, FString::Printf(TEXT(%d), a));绘制调制函数#include DrawDebugHelpers.hDrawDebugSphere()UWorld* worldGetWorld(); //确保世界不为NULL if(world) { DrawDebugSphere(GetWorld(),GetActorLocation(),25.0f,24,FColor::Red,true ); //不会消失 DrawDebugSphere(GetWorld(),GetActorLocation(),25.0f,24,FColor::Red,false,30.0f ); //30s后消失 }DrawDebugLine()DrawDebugLine(GetWorld(),GetActorLocation(),GetActorLocation()100.0f*GetActorForwardVector(),FColor::Red,true);DrawDebugPoint()DrawDebugPoint(GetWorld(),GetActorLocation()100.0f*GetActorForwardVector(),15.0f,FColor::Red,true);UE_logDisplay:普通日志消息Warning:黄色日志消息Error: 红色日志消息int NumberOfApples10; UE_LOG(LogTemp,Display,TEXT(NumberOfApples: %d),NumberOfApples);基本类型Bool大小1 byte取值范围0|1布尔变量必须以b为前缀uint8 bTest:1;uint8是无符号 8 位整数类型占用 1 字节8 位:1是 C 的位域语法指定该变量只占用 1 个比特位。因此Test实际存储的值只能是 0 或 1该语法只可在头文件中使用uint8大小1 byte取值范围0~255int32大小4 byte取值范围-2^32~2^32-1float大小4 byte取值范围-2^32~2^32-1int 64大小4byte取值范围-2^64~2^64-1FName大小12byteFString大小12byteFText大小24byteFVector(三维向量)FVector2D(二维向量)FRotatorPitch是围绕Y轴旋转叫做俯仰角Yaw是围绕Z轴旋转叫做偏航角Roll是围绕X轴旋转叫做翻滚角Ftransform宏UPROPERTYEditAnywhere在编辑中可见且可编辑EditDefaultsOnly只在类默认设置中可见EditInstanceOnly可通过属性窗口进行编辑但只能在实例上进行不能在原型上进行VisibleAnywhere在编辑中可见且不可编辑BlueprintReadOnly蓝图只读BlueprintReadWrite蓝图可读可写UFUNCTIONUE5.6官方UFunction文档UFUNCTION([specifier1setting1, specifier2, ...], [meta(key1value1, key2, ...)]) ReturnType FunctionName([Parameter1, Parameter2, ..., ParameterN1DefaultValueN1, ParameterN2DefaultValueN2]) [const];BlueprintAuthorityOnly如果在具有网络权限的机器上运行服务器、专用服务器或单人游戏此函数将仅从蓝图代码执行BlueprintCallable此函数可在蓝图或关卡蓝图图表中执行BlueprintCosmetic此函数为修饰性的无法在专用服务器上运行BlueprintImplementableEvent此函数可在蓝图或关卡蓝图图表中实现BlueprintNativeEvent此函数旨在被蓝图覆盖掉但是也具有默认原生实现。用于声明名称与主函数相同的附加函数但是末尾添加了_Implementation是写入代码的位置。如果未找到任何蓝图覆盖该自动生成的代码将调用_Implementation方法BlueprintPure此函数不对拥有它的对象产生任何影响可在蓝图或关卡蓝图图表中执行。早默认情况下带有const标记的函数将作为纯函数公开。要将常量函数变成非纯函数你可以做以下声明BlueprintPurefalseUFUNCTION(BlueprintPure) float BlueprintPureFunction; UFUNCTION(BlueprintCallable) float BlueprintCallableFunction UFUNCTION(BlueprintCallable) int32 BlueprintCallableConstFunction() const UFUNCTION(BlueprintPurefasle) Int32 BlueprintPureFalseFunction() constCategory TopCategory\|SubCategory\|Etc在蓝图编辑工具中显示时指定函数的类别。使用 | 运算符定义嵌套类别元数据说明符官方文档常用属性元数据说明符ClampMinN用于浮点和整数属性。指定可在属性中输入的最小值NClampMaxN用于浮点和整数属性。指定可在属性中输入的最大值N自定义宏#define DRAW_SPHERE(Location) if (GetWorld()) DrawDebugSphere(GetWorld(),Location,25.0f,24,FColor::Red,true);#define DRAW_VECTOR(StartLocation,EndLocation) if (GetWorld())\ { \ DrawDebugLine(GetWorld(),StartLocation,EndLocation,FColor::Red,true,-1.f,0,1.f);\ DrawDebugPoint(GetWorld(),EndLocation,15.f,FColor::Red,true);\ }代码规范官方文档命名规范枚举枚举的前缀为E,定义在头文件UENUM(BlueprintType) enum class EColorBits :uint8 { ECB_Red, ECB_Green, ECB_Blue };结构体官方文档前缀为U,定义在头文件USTRUCT([Specifier, Specifier, ...]) struct FStructName { GENERATED_BODY() };结构规范符Struct Specifiers结构规范器提供元数据控制结构体在引擎和编辑器的各个方面如何表现Atomic表示该类型应始终序列化为单一单元。该类不会生成自动生成的代码。该头仅用于解析元数据。BlueprintType将此类型暴露为可在蓝图中用于变量的类型NoExport该类不会生成自动生成的代码。头部仅用于解析元数据生成和销毁Actor官方文档类型转换函数FString To FName FName To FString//FString To FName FString Str TEXT(TestString); FName Name FName(*Str); //FName To FString FString TargetFString Name.ToString();组件UStaticMeshComponentUStaticMeshComponent* MyMesh;构造函数中MyMesh CreateDefaultSubobjectUStaticMeshComponent(TEXT(MyMeshComp)); RootComponent MyMesh;UCapsuleComponent官方文档UPROPERTY(VisibleAnywhere) UCapsuleComponent* Capsule;Capsule CreateDefaultSubobjectUCapsuleComponent(TEXT(MyCapsule)); SetRootComponent(Capsule);USkeletalMeshComponentUPROPERTY(VisibleAnywhere) USkeletalMeshComponent* SkeletalMesh;SkeletalMesh CreateDefaultSubobjectUSkeletalMeshComponent(TEXT(MySkeletalMesh)); SkeletalMesh-SetupAttachment(GetRootComponent());Input Enhanced Input玩家控制AutoPossessPlayer EAutoReceiveInput::Player0; //Player0 控制Input System来自UE4依赖InputComponent 和Project Settings→修改input配置在UE5中推荐使用Enhanced Input System代替主要为以下模块组成Input Action、Input Mapping Context、Triggers / ModifiersUEnhancedInputLocalPlayerSubsystemEnhancedPlayerInputComponent

相关文章:

Unreal Engine5 笔记(持续更新)

C Debug及UE_Log debugPrint GEngine->AddOnScreenDebugMessage(-1, 5, FColor::Red, "Begin play"); 含参print int a 100; GEngine->AddOnScreenDebugMessage(-1, 5, FColor::Red, FString::Printf(TEXT("%d"), a));绘制调制函数 #include &qu…...

基于航空影像的道路异常状态识别 无人机道路阻断巡检 道路减速带识别 无人机道路施工巡检 无人机斑马线监测 道路场景计算机视觉数据集Yolo第10552期

道路场景计算机视觉数据集 README数据集核心信息概览(多数为背景)项目内容类别数量4类类别中文名称阻断道路、减速带、施工中、斑马线图像数量800数据集格式YOLO格式核心应用价值基于航空影像的道路异常状态实例分割,支撑智能交通管理与道路运维决策 往期热门主题 主…...

计算机毕业设计springboot社区便民服务平台 基于SpringBoot框架的智慧社区综合服务运营平台 城市社区数字化生活与多元服务集成管理系统

计算机毕业设计springboot社区便民服务平台9pqty086(配套有源码 程序 mysql数据库 论文) 本套源码可以在文本联xi,先看具体系统功能演示视频领取,可分享源码参考。在快速城市化的进程中,社区作为城市的基本单元,其服务…...

基于STC8H8K64U的光学仪器协同采集平台设计

1. 项目概述本项目面向高校及科研院所实验室场景,构建一套基于STC8H8K64U单片机的多光学仪器协同控制与远程数据采集平台。其核心目标并非替代专用仪器控制器,而是作为轻量级、可扩展的“仪器粘合层”,解决实验室中多品牌、多协议光学设备&am…...

ROS2功能包构建与文件结构解析:从colcon编译到项目部署

1. 从零开始:理解ROS2功能包与工作空间 如果你刚开始接触ROS2,可能会被一堆新名词搞得有点懵:功能包、工作空间、colcon、ament……别担心,这很正常。我刚开始用ROS2的时候,也花了不少时间才把这些概念理清楚。今天&am…...

Nacos 3.0新特性解析:为什么控制台端口独立为8080?

Nacos 3.0架构演进:控制台端口独立背后的深度安全与运维考量 如果你是一位长期使用Nacos的开发者,从1.x版本一路升级过来,可能会对端口号的变化感到一丝困惑。最初,访问http://localhost:8848/nacos就能搞定一切;到了2…...

新媒体内容创作:使用DeOldify为历史题材短视频生成彩色素材

新媒体内容创作:使用DeOldify为历史题材短视频生成彩色素材 最近刷短视频,是不是经常看到一些老电影片段、历史纪录片被“上色”了?黑白画面一下子变得色彩鲜活,人物和场景都生动了起来,点赞和评论量往往也特别高。作…...

WuliArt Qwen-Image Turbo避坑指南:解决黑图、显存不足等常见问题

WuliArt Qwen-Image Turbo避坑指南:解决黑图、显存不足等常见问题 1. 为什么你的第一张图总是“黑屏”或“爆显存”? 你满怀期待地部署好WuliArt Qwen-Image Turbo,输入精心构思的Prompt,点击生成,然后……屏幕右侧一…...

C语言文件操作实战:读写二进制图片数据调用DeOldify服务

C语言文件操作实战:读写二进制图片数据调用DeOldify服务 你是不是也好奇,那些老照片上色服务背后是怎么运作的?作为一个C/C开发者,可能更想知道,如何用我们最熟悉的语言,从底层去实现图片的读取、发送和保…...

AI论文投稿指南:如何选择最适合你的CCF-A/B/C类期刊(附审稿周期对比)

AI论文投稿实战指南:从期刊选择到录用提速的深度策略 每次打开投稿系统,看着长长的期刊列表,你是不是也感到一丝迷茫?投顶刊怕周期太长耽误毕业,投普通期刊又担心影响力不够。在人工智能这个快速迭代的领域&#xff0c…...

ESP32开发新篇——VSCode插件助力ESP-IDF环境一键配置与实战

1. 为什么你需要VSCode插件开发ESP32? 第一次接触ESP32开发的朋友,往往会被官方推荐的ESP-IDF开发环境吓到。传统的安装方式需要手动配置Python、Git、CMake、Ninja等一堆工具链,光是环境变量配置就能劝退不少新手。我至今记得三年前第一次搭…...

Phi-4-reasoning-vision-15B企业级部署:supervisor托管+健康检查全链路

Phi-4-reasoning-vision-15B企业级部署:supervisor托管健康检查全链路 1. 引言:为什么需要企业级部署? 想象一下这个场景:你费了九牛二虎之力,终于把最新的视觉大模型部署到了服务器上。它运行得不错,能看…...

PaddleOCR v4实战:如何用SVTRNet微调训练提升中文标点符号识别准确率?

PaddleOCR v4实战:如何用SVTRNet微调训练提升中文标点符号识别准确率? 在实际处理海量中文文档时,无论是教育机构的历年档案、政府部门的公文流转,还是出版行业的古籍数字化,我们总会遇到一个看似微小却影响深远的难题…...

Dify 2026插件生态已剧变,你还在用v1.2旧范式?3类即将失效的API调用方式及2026兼容迁移路径

第一章:Dify 2026插件生态演进全景图Dify 2026标志着插件架构从松散集成迈向深度协同的质变节点。其核心突破在于引入「双向契约式插件协议」(BCP),使插件与平台在启动、上下文注入、状态同步及卸载全生命周期中具备可验证的行为契…...

嵌入式AIGC艺术装置:墨水屏+ESP32+云端生成的低功耗文化策展系统

1. 项目概述1.1 设计定位与人文内核“AIGC物品展示框——百工谱”并非传统意义上的嵌入式功能验证平台,而是一个以硬件为载体、以算法为笔触、以历史为纸张的微型数字策展系统。其核心目标是将抽象的文化维度(时代、地域、职业)转化为具象的视…...

OFA图像英文描述效果展示:生成描述长度控制在12–18词区间的稳定性验证

OFA图像英文描述效果展示:生成描述长度控制在12–18词区间的稳定性验证 1. 项目概述 今天我们来测试一个特别实用的AI工具——OFA图像英文描述系统。这个系统能够自动为图片生成简洁准确的英文描述,就像给图片配字幕一样简单。 想象一下这样的场景&am…...

GEE实战:构建2000-2025年MODIS与TerraClimate多变量生态气候时序数据集

1. 为什么需要构建生态气候时序数据集 做生态或气候研究的朋友应该都深有体会,最头疼的就是找数据。以前我们要分析某个区域的植被变化,可能需要从不同平台下载MODIS数据;研究气候因子又得去另一个网站找降水、温度资料。光是数据收集和格式转…...

从TLP传输瓶颈到性能调优:实战解析MaxPayloadSize的配置与影响

1. 为什么MaxPayloadSize会成为性能瓶颈? 第一次遇到PCIe设备性能问题时,我盯着监控图表上那条始终无法突破的带宽曲线百思不得其解。当时使用的NVMe SSD实测速度只有标称值的一半,经过三天排查才发现是MaxPayloadSize(MPS&#x…...

软件测试全攻略:从入门到精通的20种核心方法详解

1. 软件测试基础入门:从零开始理解测试本质 刚接触软件测试时,很多人会疑惑:为什么开发完程序还要专门测试?我刚开始做测试时也犯过这样的错误,直到某次上线后用户投诉才明白测试的重要性。简单来说,软件测…...

Windows服务器上Veritas NetBackup 10.1主服务器安装全流程(含用户权限配置避坑指南)

Windows服务器上Veritas NetBackup 10.1主服务器安装全流程(含用户权限配置避坑指南) 对于负责企业数据安全的IT管理员而言,在Windows Server上部署一套可靠的企业级备份系统,是保障业务连续性的基石。Veritas NetBackup作为业界公…...

Hi3519DV500实战:从零构建YOLOv8智能视频分析全链路

1. Hi3519DV500开发板与YOLOv8实战入门 第一次拿到Hi3519DV500开发板时,我和大多数嵌入式开发者一样既兴奋又忐忑。这款芯片在智能视觉领域有着"小钢炮"的称号,但真正要让它跑起YOLOv8这样的现代检测算法,还是需要趟过不少坑。下面…...

PDF表格提取准确率从61%跃升至98.7%,Dify 2026解析器重构逻辑全披露,仅限首批内测用户解密

第一章:PDF表格提取准确率跃升至98.7%的技术里程碑这一里程碑标志着PDF文档结构化解析能力的重大突破——在真实工业场景测试集(含扫描件、多栏布局、跨页合并单元格、手写批注干扰等复杂样本)上,端到端表格识别与重建准确率达到9…...

AI辅助开发实战:如何用chatbot模板提升对话系统开发效率

AI辅助开发实战:如何用chatbot模板提升对话系统开发效率 开发一个功能完善的对话系统,听起来很酷,但真正动手时,很多开发者都会陷入“从零造轮子”的泥潭。今天,我想和大家聊聊,如何借助成熟的 chatbot模板…...

SecGPT-14B作品集:自动生成OWASP Web安全测试用例(含请求/响应/验证步骤)

SecGPT-14B作品集:自动生成OWASP Web安全测试用例(含请求/响应/验证步骤) 1. 网络安全测试新利器 在Web应用安全测试领域,SecGPT-14B带来了革命性的效率提升。这个基于Qwen2ForCausalLM架构的大模型,专门针对网络安全…...

纯硬件循环数显:用555+CD4017+CD4511实现无MCU七段数码管动态显示

1. 项目概述“循环数显”是一个基于纯硬件逻辑实现的七段数码管动态显示系统,其核心设计目标是脱离微控制器和软件编程,仅通过基础数字逻辑器件与手动跳线配置,完成具有纪念意义日期或数字序列的循环显示。该系统面向电子初学者、硬件教学场景…...

Adadelta一个拒绝手动设置学习率的优化算法

为什么需要 Adadelta? 在深度学习的优化算法演化史中,每一个新方法的诞生都是为了修补前一个的伤口。Adadelta 出现于 2012 年,作者 Matthew Zeiler 发表在 arXiv 的一篇论文里,它的诞生动机非常明确——修复 Adagrad 的两个致命缺…...

jetson orin nano 手把手刷机指南:NVME

文章目录写在前面1 硬件准备2 软件准备2.1 Linux 系统准备2.2 下载NVIDIA SDKManager安装包3 准备SDK-Manager4 烧录Jetson系统镜像5 打开jetson 并链接显示器5.1 安装Jtop5.2 安装jtop5.3 安装jetpack6 安装需要的软件写在前面 只适用于jetson orin nano 的普通模式刷机&…...

RepeatModeler 2.0.7 安装与使用--生信工具75

1. 简介 RepeatModeler 是一套从头(de novo)鉴定转座子(TE)家族并构建共有序列的软件包。它整合了多个互补的重复序列预测工具,自动完成重复序列识别、聚类、去冗余、精修与分类,最终生成可直接用于 Repea…...

可视化微调神器Llama Factory:10分钟让大模型听懂你的话

可视化微调神器Llama Factory:10分钟让大模型听懂你的话 1. 前言 你有没有遇到过这样的情况? 想用大模型帮你写一份专业的行业报告,结果它给出的内容总是泛泛而谈,不够精准。想让大模型理解你公司的业务术语,但它总…...

mPLUG VQA效果实测:中英文混合提问的识别与响应能力

mPLUG VQA效果实测:中英文混合提问的识别与响应能力 你有没有想过,给AI看一张图,然后像问朋友一样问它问题,它会怎么回答?比如,你给它看一张街景照片,问“图里有几个人?”&#xff…...