202204-13 URP的RenderMaskLayer 今天看源码无意间发现了renderingLayerMask属性,真是解决了一个大问题啊。 比如我有多个角色,希望其中某几个拥有描边效果,此时又不希望写多个Layer层。就可以添加一个RenderMaskLayer。如下图所示。 可以自己扩展一个RenderObjects类。 Rende.... Read More >
202203-17 不写GUI面板自由拓展Lit着色器 在URP中PBR的材质是Lit.shader,由于项目组需要拓展不得不仿照它的写法在写一堆C#的代码来配合面板的显示,一方面容易出BUG另一方面非常麻烦。 首先复制一个Lit.shader改成MyLit.shader放到Asset目录下,Properties属性面板中下面写入 [crayon.... Read More >
202203-11 Unity3D脚本复制场景的锅 美术制作场景的时候习惯放置一些参照物,由于每次他们都会忘记删除,所以我们制作了一个脚本根据源场景自动生成一份新场景,以节点命名,生成的时候自动删除这些参照物。如下图所示,场景烘焙过,只保留Scene节点,导出新场景其他节点都删除掉。 如下图所示,拷贝场景后只保留了Scene节点,其他都删除.... Read More >
202203-11 URP在小米10安卓12系统闪退 在小米10安卓12系统上闪退,同样的手机在安卓11系统和安卓12.5系统上就不闪退,原因是自己拓展的效果在CBuffer里没有字节对齐。 闪退错误 :ApiGLES::ClearBufferSubData(unsigned int, gl::BufferTarget, long, long)+.... Read More >
202202-27 我写的电子教程 开头的话 这么多年我一直有写博客的习惯,以后我每年会写至少1本以上的电子书或教程。有两个原因,原因1:我的博客大多写的比较随性,平常在工作中遇到的直接问题我会立即写在博客中记录,虽然能立刻解决问题但是内容缺乏前因后果不够系统,无法让读者看完有一种酣畅淋漓的感觉。原因2:我的博客没有接广告,出于程序.... Read More >
202201-16 Unity3D我目前采用的Shader优化方案 Unity的Shader绝对是个黑盒,困扰了很多开发者,我也陆陆续续被困扰了好久。首先我们需要知道Unity的Shader从编写到最终被GPU执行经历了什么? 编写Shader的时候我们用的是HLSL语言,在打包的时候会根据目标平台生成对应的着色器语言,如Android平台是GLSL,iOS平.... Read More >
202201-09 Unity3D研究院之UIToolkit运行时初探 UIToolkit使用了uxml来描述界面的布局,使用uss来制作不同样式,参考了web开发的xml和css方案。Unity2021已经将UIToolkit内置在引擎中,具有和UGUI同等地位。 比如要画一个按钮,对应的uxml [crayon-67b509329c533446271334/.... Read More >
202111-25 Unity3D研究院之Image组件K特殊材质动画的一种方法(一百二十八) 有段时间没写东西了,最近有点小累啊。最近美术在K动画反映的问题,如果Image组件挂了新材质后,无法在Image上K材质中的效果。 使用MeshRenderer组件是可以K的,这里简单的给Image材质拓展了一个置灰的效果。如下图所示,MeshRenderer组件就可K材质动画。 .... Read More >
202109-11 URP打开半透明阴影(一百二十七) 在URP下默认只有不透明才会有阴影,其实可以使用alpha test给shadowmap上画阴影, 物体本身则使用alpha blend这样也更加合理。 首先拷贝一下默认的Lit.shader,在Properties中添加一个Toggle变量来控制是否开启半透明阴影。 [crayon-67b.... Read More >
202106-12 WordPress本地Mac环境搭建与测试 每次升级wordpress版本都很痛苦,比如主题、插件与新版本的兼容性问题,写下这篇文章记录下这段时间的学习成果。 打开XMAPP官网https://www.apachefriends.org/download.html,注意这里要先点击MoreDownloads 然后需要确认一下自.... Read More >
202106-07 Unity3D研究院之悬浮框显示其他游戏电流功耗(一百二十六) 在前面的文章中 Unity3D研究院之实时获取手机电流、电压、计算功率发热(一百一十八) 我们可以给自己的游戏添加电流功耗显示,但是有时需要对比其他游戏,看看到底是它发热还是自己的游戏发热。如果只是统计别人游戏帧率那么可以很方便使用腾通讯性能狗这样的工具,但是如果帧率在相等情况下就只能根据电.... Read More >
202105-28 WordPress不显示评论 Wordpress不显示评论先检查一下数据库是否写入,然而我的问题是数据库已经写入评论但是网页却不显示评论。 首先检查一下主题看看使用的是系统自带的评论还是被主题二次修改的,打开commentlist.php文件,并且找到<ol class="commentlist">关键字,显然.... Read More >
202104-28 Unity3D研究院之同步Scene与Game视图摄像机 Game视图同步Scene视图比较容易,直接获取Scene的摄像机坐标和旋转然后同步给Camera就可以。但是我想做的是Game视图运行时修改摄像机的位置,Scene视图来同步。 [crayon-67b50932a051f622360968/] Unity给的一个解决方案是SceneView.A.... Read More >