- 博客(178)
- 资源 (7)
- 收藏
- 关注
原创 Unity-TA 成长之路(五)Unity Shader 源码初探
目录1、纯色显示2、颜色暴露3、显示贴图4、法线贴图5、边缘发光6、贴图反射叠加7、通过齐次坐标还原点的真实坐标1、纯色显示 主要结构,就是Shader下,包含一个SubShader和一个FallBack,FallBack不再赘述,就是上面子Shader不可用的时候调用,一般为紫色显示。而SubShader中的结构为Tag、CGPROGRAM,Tag只定义了RenderType,选用了最常用的Opaque,光照模型的使用也有注释,再有就是一个输入函数一个输出函数。颜色的展示就在surf函数中设置,o.
2021-12-30 19:55:51 1807
原创 Unity-TA 成长之路(四)Unity Shader简介
1、Shader1.1 什么是shader Shader,中文翻译为着色器,其实是一种用来渲染图形的技术,我们可以通过shader编程,来自定义显卡渲染画面的算法,来达到我们想要的结果。 个人理解呢,Shader通过算法,将三维世界的物体,以我们想要的效果,通过GPU运算,渲染到屏幕,其实是一种视觉欺骗,并未改变三维物体。1.2 Shader编程语言Shader并不是一个统一的标准,不同的图形接口的Shader并不相同。目前主流的有三种语言:...
2021-11-23 16:34:54 2706
原创 Unity-TA 成长之路(三)URP-Universal Render Pipeline
URP-Universal Render Pipeline官方文档整理。
2021-11-22 20:25:02 6113
原创 Unity-TA 成长之路(二)内置渲染管线-官方篇
本篇为Unity官方文档的摘抄集合,为方便后续翻看。1、渲染路径Unity 的内置渲染管线支持不同渲染路径。渲染路径是与光照和阴影相关的一系列操作。不同的渲染路径具有不同功能和性能特征。应根据项目类型以及目标硬件,选择渲染路径。可在 Graphics 窗口中选择项目使用的渲染路径,并可为每个摄像机覆盖该路径。如果运行项目的设备上的 GPU 不支持所选的渲染路径,则 Unity 将自动使用较低保真度的渲染路径。例如,在无法处理延迟着色的 ......
2021-11-19 19:01:56 4493
原创 Unity与安卓交互(四)控制UnityView布局
1、获取Layout布局LinearLayout mParent=(LinearLayout)findViewById(R.id.UnityView);2、获取Unity视图View mView=mUnityPlayer.getView();3、将Unity视图添加到Android视图中mParent.addView(mView);4、获取LayoutParams LinearLayout会报错,根据报错内容,定义了ConstraintLayout。Co...
2021-11-15 19:59:49 3500
原创 Unity与安卓交互(三)Unity2Android(Library)
序上一篇,或多或少还有问题,不知道是我配置问题还是咋回事,总会缺东西,现在知识完成了最基本的东西,下面进入另一个思路吧。1、Unity 首先是Unity导出Project,设置同上一篇: 然后修改导出文件,unityLibrary中的AndroidManifest.xml文件,这里主要是为了解决AS导出时的一个报错,不修改的话会报一个android12的错误,修改activity:android:exported="true"...
2021-11-12 19:26:57 2734
原创 Unity与安卓交互(二)Unity2Android
1、Unity 1.1 新建Unity工程 新建一个空工程,创建Text、Cube、空物体。 1.2 新建脚本 新建脚本MessageCenter,挂载到空物体上,并指定Text和Cube。 1.3 编辑脚本 选用了解析json的方式,接收到Android传来的消息,解析并执行对应事件,代码如下:using UnityEngine;us...
2021-11-10 17:26:16 3519
原创 Unity与安卓交互(一)Android2Unity(反射篇)
目录前序1、Android项目的创建 1.1 新建项目前序使用工具为Unity2020.3.20f1和Android Studio2020.3.1,关于两个软件的安装、配置不再赘述。1、Android项目的创建 1.1 新建项目 File->New->New Project 选择Empty Activity ,Next...
2021-11-05 18:58:39 1919 1
原创 Mac打包Android clang/clang++报错
打包时遇到“无法打开clang/clang++”的报错解决办法:打开路径(NDK路径下,前面可能不同)/Applications/Unity/PlaybackEngines/AndroidPlayer/NDK/toolchains/llvm/prebuilt/darwin-x86_64/binclang和clang++,右键,用终端打开运行一次之后,就可以正常打包了。...
2021-10-29 17:30:07 973
原创 Unity(C#)简单计算器
整体思路就是直接处理字符串,添加或者删除。处理结果时,则以运算符为分隔,处理为字符串数组,然后根据优先级,进行计算,遍历到没有运算符为止。
2021-07-14 11:18:52 1083
原创 关于C#时间DateTime和时间戳
1、DateTime转时间戳/// <summary>/// 时间转时间戳/// </summary>/// <param name="dateTime">时间</param>/// <returns>时间戳</returns>public static long DateTimeToTimestamp(DateTime dateTime){ DateTime startTime = TimeZone.Curr
2021-06-29 15:20:18 1570
原创 上标下标
上标:数字:⁰ ¹ ² ³ ⁴ ⁵ ⁶ ⁷ ⁸ ⁹符号:⁺ ⁻ ⁼ ⁽ ⁾ ˙ ˂ ˃ *字母:ᵃ ᵇ ᶜ ᵈ ᵉ ᵍ ʰ ⁱ ʲ ᵏ ˡ ᵐ ⁿ ᵒ ᵖ ᵒ⃒ ʳ ˢ ᵗ ᵘ ᵛ ʷ ˣ ʸ ᙆ ᴬ ᴮ ᒼ ᴰ ᴱ ᴳ ᴴ ᴵ ᴶ ᴷ ᴸ ᴹ ᴺ ᴼ ᴾ ᴼ̴ ᴿ ˢ ᵀ ᵁ ᵂ ˣ ᵞ ᙆ中文:㆒㆓㆔㆕㆖㆗㆘㆙㆚㆛㆜㆝㆞㆟其他:ꝰ ˀ ˁ ˤ ꟸ ꭜ ʱ ꭝ ꭞ ʴ ʵ ʶ ꭟ ˠ ꟹ ᴭ ᴯ ᴲ ᴻ ᴽ ᵄ ᵅ ᵆ ᵊ ᵋ ᵌ ᵑ ᵓ ᵚ ᵝ ᵞ ᵟ ᵠ ᵡ ᵎ ᵔ ᵕ ᵙ ᵜ ᶛ
2021-04-02 17:46:26 3175 3
原创 Unity不规则(规则的亦可)物体表面积和体积计算
这两个计算,首先想到的是从mesh入手(当然,包围盒可能更简单,但是实在太不精确)。Unity Mesh API:这里呢,我们需要的主要是vertices,也就是Mesh的顶点每三个点是一个面,通过面积公式,计算出每个面的面积S=√[p(p-l1)(p-l2)(p-l3)](p为半周长)而体积的思路,依然是通过顶点,每个三角面和中心点组成一个三棱锥,计算出其所在平行六面体的体积,四面体的体积就是其1/6详细代码如下:/******************************
2021-04-01 19:27:59 5441 6
UGUI轮播功能(基于DoTween)
2020-05-22
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人