摘要:
最近在看neuecc大佬写的一些库:https://neuecc.medium.com/,其中对await,async以及Linq查询关键字做了一些神奇的扩展, 使其可以拿来做些自定义操作,并且不需要引用System.Linq之类的对应命名空间。 关于这些功能的实现,对此进行了学习并在Unity3D 阅读全文
摘要:
1.Wait Until并不会再执行前面的代码,而是反复执行获取bool变量的代码;需自己拆出来写。 2.yield return null对应Wait For Next Frame,多用这个避免协程运行中的GC 3.链接自定义方法在Project Settings->Visual Scriptin 阅读全文
摘要:
通常结构体不能进行链式调用,因为返回值是一个新的值,需要赋回原值。但现在通过ref关键字配合扩展方法,也能进行链式调用了。 结构体: public struct Foo { public int a; public Foo AddOne() { a++; return this; } public 阅读全文
摘要:
1.ref的一些运用 1.1 ref readonly 关于ref,一个主要应用是防止结构体拷贝,若返回的结构体不需要修改则用ref readonly,类似c++的const标记 : private ref readonly Attr PlayerSetting(Player player) { r 阅读全文
摘要:
Gamma和Linear修正的问题相信网上已经有很多文章了。简单来说显示器的颜色输出不是线性的,根据硬件参数和输出颜色 信息拟合曲线是x^2.2,因此会使用一个x^0.45曲线将其拟合回线性。 因为0.5^0.45 = 0.73,0.5^2.2 = 0.217,我们可以通过一张0.5rgb的灰度图放 阅读全文
摘要:
参考文章:https://www.cnblogs.com/zhiyishou/p/4430017.html 本文使用逐点插入法进行剖分,并使用Unity3D实现。 通过阅读文章《Triangulate》给出的伪代码进行具体编写,我加了些注释: subroutine triangulate input 阅读全文
摘要:
1.通过网上冲浪了解到,BentNormal可以解决间接环境高光漏光及间接漫反射光照漏光的问题。 这里的漏光是指间接光照部分没有考虑到模型自身的遮挡关系导致的漏光。 2.可以通过SD之类的软件烘焙BentNormal贴图,软件会根据余弦角向外计算各个角度可见性,最终求平均得到一个向量,会在之后的计算 阅读全文
摘要:
在新版本的Unity中提供了MeshDataArray和MeshData等多个API,使Mesh数据操作支持多线程;以更好的支持DOTS。 API文档:https://docs.unity3d.com/es/2020.2/ScriptReference/Mesh.MeshData.html 1.IJ 阅读全文
摘要:
在日常开发中会有需求合并多个Mesh网格,并且它们重合处的顶点也要合并,而并非合并成两个subMesh。 而近期刚好在学习Geomipmap的细分,需要把多个mesh块进行合并,于是写了这个脚本 (简单的情况下用Mesh.CombineMeshes也可以)。 见下图,多对象合并前后对比: 使用时传入 阅读全文
摘要:
本篇文章整理了URP管线使用中的一些简单的心得记述 1.使用ScriptableRendererFeature自定义渲染特性 在内建(Build-in)管线中可以使用CommandBuffer并添加到摄像机上来实现自定义的特性。在URP管线中,处理方法变成了RendererFeature Rende 阅读全文