- 博客(63)
- 收藏
- 关注
原创 学习笔记-序列化与反序列化
Unreal Engine序列化个人笔记 - 知乎 (zhihu.com) 浅谈UE4的序列化_ue4 serialize-CSDN博客Unreal 序列化和反序列化原理机制源码解析 - 知乎 (zhihu.com)Ue4_序列化浅析_ue 序列化-CSDN博客
2024-05-17 10:47:34
131
原创 UE C++ 知识杂记
它主要用于存储和引用名称,例如对象名称、属性名称和资产名称。引擎中的资源名称都是FName类型,通过一个轻型系统重复使用字符串,FName创建时会根据内容创建一个Hash值,且同样的内容只会存储一次。通过Hash值在进行FName的查找和访问时速度较快,而在比较的时,也不需要比较字符串内容,直接比较Hash值来区分不同FName字符串。 是UE中使用的动态字符串类型。它类似于标准 C++ 字符串 (std::string),是处理文本的最灵活的选项,是三者中唯一可修改的字符串类型
2024-04-14 21:03:25
1033
2
原创 UE C++ 学习
每个模块环境的依赖信息,项目包括的各种模块(一般添加组件时,需要添加模块,才能通过编译) 目的或者特定平台的一些设置,包括库,头文件,编译器等信息
2024-04-13 17:49:14
205
原创 UE 模型学习
1. UE中任何模型都是有多个三角面构成的,模型有一个顶点数组,根据右手螺旋定则和三个顶点顺序确定三角面的法线。注:当三角面的法线方向与相机法线方向相同时,此时看不见三角面;当两法线方向相反,此时才能看见三角面2.3D引擎通过法线方向去裁剪面 (移动过程中,相机的法线发生改变,就能看见不同的面)
2024-04-12 17:05:33
244
原创 学习杂记1
进一步来讲,基本上所有的C++编译器默认使用堆来实现自由存储,即缺省的全局运算符new和delete也会按照malloc和free的方式来被实现,这时藉由new运算符分配的对象,说它在堆上也对,说它在自由存储区上也正确。在全局中重载operator new会修改所有默认的new方式,具体类中的重载只会影响到该类的内存分配与释放,不过由于operator new是在类的具体对象被构建出来之前调用的,所以必须声明为static。这样的变量其实只是在一个对象中是不变的,要想在整个类中都不变就得用enum(枚举)
2023-10-26 15:35:30
202
原创 UE 多线程
里面,然后才能通过线程去调用FRunnable的Run,也就是我们具体实现的类的Run方法(通过虚函数覆盖父类的Run)。函数中完成,并通过返回值确定是否成功。初始化失败,则该线程停止执行,并返回一个错误码;实际上,在实现多线程的时候,我们需要将FRunnable作为参数传递到。UE4是跨平台的引擎,对各个平台线程实现进行了封装,抽象出了。引擎中大部分的需要多线程执行逻辑都是继承这个类实现的多线程。线程对象创建成功后即开始执行Runnable对象的。表示一个可执行的线程。执行完毕后,则会调用。
2023-10-17 15:40:54
518
原创 图形学学习笔记
渲染管线渲染管线就是一堆原始图形数据经过各种变化处理最终出现在屏幕的过程。渲染管线可分为三个阶段,应用程序阶段,几何阶段,和光栅化阶段 应用程序阶段由CPU主要负责。CPU将GPU渲染需要的灯光、模型准备好,并设置好渲染状态,为GPU渲染做好准备。 几何阶段把输入的3D数据转换成2D数据。包括顶点着色器、图元装置、裁剪和屏幕映射几个过程。顶点着色器主要进行顶点坐标变换。将输入的模型空间顶点坐标变换到裁剪空间顶点坐标。图元装配将顶点装配成指定图元的形状。几何着色器改变图元。通过产生新顶点构造出新的图
2023-10-17 09:58:10
157
原创 C++11 新特性总结
将亡值是指C++11新增的和右值引用相关的表达式,通常指将要被移动的对象、T&&函数的返回值、std::move函数的返回值、转换为T&&类型转换函数的返回值,将亡值可以理解为即将要销毁的值,通过“盗取”其它变量内存空间方式获取的值,在确保其它变量不再被使用或者即将被销毁时,可以避免内存空间的释放和分配,延长变量值的生命周期,常用来完成移动构造或者移动赋值的特殊任务。a和b的data_指针指向了同一块内存,这就是浅拷贝,只是数据的简单赋值,那再析构时data_内存会被释放两次,导致程序出问题。
2023-07-28 12:09:18
133
原创 UE 材质实现让远处物体变小
值越大,平铺的越少,纹理重复显示的越少,视觉效果纹理变大,值越小,平铺的越多,纹理重复显示的越多,视觉效果纹理变小。Fade Offset:小于该值的地方值为1。Fade Length: 从0到1的过渡距离。
2023-07-21 10:19:28
302
原创 UE 蓝图补充
可以通过该组件确定方向,get forward vector获取向前的方向(X轴方向,红色),get up vector获取向上的方向(Z轴方向,蓝色),get right vector获取向右的方向(Y轴方向, 绿色)。
2023-07-20 10:13:42
470
原创 UE 材质学习补充
我们可以在RGB通道里分别塞入,金属度,粗糙度,AO,置换贴图等等一些只有灰度的纹理图像,这样做可以小幅度优化性能减少采样次数。Texture(纹理图像),一般由RGB三个通道混合构成,RGB三个通道的值代表亮度,RGB三个通道分别都是0-1(0-255)的黑白图。,A:透明通道,通常我们并不会塞入A通道反而是把A通道删去,因为在UE游戏引擎里A通道的体积较大,所以我们只需要RGB通道即可。如果B通道为置换贴图,那么我们可以命名为“T_RMD”等等。R通道:粗糙度,G通道:金属度,B通道:AO。
2023-07-19 11:56:58
1338
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人