摘要:
总的来说UE还是有点绕,网上提到的也不是很清晰,记录下。 具体可以下载UE官方示例ContentExample并进入Animation Level进行查看。 在Level中能看到根运动的必要步骤: 1.动画文件保证root节点k根运动动画 2.动画资源设置里勾选开启Root Motion 3.UE里 阅读全文
摘要:
在处理UV重叠、CPU的ZFighting检测时会遇到2D空间中的三角形相交问题, 网上普遍是3D空间的相交解法,因此写本文研究下,不过虽然实现了需求, 但解法较为暴力。 效果如图: (鼠标拖动区域处有一小三角形,与外部大三角形进行相交包含演示) 若两三角形存在线段相交,则两三角形相交,但三点都包含 阅读全文
摘要:
之前看见园子里一篇C++调用C#的文章,参考后拿UE试一下。刚开始尝试了C# dll > CLR C++ DLL > Native C++ DLL的做法, 原生环境下是可以的,但是到UE4里会Crash。 后来换成了Dll Export(UnmanagedExports)的做法,并测试成功。 当然对 阅读全文
摘要:
当需要生成随机点且要求随机点自然均匀的分布时,使用泊松盘采样就较为适合。 但该方法与统计学上的概念关联不大,这个只相当于点在面积上服从泊松分布, 而实现这个结果有很多做法。 最终效果: 圆形为含半径的点,圆形的中心代表生成点 B站有一个不错的搬运教程(Bridson方法): https://www. 阅读全文
摘要:
1.非UObject对象 即非UObject常规C++对象,创建销毁不赘述。但可以用智能指针;从而不用关心销毁逻辑: TSharedPtr<ClassA> MyObj = MakeShareable(new ClassA()); 智能指针转裸指针: ClassA* MyObjPtr = MyObj. 阅读全文
摘要:
近期封装输入相关逻辑,简单归纳下。 蓝图实现 内容界面右键Miscellaneous->Force Feedback Effect,创建力反馈对象并填写相关参数: 然后在蓝图中用Spawn Force Feedback at Location调用这个力反馈配置文件, 或是创建Force Feedba 阅读全文
摘要:
通常创建对象使用new操作,但这样无法指定在具体某一块内存开辟空间创建对象。而如果 可以指定开辟空间的内存位置,我们可以编写内存池高效的复用同一个内存位置,这样可以避免系统频繁申请可用内存 所占用的时间以及内存碎片问题。 指定具体分配内存的具体位置,可以重写new操作符实现: h: //Class1 阅读全文
摘要:
正常uGUI使用正交相机的话,旋转是没有透视效果的,但如果能实现较简单的透视, 对一些效果表现来说还是不错的;见下图(左为透视效果): 正常思路感觉各种麻烦。 因为uGUI使用unity的x和y方向表示宽高,z方向自然就是纵深,我们可以直接拿z值作为系数进行缩放处理, 达到伪透视的效果(美中不足,细 阅读全文
摘要:
游戏需要增加几种启动模式,要在编辑器顶部Toolbar处增加几个按钮;进行下扩展。 这部分Unity没有直接提供接口,需通过反射实现。看了下有一个开源库: https://github.com/marijnz/unity-toolbar-extender (2022/12/25补充一个完成度更高的开 阅读全文
摘要:
Unity的Gizmos可以很方便的在编辑器下进行调试,Unreal中也有一些办法可以达到效果。 本文主要参考:https://zhuanlan.zhihu.com/p/363625037,进行了一些简化。并在Unreal 4.27中实现。 具体流程如下: 需要绘制Gizmo的Actor挂载继承UP 阅读全文