自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(30)
  • 收藏
  • 关注

原创 Unity Protobuf实践

unity使用protobuf

2025-01-14 00:16:33 617

原创 游戏开发线性空间下PS工作流程

游戏引擎线性空间下ps工作流

2024-12-27 03:35:43 1032

原创 Unity使用PS合并贴图

使用PBR渲染,金属工作流时,默认使用一个金属度贴图,其中r通道保存金属度,a通道保存光滑度,g通道和b通道没使用;我们很可能使用Occlusion Map,使用其中的g通道保存Occlusion 信息。单独使用一个Occlusion Map比较耗性能,可将信息保存在金属度贴图的g通道中;因此,我们需要贴图合并;

2024-11-14 01:17:50 578

原创 URP Shader 源码阅读(二)Lit

URP Lit shader源码阅读

2024-09-13 18:51:03 628

原创 Unity编辑器开发 Immediate Mode GUI (IMGUI)

IMGUI是代码驱动gui系统

2024-08-31 10:32:28 1318

原创 URP Shader 源码阅读 (一) Simple Lit

SimpleLit.shader

2024-08-23 16:23:10 718

原创 Unity URP渲染管线学习

注入脚本化渲染pass到渲染管线来获取自定义视觉效果;//每帧调用一次,一个相机调用一次//实现渲染逻辑,发送drawcall//渲染纹理属性描述//临时纹理索引//构造函数,用于传参//在执行渲染pass前调用//用于配置 渲染目标,状态清除,创建临时渲染目标纹理,默认渲染到摄像机的渲染目标//纹理不存在或者发生变更时,回收旧的,创建新的//每帧调用一次,一个相机调用一次//实现渲染逻辑,发送drawcall//获取摄像机渲染纹理。

2024-08-19 10:21:15 6787

原创 Unity Standard Shader源码阅读(四) 简化版BasePass

对于UNITY_SETUP_BRDF_INPUT,设置BRDF输入,包含漫反射颜色diffColor,高光反射颜色specColor,漫反射部分系数oneMinusReflectivity,光滑度smoothness,按工作流分为MetallicSetup,SpecularSetup,RoughnessSetup;

2024-07-29 07:39:02 383

原创 UGUI上显示特效插件ParticleEffectForUGUI

ui上显示特效常常涉及到层级的问题,常见处理办法是通过控制Canvas和特效Renderer的Sorting Layer以及Order in Layer来控制渲染顺序,这种实现的弊端是不好实现遮罩功能,需要手动把裁剪区域传递给自定义的Shader来实现裁剪,对于使用模板测试的Mask,由于Mask在子节点的UI元素渲染完后,会自动清除模板值,导致渲染特效时无法做模板测试;鉴于此,有大佬实现了一种用CanvasRenderer来渲染特效的方案,github传送门;

2024-07-27 17:43:13 1164

原创 Unity TextMeshPro学习

新版Unity UGUI默认使用TextMeshPro显示文本;相较于旧的Text组件,TextMeshPro功能更强大,渲染效果更好;本文学习自。

2024-07-20 10:10:58 2173

原创 UGUI源码阅读(五)遮罩之Mask

ugui Mask实现原理

2024-07-10 15:49:38 471

原创 UGUI源码阅读(四)遮罩之RectMask2D

ugui RectMask2D 实现原理

2024-07-10 07:10:37 252

原创 UGUI源码阅读(三)Graphic渲染

所有显示内容的ui组件都继承自Graphic,ugui是如何使用这些组件来构建mesh从而渲染呢?Graphic组件默认使用默认材质球渲染一个矩形白色区域,很简单,后续我们看ugui的遮罩实现。

2024-07-09 09:59:36 209

原创 UGUI源码阅读(二)Layout

Layout为ugui自动排版实现;

2024-07-04 18:49:11 296

原创 UGUI源码阅读(一)事件系统

