纹理置灰

作者:追风剑情 发布于:2014-6-28 20:43 分类:Shader

原理:通过Luminance宏输出_MainTex的灰度值。 Shader "Shader_tex2D" { Properties { _MainTex ("Base (RGB)", 2D) = "white" {} } SubShader { Tags { "RenderType" = "Opaque" } LOD 200 CGPROGRAM ...

阅读全文>>

标签: Luminance

评论(0) 浏览(4345)

纹理采样(tex2D)

作者:追风剑情 发布于:2014-6-27 21:25 分类:Shader

一、新建个Shader Shader "Shader_tex2D" { Properties { _MainTex ("Base (RGB)", 2D) = "white" {} } SubShader { Tags { "RenderType" = "Opaque" } LOD 200 CGPROGRAM //声明表面着色函数并设置光照模式...

阅读全文>>

标签: tex2D

评论(0) 浏览(4995)

半透明Cube

作者:追风剑情 发布于:2014-6-26 22:41 分类:Shader

一、新建一个Shader 操作流程参见http://www.devacg.com/article/63.html Shader "RedCube" { Properties { _CubeAlpha ("Alpha", Range(0, 1)) = 0.5 } SubShader { Tags { "RenderType" = "Opaqu...

阅读全文>>

标签: Cube Alpha

评论(0) 浏览(3065)

assembly.GetTypes()

作者:追风剑情 发布于:2014-6-25 22:59 分类:C#

using System; using System.Reflection; namespace GetTypesTest { class Program { static void Main(string[] args) { Assembly asm = Assembly.GetExecutingAsse...

阅读全文>>

标签: GetTypes

评论(0) 浏览(3544)

Assembly.GetExecutingAssembly()

作者:追风剑情 发布于:2014-6-24 22:42 分类:C#

using System; using System.Reflection; namespace AssemblyTest { class Program { static void Main(string[] args) { //利用反射创建对象 Assembly asm = A...

阅读全文>>

标签: GetExecutingAssembly

评论(0) 浏览(11494)

配置Cg开发环境

作者:追风剑情 发布于:2014-6-22 21:17 分类:Cg

一、下载并安装Cg ToolKit https://developer.nvidia.com/cg-toolkit 二、检查是否安装成功 在cmd中输入 cg -h cgc [options] file [options]表示可选配置项,file表示Cg程序文件名。可选配置项包括编译时选择使用的profile、着色程序的入口函...

阅读全文>>

标签: Cg

评论(0) 浏览(6663)

用Shader设置Cube颜色

作者:追风剑情 发布于:2014-6-21 1:45 分类:Shader

一、创建一个Shader文件 Shader "RedCube" { SubShader { Tags { "RenderType" = "Opaque" } CGPROGRAM //声明表面着色函数并设置光照模式为Lambert(漫反射) #pragma surface surf Lambert struct Input { float4 col...

阅读全文>>

评论(0) 浏览(5914)

list.Exists()

作者:追风剑情 发布于:2014-6-18 22:17 分类:C#

using System; using System.Collections.Generic; namespace ConsoleApplication1 { class Program { static void Main(string[] args) { List<int> list = n...

阅读全文>>

标签: Exists

评论(0) 浏览(3062)

顶点片元着色器

作者:追风剑情 发布于:2014-6-17 21:59 分类:Shader

   顶点片元着色器不使用灯光交互,实际着色器代码用CG或HLSL语言编写,嵌入在着色器的通道块中。在着色器开始处,可以使用编译指令#pragma,常用编译指令如表所示: 顶点片元着色器常用编译指令 编译指令 说明 ...

阅读全文>>

评论(0) 浏览(3829)

镂空效果

作者:追风剑情 发布于:2014-6-13 21:02 分类:Unity3d

阅读全文>>

评论(0) 浏览(2895)

表面着色器

作者:追风剑情 发布于:2014-6-12 22:14 分类:Shader

   不同于固定功能着色器,表面着色器和顶点片元着色器的实际着色器代码使用CG或HLSL编写的。    表面着色器必须像其他着色器一样放在CGPROGRAM和ENDCG中间,但它必须放在子着色器块中,不能放在通道中,表面着色器将在多个通道内编译自己,同时使用#pragma surface指令,以声明它是一个表面着色器,该指令如下: #...

阅读全文>>

评论(0) 浏览(4666)

camera.cullingMask

作者:追风剑情 发布于:2014-6-12 19:09 分类:Unity3d

int layerMask = 1 << gameObject.layer; //此camera负责渲染的层中是否包含gameObject所属层 if ((camera.cullingMask & layerMask) != 0){ //包含 }

阅读全文>>

评论(0) 浏览(4316)

Unity获取显示区域

作者:追风剑情 发布于:2014-6-12 14:44 分类:Unity3d

public Camera uiCamera = null;//UI像机 Rect mRect = uiCamera.pixelRect;//显示区域 //左上角坐标 (mRect.xMin, mRect.yMax) //右下角坐标 (mRect.xMax, mRect.yMin)

阅读全文>>

标签: pixelRect

评论(0) 浏览(3947)

光源对物体照明的分类

作者:追风剑情 发布于:2014-6-7 23:25 分类:Shader

间接照明    在物体所处的环境中,我们可以把照射到物体上的光源简单地分为直接照明和间接照明。间接照明是光在物体间传播后,最终又对物体形成照明(如:3d Max中的VRay渲染器)。 直接照明    如果不考虑光线在物体间的传播,也不考虑光线在物体内部的传播,则光线对物体直接照明。我们把照明的结果分为漫反射和镜面反射两种,...

阅读全文>>

评论(0) 浏览(3530)

绑定通道(BindChannels)

作者:追风剑情 发布于:2014-6-6 21:22 分类:Shader

   绑定通道(BindChannels)命令可以指定顶点数据如何映射到显卡中。使用顶点程序时,绑定通道将没有效果,绑定受顶点程序输入控制。    默认情况下,Unity会自动计算并绑定,但在某些情况下,要使用自定义绑定。例如,在第一个纹理处理阶段映射主UV,然后在第二个纹理处理阶段使用次要UV,或者告诉硬件需要考虑顶点颜色。绑定通道常用语法如下...

阅读全文>>

标签: BindChannels

评论(0) 浏览(9124)

通道标签

作者:追风剑情 发布于:2014-6-6 0:09 分类:Shader

   通道标签与子着色器标签语法相同。通道标签用来控制光照管线(环境光照、顶点光照和像素光照等)中这个通道所扮演的角色及其他一些设置。以下标签只能在通道中(而不是在子着色器中)使用。 LightMode    光照模式标签,它定义了在光照管线中通道的角色。但是,这些标签很少会被使用,大多数情况下需要和光照进行互动的着色器会被写成表面着...

阅读全文>>

标签: 通道标签

评论(0) 浏览(2988)

混合

作者:追风剑情 发布于:2014-6-4 23:51 分类:Shader

混合是用来制作透明物体的。在所有着色器执行完毕,所有纹理都被应用,所有像素准备被呈现到屏幕之后,使用Blend命令来操作这些像素进行混合。 混合是将源色和目标色以某种方式混合生成特效的技术。混合常用来绘制透明或半透明的物体。混合操作只能在RGBA模式下进行,颜色索引模式下无法指定Alpha值。物体的绘制顺序会影响到OpenGL的混合处理。Blend常用语法如下所列。 Ble...

阅读全文>>

标签: 混合

评论(0) 浏览(3514)

脚本编译

作者:追风剑情 发布于:2014-6-1 18:35 分类:Unity3d

Unity可以把脚本编译为.dll文件,.dll文件将在运行时编译运行。这样做可以提高执行的速度,比传统的JavaScript脚本要快20倍左右。 脚本具体的编译需要以下4步: (1)所有的“Standard Assert”、“Pro Standard Assert” 或者 “Plugins”文件夹里的脚本会被首先编译。 (2)所有的“Standard Asse...

阅读全文>>

评论(0) 浏览(3202)

Alpha测试

作者:追风剑情 发布于:2014-6-1 16:52 分类:Shader

   透明度测试是阻止像素被写到屏幕的最后机会。在最终渲染出的颜色被计算出来之后,可选择通过将颜色的透明度值和一个固定值比较。如果比较的结果失败,像素将不会写到显示输出中。常用语法如下。 AlphaTest 开关状态 Off(缺省)渲染所有像素,On开启透明度测试。 AlphaTest 比较模式 测试值 设置透明度测试只渲染透明度...

阅读全文>>

标签: Alpha测试

评论(0) 浏览(3452)

GPU编程

作者:追风剑情 发布于:2014-6-1 0:39 分类:Shader

目前这种面向GPU的编程有3种高级图像语言可供选择: 微软提供了HLSL(High Level Shading Language),是通过Direct3D图形软件库来写Shader程序的语言。 OpenGL提供了GLSL(OpenGL Shading Language)来写Shader程序。 NVIDIA提供了Cg(C for graphics)语言。NVIDI...

阅读全文>>

标签: GPU编程

评论(0) 浏览(3179)

Powered by emlog  蜀ICP备18021003号-1   sitemap

川公网安备 51019002001593号