[UE4]反射】的更多相关文章

1.根据名字获得类(C++支持,蓝图本身不支持但可以通过工厂模式模拟) 国外大神提供的封装好的C++实现: https://github.com/getsetgames/BlueprintReflection 功能: 1) Get Class By Name(根据类的名字获得类) The Get Class By Name blueprint function can be used to retrieve a Class (UClass) object by providing its nam…
一些学习UE4时的笔记,转载请注明出处. ☆ UE4逻辑 Actor 是由 AActor 类派生而来的类实例:能被放入游戏世界场景的所有游戏性对象的基础类.对象是继承自 UObject 类的类实例:虚幻引擎中所有对象的基础类,包括Actor.因此,实际上虚幻引擎中所有的实例均为对象:然而,一般的术语中,Actors通常用于指继承了AActor类的实例,而“对象”指非继承自AActor类的实例. Pawn 是可以作为世界中的一个“代理”的Actor.Pawn可以由控制器处理,它们可以轻松地接受输入…
一: C++工程和Gameplay框架 GameInstance 它适合放置独立于关卡的信息,比如说显示UI. GameMode 表示游戏玩法, 包含游戏进行的规则和胜利条件等等信息,游戏模式是和关卡绑定在一起的,一个关卡只能有一个游戏模式,但是一个游戏可以有多个关卡.它通常和记录规则的GameState组合在一起. Pawn/Character Pawn指的是活动的游戏主体.Character是指可移动的,有碰撞的人物.其信息一般记录在PlayerState中. PlayerControlle…
新标签打开或者下载看大图 思维导图 Engine Structure Pipeline Programming Pipeline Blueprint Pipeline…
<Inside UE4>目录 InsideUE4 UE4无疑是非常优秀的世界上最顶尖的引擎之一,性能和效果都非常出众,编辑器工作流也非常的出色,更难得宝贵的是完全的开源让我们有机会去从中吸取营养,学习世界上第一流游戏引擎的架构思想. 本系列教程<Inside UE4>,希望从最最底层的C++源码剖析,到最最上层的蓝图节点,力求解释清楚各个选项的内部运作机理.希望做到知其然,而更要知其所以然.也UE4也是一个非常博大精深的引擎,分析透彻各个具体模块的运作机理无疑也是个艰巨的任务,因此…
由于目前在使用UE4引擎,多少也有一些心得,比如在日常使用中会遇到一些问题.坑(潜规则)或者一些使用技巧等.本人决定开一个大坑,主要有两个目的:一是可以自己做个记录,二是可以给大家提供一些参考吧.主要包括两部分,第一部分主要是UE4的使用,这里面应该主要是我平常开发中遇到的问题,或者一些技巧等.第二部分主要是对UE4引擎部分源码或者架构的解读,当然这部分比较难写,因为它的代码量实在是太多,很难在较短的时间内吃透一个比较大的模块,但是我尽量会输出一些对大家有用的东西.当然这个系列不保证更新频率,一…
最近在做的项目遇到了一点点问题,出现了如下效果 视角对着湖面移动会出现一个显示不完整的轮廓(比较长的蓝色矩形),详细一点就是下图这样,以及近处物体的倒影(从光照的照射角度来看是不应该出现的) 一开始就以为是材质设置的原因,还去把<冥河之旅>的工程下载了下来研究(第二个场景湖面哪里不会出现这种轮廓效果),也没看懂,后来美术来看了说是用到了全景贴图,自发光 等只适用在固定点观看的情况.后来自己又在网上到处看有没有速成的办法,在百度上搜索查阅了一个上午没找到,最后谷歌,不小心把UE4官方的平面反射相…
<Inside UE4>-0-开篇 InsideUE4   前言 VR行业发展是越来越火热了,硬件设备上有HTC VIVE,Oculus rift,PS VR,各种魔镜:平台上有Steam VR,Gear VR,Google Daydream.而游戏引擎上则有两大阵营:Unreal Engine和Unity.Unity凭着先期的移动平台优势占领了一大部分移动平台的市场,所以目前上手机上的VR游戏也大部分是由Unity开发的.而PC平台上,Unreal Engine凭借着优异的性能,绚丽的渲染效…
<Inside UE4>-1-基础概念   InsideUE4   创建测试项目 接上文的准备工作,双击生成的UE4Editor.exe,选择创建测试C++空项目Hello(以后的源码分析都会基于该最简单的项目)   项目文件结构 VS项目和文件目录: 可以看到,Config目录里带着3个最主要的配置,Editor,Engine,Game.代码方面自动生成了用于编译系统的3个.cs文件,C++代码方面生成了一个Hello "Game Module",和HelloGameMo…
<Inside UE4>-2-GamePlay架构(一)Actor和Component     <Inside UE4>-2-GamePlay架构(一)Actor和Component InsideUE4   UE4深入学习QQ群: 456247757   引言 如果让你来制作一款3D游戏引擎,你会怎么设计其结构? 尽管游戏的类型有很多种,市面上也有众多的3D游戏引擎,但绝大部分游戏引擎都得解决一个基本问题:抽象模拟一个3D游戏世界.根据基本的图形学知识,我们知道,为了展示这个世界,…
命令行在外部 从命令行运行编辑项目 1 导航到您的[LauncherInstall][VersionNumber]\Engine\Binaries\Win64 目录中. 2 右键单击上 UE4Editor.exe 的可执行文件,并选择创建快捷方式. 3 重命名该快捷方式,它会启动编辑器,即 MyProject 的- Editor.exe. 4 右键单击新创建的快捷方式并选择属性. 5 加入项目文件参数属性: [LauncherInstall][VersionNumber]\Engine\Bina…
大家可能发现一些大佬讲UE4,首先都会讲类型系统,知道UE4会根据宏标记生成一些特定的内容,UE4几乎所有高级功能都离不开这些内容,一般来说,我们不会直接去使用它. 今天这个Demo内容希望能加深大家的理解,为什么有这个东东了,主要是由于我们产品需要很多根据环境调整的参数,我们需要提供很多UI,一个结构包含五六个参数,对应的参数与UI绑定事件,东东很简单,但是太多了,一多就容易出事,参数结构又在调整,然后就乱了. 参考UE4本身编辑器根据对应结构自动生成UI,UI的更改能更新到对象上,以及JSO…
转自:http://blog.csdn.net/qq_24835213/article/details/68063344 一.模型设置: 1.将Vary材质转成标准材质 2.将模型减面 3.加一套UV(虚幻里有两套UV,一套用来反射):Flatiron插件 二.输出设置: 1,先设置好3DMAX里单位,厘米,如图: alt+u+u打开单位设置 2,在3DMAX里,先收集贴图到指定文件夹,最好不要有中文路径,如图: 3,查看贴图路径,贴图格式,导出FBX时,要注意修改贴图格式,最好PNG或TGA图…
转自:http://blog.csdn.net/noahzuo/article/details/51482255 反射机制 反射机制指的是程序可以在运行期间进行检测和修改自己状态的能力. UE4引擎使用C++语言编写,C++语言本质上不支持反射机制,但是UE4提供了反射机制的实现. FindFunction函数 在UE4中提供了FindFunction函数,用于在UObject或者AActor中查找某个函数名的函数并且返回其函数指针. 使用方法如下: UFunction *Injured = t…
笔者有幸参与过两个UE3项目,完全不同的使用方法,总共用了5.6年.引擎学习最好还是能参与项目,自己看的话往往容易纠结到一些细节上去,而引擎之所以是引擎,重要的恰恰是在容易被人忽视的工作流上.单从细节上看,UE3的代码很多地方并不完美,甚至有些奇怪,但是一旦做到工作流上,就会发现整个UE3工作流的强大之处. 先回顾一下UE3系统的一些结构要点,权当做个记录,看看UE4在这些方面有什么不同,作为我们接下来读码的突破口. 如果真心想要学习这个引擎,最好还是能用它来做做项目,项目不分大小,只论完整程度…
https://docs.unrealengine.com/latest/CHN/Programming/Development/BuildConfigurations/index.html 编译配置描述 虚幻引擎 4 采用了一种自定义的编译方式,通过我们的 UnrealBuildTool 工具(UBT).该工具通过处理一些必要的信息来构建引擎的反射体系,并将 C++ 的代码和蓝图.网络复制.序列化以及垃圾回收系统进行关联整合. 每种编译配置包含两种关键字.第一种表明了引擎以及游戏项目的状态.比…
http://blog.ch-wind.com/ue4-profiling-preview/ Profililng是成品制作过程中非常重要的一个步骤,通过Profiling才能提高运行效率使得作品达到用户能够运行从程度. UE4本身有提供用于Profiling的工具,但是要正确的将其用于优化却需要经过一些学习.在掌握基础之后,要很好的完成优化,需要的是更多的实践所累积的经验了. 本文的主要内容来自对Tech Art Aid的[Profiling系列视频]的总结和官方的[性能分析文档]. 不过由于…
源 起 Unreal Engine 4 是全球最先进的Realtime Illumination & Physical 引擎: 长期以来,UE4都只有Windows版和Mac版,今年终于向Linux开放,但是需要开发者自己动手编译C++源代码...好吧,正好练一下在Ubuntu系统中编译C++源代码: 看来EP是认准了Linux系统的用户都是极客- Ubuntu是最受欢迎的Linux系统,下面是我在Ubuntu中编译UE4的全过程: 1.首先进入GitHub 没错,EP已经把UE4的源代码托管到…
转自:http://www.unrealchina.net/portal.php?mod=view&aid=233 UE4的材质表面上看起来很简单,可是到了用的时候却总是没有办法实现好的效果.所以特意对文档进行阅读,初步了解了一下主要知识点. 当前使用的UE4版本:4.8.0. UE4中的材质有很多用途,可以用于光照.延迟渲染.粒子系统等等.由于暂时不会用到,目前只做了最基础的材质使用的研究,也就是说是Materia Type为Surface的情况.材质的最终输出节点上的可用项会随着功能选择的不…
https://docs.unrealengine.com/latest/CHN/index.html 中编程指南 快速入门 actor生命周期 FloatingActor.h #pragma once #include "GameFramework/Actor.h" #include "FloatingActor.generated.h" UCLASS() class QUICKSTART_API AFloatingActor : public AActor {…
https://docs.unrealengine.com/latest/CHN/Programming/Introduction/index.html UE4 中的 C++ 编程介绍 Unreal Engine 4.9 虚幻 C++ 妙不可言! 此指南讲述如何在虚幻引擎中编写 C++ 代码.不必担心,虚幻引擎中的 C++ 编程乐趣十足,上手完全不难!我们可以将虚幻 C++ 视为"辅助 C++",因为诸多功能使 C++ 的使用变得十分简单. 阅读此指南的前提是您需要熟悉 C++ 或其他…
目录 一.光线追踪概述 1.1 光线追踪是什么 1.2 光线追踪的特点 1.3 光线追踪的历史 1.4 光线追踪的应用 二.光线追踪的原理 2.1 光线追踪的物理原理 2.2 光线追踪算法 2.3 RTX和DXR 2.3.1 RTX(NV) 2.3.2 DXR(Microsoft) 三.UE4的光线追踪 3.1 UE4光线追踪的开启 3.2 UE4光线追踪的特性 3.2.1 光线追踪的阴影 3.2.2 光线追踪的反射 3.2.3 光线追踪的透明 3.2.4 光线追踪的环境光遮蔽 3.2.5 光线…
目录 蓝图 蓝图命名规范 蓝图优化 暴露C++至蓝图 暴露C++类 暴露C++属性 暴露C++函数 暴露C++结构体/枚举 暴露C++接口 蓝图和C++的结合方案 使用继承重写蓝图 使用组合重写蓝图 方案比较 参考 蓝图 大家都知道,蓝图是UE4提供的极其容易上手的一种可视化脚本,更具体的就不说了. 纯靠蓝图搭建的UE4游戏是存在的,但是这类游戏往往优化很差(除非游戏玩法本身的性能需求不高).更合适的流程往往需要程序员编写C++代码创建一些蓝图可用元素,而设计师再通过蓝图快速搭建游戏. 蓝图命名…
目录 UObject Actor种类 AActor APawn(可操控单位) AController(控制器) AGameMode(游戏模式) AHUD(HUD) ... Component种类 UActorComponent(基本组件) USceneComponent(场景组件) UChildActorComponent(子演员组件) UStaticMeshComponent(静态网格组件) ... 总结 参考 引擎版本:Unreal Engine 4.22 UObject UE4的最基础类型…
前言 当初在选择自己项目的美术风格时,由于自己的美术基础实在是太差,所以选择了体素风格来构建(其实还是MagicaVoxel的建模操作很容易上手),但是将自己千辛万苦做好的模型导入至项目中时,出现了这样或那样的问题,难受的心情如潮涌.在各大搜索引擎搜索无果,以及在"*乎"发问直到现在都没人回答的情况下,决定自己动手丰衣足食(老一辈的智慧还是很有前瞻性的).也为了各位志同道合的小伙伴们,特写下这个"MagicaVoxel import to UE4 101". 正文(…
UE4中的delegate(委托)常用于解耦不同对象之间的关联:委托的触发者不与监听者有直接关联,两者通过委托对象间接地建立联系 监听者通过将响应函数绑定到委托上,使得委托触发时立即收到通知,并进行相关逻辑处理 委托,又称代理,本质是一个特殊类的对象,它内部可以储存(一个或多个)函数指针.调用参数和返回值 委托的作用如同函数指针,但它更安全(支持编译期类型检查),而且更易于使用 UE4在DelegateCombinations.h提供了一些宏来方便开发者快速来自定义一个delegate类型 大致…
问题出现的条件: 使用UE4 4.16 使用Forward shading 使用多个Sphere Reflection Capture组件(有重叠的部分) 烘焙灯光后能看到明显的反射通道接缝 解决办法: 可能同时被两个或以上Sphere Reflection Capture 组件影响的材质,打开其"High Quality Reflections"选项,接缝和不正常的灯光现象就消失了…
前言 UBT和UHT是编译工具,谁定义的呢,虚幻引擎自己定义的,拿来做什么呢,UBT和UHT是UE4用来简化多平台编译,去除用户自定义平台编译项目的操作 我们写的UE4代码不是标准的C++代码,是基于UE4源代码层层改装了很多层的,UHT将UE4代码转换成标准的C++代码,而UBT负责调用UHT来实现这个转化工作,转化完之后UBT调用标准的C++代码的编译器来将UHT转化后的标准C++代码完成编译成二进制文件,整体上看,UHT是UBT的编译流程的一部分 UBT UBT:Unreal Build…
UE4技术总结--委托 目录 UE4技术总结--委托 一.定义 二.用法 2.1 声明与调用委托 2.1.1 单播委托 2.1.1.a 声明 2.1.1.b 绑定 2.1.1.c 执行委托 2.1.1.d PayLoad 2.1.1.e 底层实现 绑定函数指针 Payload的实现 绑定 补充 2.1.1.f 总结 2.1.2 动态(单播)委托 2.1.2.a 声明 2.1.2.b 绑定 2.1.2.c 执行委托 2.1.2.d 底层实现 2.1.2.e 总结 2.1.3 多播委托 2.1.3.…