在判断当前输入所在的游戏对象时,用到了EventSystem组件的射线检测;触发时执行gameObject上的对应事件处理;主要用于驱动输入模块更新和处理输入;

2024-07-03 18:04:11 238

原创 C#结构体与类互相引用时在内存中的位置

类是引用类型,对象存储在堆内存中;结构体是值类型,一般在栈上存储;

2024-06-30 23:12:35 232

原创 Unity UI-Default.shader源码阅读

UI-Default.shader源码理论说明

2024-06-17 10:49:29 1021

原创 UGUI屏幕适配,包括刘海屏适配

使用Expand模式能将所有的ui元素显示在屏幕内,但是会引出一个新的问题,即背景图片无法铺满整个屏幕,这是不能接受的,由此我们进入下一步背景图片适配;游戏开发的过程中,ui都是在设计分辨率下出效果图,开发者需要适配各种不同的屏幕分辨率;由于Expand模式下导致背景图片过度缩小,我们得再次修正其大小,以铺满我们整个屏幕;实验时在组件上勾选Is Safe Area,可看到四个绿色的方块都在安全区域内显示了;Expand模式会将 ui 缩小到能在屏幕中显示完所有的ui元素;不同分辨率的适配就此结束;

2024-06-14 22:17:13 930

原创 Unity Standard Shader源码阅读(三) ShadowCaster Pass

着色器定义在UnityStandardShadow.cginc中;另一个out参数与vr相关;

2024-06-13 16:38:20 330 1

原创 Unity Standard Shader源码阅读(二) AddPass

AddPass很多处理与BasePath一致,相同的处理就不解释了;顶点着色器输入VertexInput v与BasePass一样;其他处理和BassPath一致,没啥好说的。

2024-06-13 11:36:19 385

原创 Unity Standard Shader源码阅读(一) BasePass

UNITY_SETUP_BRDF_INPUT 代表当前的工作流,分别有MetallicSetup,SpecularSetup,RoughnessSetup;unity版本:2022.3.27。

2024-06-13 07:43:13 442

原创 Shader变体裁剪(已经商业化项目实践)

Unity Shader变体裁剪

2023-09-28 02:16:09 917

原创 VSCode使用EmmyLua调试lua

选择Unity.exe。

2023-09-27 00:50:55 1265

原创 Charles+mumu模拟器抓http请求

打开模拟器的浏览器,输入网址 chls.pro/ssl 即可自动下载,下载完自己手动安装;系统应用 -> 设置 -> WLAN -> 长按修改网络 -> 代理 -> 手动。

2023-07-26 18:06:50 1627

原创 unity导出android studio,gradle引入jar包导致冲突

/后续所有通过implementation导入的包,都排除com.google.guava。//添加google语音识别后导致的与本地的库冲突。//添加google语音识别需要的。--cmd查看gradle依赖的库。

2023-06-07 11:20:03 546

原创 Unity判断apk运行在模拟器上

Unity判断apk运行在模拟器上

2023-02-02 11:09:18 1517 1

原创 unity断点调试apk

unity断点调试apk

2022-12-26 18:03:06 1370

原创 unity打出apk包在模拟器上运行一段时间后卡顿卡死

unity打出apk包在模拟器上运行一段时间后卡顿卡死

2022-03-02 00:51:15 9002 2

原创 Lua实现面向对象(最高效)

lua面向对象一直是个有趣的问题,每个人的实现方式大同小异,区别在于是否足够高效。笔者集合日常开发经验,自己撸了一套,读者初看遇到不明白的,可通读全篇后再深入理解。

2022-03-01 23:53:03 1360

原创 Unity查看Package源码以及调试Package

本文档以调试Unity UI为例子Project中选中鼠标右键Show In Explorer:将其拷贝到项目的根文件下:然后在Packaage Managert中重新用vs打开项目,就可以跳转到源码了

2021-05-09 11:22:09 2315

UGUI屏幕适配package

UGUI屏幕适配 unity package

2024-06-14

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除