- 博客(32)
- 收藏
- 关注
原创 URP中Shader与Build-In的区别
1、SRP中特殊的Tag:RenderPipeline指定用哪个管线渲染URP:UniversalPipelineHDRP:HDRenderPipelineSRP:你自定义的标签2、Pass中首选语言为HLSL语言Pass{HLSLPROGRAMENDHLSL}URP也支持CG语言。如果给Shader添加了CGPROGRAM/ENDCGPROGRAM块,Unity会自动include内置渲染管线的代码库,此时如果你再include SRP shader代码库,可能
2021-11-05 14:34:04 2959
翻译 Unity HDRP材质篇-MaskMap&DetailMap
LitMask Map:遮罩贴图是多种贴图的混合,它包含四个灰度纹理,每个纹理有一个颜色通道。Metallic 贴图 (金属)Occlusion 贴图 (遮蔽)Detail mask 贴图(细节)Smoothness 贴图 (光滑)
2021-07-26 17:03:15 6072
原创 Unity优化
一、纹理压缩在游戏中jpg、png、tga、psd等这些图片文件格式,在游戏运行的时候不会使用这些格式,而是使用设备显卡所支持的纹理压缩格式。在构建时把纹理源文件压缩为对应zhi
2021-06-15 18:01:54 353 2
原创 Shader学习笔记
UnityShader学习Shader的基本结构名字写shader第一步肯定是定义名字Shader “Custom/ShaderName”{}属性Properties{_Name(“Display Name”, type) = defaultValue[{options}]}_Name 属性的名字也是变量名,整个Shader代码中将使用这个名字来获取该属性的内容Display Name 这个字符串显示在Unity的材质编辑器中作为Shader的使用者可读的内容(所以为了美术阅读
2020-11-11 10:58:35 138
原创 【UnityShader】灰度图制作方法
对灰度图像的处理一般有以下四种方法:一、分量法该方法将彩色图像中的三分量的亮度作为三个灰度图像的灰度值,可根据应用需要选取一种灰度图像。即:可以选取RGB中的任一颜色通道作为灰度值。公式为:GrayScale1 = R,GrayScale2=G,GrayScale3=B二、最大值法该方法将彩色图像中的三分量亮度的最大值作为灰度图的灰度值,一般的,该方法求取后的灰度图亮度最高。公式为:GrayScale=max(R,G,B)三、平均值法该方法将彩色图像中的RGB三分量的颜色值来求取平均
2020-09-07 16:43:43 2798
原创 T4M插件使用
从左到右依次是1:转换器2:优化3:我的T4M设置4:画刷5:植物6:LOD7:广告牌右边的按钮:激活/反激活 控制器一、转换器界面Name:修改模型名字New Prefab:勾选自动将这个模型生成为一个prefab并保存在T4MOBJ中PROCESS:生成T4M模型将terrain模型转为T4MKeep the textures保证纹理为4的整数倍T4M Quality调整T4M的质量,当顶点数过大,有些设备会变成感叹...
2020-08-14 16:53:30 2519 1
原创 Unity Shader常用语句
TRANSFORM_TEXTRANSFORM_TEX主要作用是拿顶点的uv去和材质球的tiling和offset作运算, 确保材质球里的缩放和偏移设置是正确的。 (v.texcoord就是顶点的uv)float4 _MainTex_ST 就是声明_MainTex是一张采样图,会进行UV运算,是使用TRANSFORM_TEX的必要条件!!o.uv = TRANSFORM_TEX(v....
2020-04-22 17:41:13 477
原创 Unity Shader
Unity5中的Shader:Standard Suface Shader,标准光照类型Unlit Shader,不包含光照(但包含雾效)的顶点/片元着色器Image Effect Shader,屏幕后期处理效果Compute Shader,用Gpu的并行性来计算一些Cpu较为吃力的运算 Shader结构名字: Shader “Custom/MyShader”属性:...
2019-02-18 19:44:10 231
原创 Unity超赞插件
场景导出为FBX文件:WRP FBX Exporter下载地址:https://assetstore.unity.com/packages/tools/input-management/wrp-fbx-exporter-77810UnityShader图形化编辑插件Amplify Shader Editor下载地址:https://assetstore.unity.com/pa...
2019-02-18 15:53:39 564
原创 【Unity】场景优化
一、LOD层级细节技术此技术需要美工的配合,提供给程序多个不同三角面数的模型 在场景中新建一个空的游戏物体,并添加LOD Group组件,如下图所示: 并将美工提供的三种不同精度的模型按照精度的大小依次拖入到LOD0、LOD1、LOD2中,LOD0为最近处的精细模型,Culled为不显示。 此时,场景中渲染显示的模型会根据相机与模型的距离进行切换显示,具体的切换显示距离可拖动...
2019-01-30 16:21:24 922
原创 【设计模式】代理模式
代理模式:为其他对象提供一种代理以控制这个对象的访问。代理模式的结构图 代理模式应用:一、远程代理,也就是为一个对象在不同的地址空间提供局部代表。这样可以隐藏一个对象存在于不同地址空间的事实二、虚拟代理、是根据需要创建开销很大的对象。通过他来存放实例化需要很长时间的真实对象三、安全代理、用来控制真实对象访问时的权限四、智能指引、是指当调用真实的对象时,代理处理另外一...
2019-01-19 16:04:38 146
原创 【PostProcessing】的用法以及那些坑
废话少说,要用一个东西当然先要获取它。命名空间:public PostProcessProfile postProcessProfile;找到它//这个是Project中生成的 public PostProcessProfile postProcessProfile;获取你添加的效果(以Bloom为例):Bloom bloom = postProcessProfil...
2019-01-11 18:23:44 7996
原创 【设计模式】装饰模式
装饰模式,动态地给一个对象添加一些额外的职责,就增加功能来说,装饰模式比生成子类更加灵活。装饰模式它把每个要装饰的功能放在单独的类中,并让这个类包装它所要装饰的对象。因此,当需要执行特殊行为时,客户代码就可以在运行时根据需要有选择地、按顺序地使用装饰功能包装对象。...
2019-01-06 15:40:53 148 1
原创 Github上传项目详细教程
1、下载Git Bash官方下载地址:http://git-scm.com/download/ 根据你自己的系统 下载对应版本 。2、打开GitBash绑定用户,填写自己Github的用户名和邮箱ps : git config –global 参数,有了这个参数,表示你这台机器上所有的Git仓库都会使用这个配置,当然你也可以对某个仓库指定的不同的用户名和邮箱。3、为Github...
2018-12-26 18:15:50 471
原创 【设计模式】单一职责原则、开放-封闭原则、依赖倒转原则、里氏代换原则
单一职责原则是指就一个类而言,应该仅有一个引起它变化的原因。软件设计真正要做的许多内容,就是发现职责并把那些职责相互分离。如果你能够想到多余一个的动机去改变一个类,那么这个类就具有多于一个的职责,就应该考虑职责的分离。 开放-封闭原则,是说软件实体(类、模块、函数等等)应该可以扩展,但是不可修改。这个原则有两个特征:对于扩展是开放的;对于更改是封闭的。面对需求,对程序的改动是通...
2018-12-23 15:53:16 264
原创 【设计模式】策略模式
策略模式(Strategy):它定义了算法家族,分别封装起来,让他们之间可以互相替换,此模式让算法的变化,不会影响到使用算法的客户。 一句话介绍策略模式:策略模式就是用来封装算法的。但实际上,我们可以用它来封装几乎任何类型的规则,只要分析过程中听到需要在不同时间应用不同的业务规则,既可以考虑使用策略模式处理这种变化的可能性。 但在基本的策略模式中,选择所用具体...
2018-12-16 15:42:24 93
原创 【VR】VR状态下显示器显示特定画面
在主相机上添加脚本//在2017.2之后添加UnityEngine.XR.XRSettings.showDeviceView = false;//在2017.2之前添加UnityEngine.VR.VRSettings.ShowDeviceView = false;这个属性的意思是:Description描述Globally enables or disables VR...
2018-12-11 14:08:52 1310
原创 【设计模式】UML类图
在我们学习设计模式时,最重要的一点是要明白类与类之间、类与接口之间的关系。这种关系我们可以使用UML(Unified Modeling Language统一建模语言)类图来表示。1、表示方法一、类的表示方法我们可以看到,类图分为了三部分:(1)类名:类名在最上面,当类是抽象类时用斜体表示(2)属性列表UML规定属性的表示格式为:可见性 属性名:数据类型[...
2018-12-09 15:52:30 529
原创 【设计模式】简单工厂设计模式
请用任意一种面向对象语言实现计算器控制台程序,要求输入两个数和运算符号,得到结果。Operation运算类public class Operation { private double _numberA = 0; private double _numberB = 0; public double NumberA { get ...
2018-12-02 16:59:43 888 1
原创 Unity中Animator各种功能(持续更新中。。。)
一、动画倒播、控制动画播放位置看图说话,图中的Speed、 Normalized Time现在分别受New和New Float的值控制,通过控制Speed的值可以控制动画的倒播正播,动画的播放速度;控制Normalized Time的值可以实现控制动画的播放位置。public float test;animator.SetFloat("New Float", test);控...
2018-11-22 14:04:24 1222 1
原创 Untiy数据持久化(持续更新中。。。。)
二进制保存方法 /// <summary> /// 保存应用 /// </summary> public void SaveAPP() { BinaryFormatter binaryFormatter = new BinaryFormatter(); FileStream fileStream ...
2018-11-16 13:23:48 158
原创 Unity的Lighting属性
Environment Skybox Material:天空盒材质 Sun Source:太阳光来源由哪个Light产生Environment Lighting Source:环境光的来源 Skybox 受天空盒子的影响 Gra...
2018-11-05 13:30:55 2253
原创 修改Unity Asset Store 默认下载文件位置?
默认Asset Store 的下载路径在C盘这里,盘比较小的话很快就满了;C:\Users\用户名\AppData\Roaming\Unity\Asset Store把Asset Store文件夹整个剪切到D:\Asset Store之后,命令行运行mklink /j "C:\Users\用户名\AppData\Roaming\Unity\Asset Store" "D:\Asset Sto...
2018-11-02 15:55:32 13462 5
原创 有动画模型的精细碰撞检测
using UnityEngine; using System.Collections; [RequireComponent(typeof(SkinnedMeshRenderer), typeof(MeshCollider))] public class DynamicMeshCollider : MonoBehaviour { private SkinnedMeshRend...
2018-10-15 13:50:55 524
转载 编辑器扩展
一个引擎,最重要的就是工具,工具除了提升开发速度,提供可视化操作环境以外,还带了容错功能。 它使得大家的工作局限在一定的范围内,比如一个变量的配置,或者是一些类型的选择。 使用编辑器,使得既使不太明白的人,也能快速找到方法。如果是采用手工配置的话,那每一个东西需具备相当完善的文档,文件加载时,得提供高强度的错误效验和错误提示功能。 否则很容易陷入困境。UNITY3D的IDE本身的强大,除了表现...
2018-08-30 17:09:50 368
原创 Unity设置窗口置顶以及无边框窗口
using System;using System.Collections;using System.Runtime.InteropServices;using System.Diagnostics;using UnityEngine;public class WindowMod: MonoBehaviour{public Rect screenPosition;[DllImpor...
2018-05-29 17:42:53 7790
转载 Unity UGUI的各种属性
Alignment: 文字以 水平和垂直 对齐方式, Horizontal Overflow: 水平 Wrap: 文字大小和数量超过Text边框宽度,不再显示 Overflow: 文字超过了边框宽度,还是显示出来 Vertical Overflow:垂直 Truncate: 截断,文字垂直超过Text
2017-05-06 10:54:21 1486
转载 C#中监控文件夹的变化
C#中监控文件夹的变化FileSystemWatcher 用法在应用FileSystemWatcher对象之前,你必须了解这个对象的一些基本属性和事件。毫无疑问,这个对象的最重要的属性为“EnableRaisingEvents”属性。这个属性决定对象在收到改变通知时是否提交事件。如果EnableRaisingEvents属性设为假,对象将不会提交改变事件。如果设为真,它将提交改变事件。下面是你在应用
2017-04-26 09:13:55 3555 1
转载 unity常见问题
1:天空盒有接缝怎么解决?答:在贴图导入设置里设置Wrap Mode为"Clamp".2:DDS格式怎么不显示?答:Unity不支持DDS格式,Unity会将除DDS外的其他格式图片具有为DDS同样的优化.3:Unity如何动态载入外部模型等文件?答:可以使用AssetBundle:http://unity3d.com/support/documentation/Scr
2017-04-25 10:40:51 264
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人