首先定义一个cginc文件如下所示:

#ifndef MY_CG_INCLUDE
#define MY_CG_INCLUDE
struct appdata_x {
float4 vertex : POSITION;
float4 texcoord : TEXCOORD0;
}; struct v2f_x{
float4 pos : SV_POSITION;
float2 uv : TEXCOORD0;
};
#endif

然后引用如下:

 Shader "Custom/MyShader"{
Properties{
_MainTex ("Main Tex", 2D) = "white" {}
}
SubShader
{
Tags {"Queue"="Transparent""RenderType"="Transparent"}
Pass
{
Tags { "LightMode"="ForwardBase" }
CGPROGRAM
#pragma vertex vert
#pragma fragment frag
#include "Lighting.cginc"
#include "MyCgInclude.cginc"
sampler2D _MainTex;
float4 _MainTex_ST; v2f_x vert(appdata_x v)
{
v2f_img2 o;
o.pos=UnityObjectToClipPos(v.vertex);//将顶点坐标变换到裁剪空间中
o.uv = TRANSFORM_TEX(v.texcoord,_MainTex);//变换uv坐标
return o;
} fixed4 frag(v2f_x i):SV_Target
{
fixed4 c = tex2D (_MainTex, i.uv);//对纹理坐标进行采样
return c;
}
ENDCG
}
}
FallBack "Diffuse"
}

自定义cginc文件的更多相关文章

  1. Bower 自定义组件文件夹名称

    默认情况下, bower 会自动把文件安装在文件夹 bower_components 下面,如果希望自定义这个文件夹的名称为 components ,可以创建一个名称为 ".bowerrc& ...

  2. VS 自定义新建文件模板方法

    自定义新建文件模板方法     VS 2010 及VS2008 自定义模板的方法如下: 结合VS工具,其下的插件也层出不穷.今天重点给大家介绍如何使用VS2010自定义新建文件模版,新建文件时,添加个 ...

  3. CI框架中自定义view文件夹位置

    要想自定义view文件夹的位置,首先要了解CI框架时如何加载view文件夹的. CI中默认调用view的方法是: $this->load->view(); //这一行代码的原理是什么呢?请 ...

  4. PHPCMS V9二次开发便捷自定义后台入口文件夹

    phpcms v9二次开发便捷自定义后台入口文件夹 最新发布的phpcms v9由于采用了mvc的设计模式,所以它的后台访问地址是固定的,虽然可以通过修改路由配置文件来实现修改,但每次都修改路由配置文 ...

  5. .NET MVC4 实训记录之五(访问自定义资源文件)

    .Net平台下工作好几年了,资源文件么,大多数使用的是.resx文件.它是个好东西,很容易上手,工作效率高,性能稳定.使用.resx文件,会在编译期动态生成已文件名命名的静态类,因此它的访问速度当然是 ...

  6. 流媒体Red5服务自定义媒体文件路径

    4. 创建类实现自定义媒体访问路径 使用bean对自己的项目进行配置,更换默认的视频播放目录和视频录制目录.在0.6版的时候, 我们可以直接在red5-web.properties中写入playbac ...

  7. MapReduce实现与自定义词典文件基于hanLP的中文分词详解

    前言: 文本分类任务的第1步,就是对语料进行分词.在单机模式下,可以选择python jieba分词,使用起来较方便.但是如果希望在Hadoop集群上通过mapreduce程序来进行分词,则hanLP ...

  8. Inno Setup自定义卸载文件名称的脚本

    Inno Setup 支持在同一个目录中安装多个应用程序,所以根据安装的先后次序自动将卸载程序文件命名为 unins000.exe,unins001.exe,unins002.exe 等等.这是 IN ...

  9. unity3d MonoDevelop引用外部自定义dll文件报错:are you missing an assembly reference?

    在unity3d 编辑器 MonoDevelop 中引用外部自定义dll文件报错:are you missing an assembly reference? 因为unity还停留在.NET Fram ...

随机推荐

  1. linux tail指令

    http://www.cnblogs.com/peida/archive/2012/11/07/2758084.html tail -f file,  check the log file tail  ...

  2. hash算法散列算法

    Hash,一般翻译做“散列”,也有直接音译为“哈希”的,就是把任意长度的输入(又叫做预映射, pre-image),通过散列算法,变换成固定长度的输出,该输出就是散列值.这种转换是一种压缩映射,也就是 ...

  3. xcode 6 exporting ipa 提示 Your account already has a valid iOS distribution certificate

    在Product - Archive 包过程中,选择Save for Ad hoc Deployment模式[给内部人员测试],export包时,弹出了如下提示 自己遇到时候问题:首先adhoc需要本 ...

  4. DOTween教程

    参考自DOTween官方文档: DOTween起始上手起来很快,当然前提也是用心看一下哈. > 可以在Unity AssetStore下载得到. 使用方法: 准备: 在导入DOTween后,你需 ...

  5. 【XStream】xml和java实体的相互转化

    1.pom.xml <!-- xstream xml和Java对象转化 --> <dependency> <groupId>xstream</groupId& ...

  6. 安卓查看包名,activity方法

    https://www.cnblogs.com/wangcp-2014/p/6144530.html 一.有源码情况 直接打开AndroidManifest.xml文件,找到包含android.int ...

  7. malloc,free和new,delete之间的区别

    1.malloc free 是c语言里面的,不过在c++中也能使用,这个只是申请的一块内存,一般不能申请对象的内存空间:2.new delete,是c++的,申请的也是一块内存,只是这个可以申请对象. ...

  8. [ElasticSearch]Java API 之 词条查询(Term Level Query)

    1. 词条查询(Term Query)  词条查询是ElasticSearch的一个简单查询.它仅匹配在给定字段中含有该词条的文档,而且是确切的.未经分析的词条.term 查询 会查找我们设定的准确值 ...

  9. HTML5 Canvas 龟羊赛跑

    从一张图上截取不同图块,动态显示在canvas上,形成赛跑的效果.完整代码图片下载请点击 https://files.cnblogs.com/files/xiandedanteng/turtleShe ...

  10. Android学习(二十三)SubMenu 子菜单

    一.SubMenu子菜单 和功能菜单相似,但是可以添加子菜单. 二.实现步骤: 1.通过onCreateOptionsMenu方法创建子菜单,可以通过代码动态创建,也可以通过xml进行创建. 2.通过 ...