上一页 1 2 3 4 5 6 ··· 28 下一页
摘要: 通常创建对象使用new操作,但这样无法指定在具体某一块内存开辟空间创建对象。而如果 可以指定开辟空间的内存位置,我们可以编写内存池高效的复用同一个内存位置,这样可以避免系统频繁申请可用内存 所占用的时间以及内存碎片问题。 指定具体分配内存的具体位置,可以重写new操作符实现: h: //Class1 阅读全文
posted @ 2022-04-14 09:04 HONT 阅读(324) 评论(0) 推荐(0) 编辑
摘要: 正常uGUI使用正交相机的话,旋转是没有透视效果的,但如果能实现较简单的透视, 对一些效果表现来说还是不错的;见下图(左为透视效果): 正常思路感觉各种麻烦。 因为uGUI使用unity的x和y方向表示宽高,z方向自然就是纵深,我们可以直接拿z值作为系数进行缩放处理, 达到伪透视的效果(美中不足,细 阅读全文
posted @ 2022-03-06 16:33 HONT 阅读(797) 评论(0) 推荐(0) 编辑
摘要: 游戏需要增加几种启动模式,要在编辑器顶部Toolbar处增加几个按钮;进行下扩展。 这部分Unity没有直接提供接口,需通过反射实现。看了下有一个开源库: https://github.com/marijnz/unity-toolbar-extender (2022/12/25补充一个完成度更高的开 阅读全文
posted @ 2022-03-05 14:58 HONT 阅读(1283) 评论(0) 推荐(1) 编辑
摘要: Unity的Gizmos可以很方便的在编辑器下进行调试,Unreal中也有一些办法可以达到效果。 本文主要参考:https://zhuanlan.zhihu.com/p/363625037,进行了一些简化。并在Unreal 4.27中实现。 具体流程如下: 需要绘制Gizmo的Actor挂载继承UP 阅读全文
posted @ 2022-02-02 13:33 HONT 阅读(892) 评论(0) 推荐(0) 编辑
摘要: 在绘制大批量近似模型时,Unity有GPU Instancing(https://www.cnblogs.com/hont/p/7143626.html),而UE中有 HISM和ISM(InstancedStaticMesh),前者支持LOD,后者运用于较简单情况。那么就来实践一下ISM如何使用。 阅读全文
posted @ 2022-01-22 22:37 HONT 阅读(2879) 评论(0) 推荐(0) 编辑
摘要: 1.前言 一转眼离Book of the Dead Environment Demo开放下载已过去多年,当时因为技术力有限,以及对HDRP理解尚浅, 所以这篇文章一直搁浅到了现在;如今也对HDRP有了一些理解,因此回顾一下该Demo。 Book of the Dead——死者之书,是Unity201 阅读全文
posted @ 2022-01-19 20:43 HONT 阅读(634) 评论(0) 推荐(0) 编辑
摘要: 近期回顾Dead of the Book demo时,看见了它们的运用。感觉主要是用于ScriptableObject资源和Scene资源解耦; 并将这类做法规范化。 做一个小测试,IExposedPropertyTable做容器,存放具体目标对象: public class ExposeTable 阅读全文
posted @ 2022-01-17 21:05 HONT 阅读(545) 评论(0) 推荐(0) 编辑
摘要: 最近在看neuecc大佬写的一些库:https://neuecc.medium.com/,其中对await,async以及Linq查询关键字做了一些神奇的扩展, 使其可以拿来做些自定义操作,并且不需要引用System.Linq之类的对应命名空间。 关于这些功能的实现,对此进行了学习并在Unity3D 阅读全文
posted @ 2021-12-09 12:42 HONT 阅读(720) 评论(0) 推荐(2) 编辑
摘要: 1.Wait Until并不会再执行前面的代码,而是反复执行获取bool变量的代码;需自己拆出来写。 2.yield return null对应Wait For Next Frame,多用这个避免协程运行中的GC 3.链接自定义方法在Project Settings->Visual Scriptin 阅读全文
posted @ 2021-12-03 11:20 HONT 阅读(2176) 评论(2) 推荐(0) 编辑
摘要: 通常结构体不能进行链式调用,因为返回值是一个新的值,需要赋回原值。但现在通过ref关键字配合扩展方法,也能进行链式调用了。 结构体: public struct Foo { public int a; public Foo AddOne() { a++; return this; } public 阅读全文
posted @ 2021-11-09 20:11 HONT 阅读(756) 评论(0) 推荐(0) 编辑
上一页 1 2 3 4 5 6 ··· 28 下一页