Unity Shader - 属性定义 ShaderLab : Properties 和 CG 属性

原创 2015年07月11日 01:23:39

(1)ShaderLab Properties 可用类型

  • 数值和滑条类型
    • 范围浮点数 Range 例如:_MatRange(“Material Range Val”, Range (-10, 10)) = 1
    • 浮点数 Float 例如:_MatFloat(“Material Float Val”, Float) = 1
    • 整数 Int 例如:_MatInt(“Material Int Val”, Int) = 1
  • 颜色和向量类型
    • 颜色 Color 例如: _MatColor(“Material Color Val”, Color) = (1,1,1,1)
    • 四元素向量 Vector 例如: _MatVector(“Material Vector Val”, Vector) = (1,1,1,1)
  • 图片类型
    • 普通贴图 2D 例如: _Mat2D(“Material 2D Texture Val”, 2D) = “defaulttexture” {}
    • 正方体贴图 Cube 例如: _MatCube(“Material Cube Texture Val”, Cube) = “defaulttexture”{}
    • 3D贴图 3D 例如: _Mat3D(“Material 3D Texture Val”, 3D) = “defaulttexture”{}
  • 矩阵
    • float4x4

这里写图片描述

(2) unity脚本控制属性

public Cubemap m_cubeMap;
public Texture3D m_texture3D;

void Start ()
{
    Material mat = gameObject.GetComponent<Renderer>().material;
    Texture texture2D = transform.GetChild(0).GetComponent<Renderer>().material.mainTexture;
    mat.SetFloat("_MatRange", 2);
    mat.SetFloat("_MatFloat", 3);
    mat.SetInt("_MatInt", 0);
    mat.SetColor("_MatColor", Color.black);
    mat.SetVector("_MatVector", Vector4.one);
    mat.SetTexture("_Mat2D", texture2D);
    mat.SetTexture("_MatCube", m_cubeMap);
    mat.SetTexture("_Mat3D", m_texture3D);
}

(3)CG属性

  • sampler2D _CG2D;
  • float4 _CGFloat4 ;
  • sampler
版权声明:对于每一位看到本文的人,我先说抱歉,一切皆本人的谬论,记性不好,只好做下笔记,不是有意杀各位脑细胞。

相关文章推荐

黑马程序员 IO/输入输出流

---------------------- ASP.Net+Unity开发、.Net培训、期待与您交流! ---------------------- 黑马程序员 IO/输入输出流 一、概念和作...

Unity Shader修改Shader属性

定义一个材料,放在Resources文件夹中 然后贴上Shader代码Shader "Custom/ScriptControlShader" { Properties { _Color ("Co...

ShaderLab - 第一天 - Shader基础知识

本文为ShaderLab系列学习文章,希望对正在学习或者想要学习ShaderLab的人有所帮助,如文章有任何错误还请读者帮忙指正,谢谢! 第一节:ShaderLab基础 1.Shader 什么...

shader内置变量

shader内置变量 内置变量都在UnityShaderVariables.cginc文件中声明 变换矩阵 All these matrices arefloat4x4 type. Name ...

unity shader 内置变量

官网Manual:http://docs.unity3d.com/Manual/SL-UnityShaderVariables.html unity提供大量的内置变量,来供我们使用,主要包括一些 :...

shader内置变量和函数

1、uint CreateShader(enum type) : 创建空的shader object; type: VERTEX_SHADER, 2、void ShaderSource(ui...

Unity3D ShaderLab<二>Shader属性

本文主要是对Unity3D shader的属性进行相关阐述 Shader "Custom/NewShader" { Properties { _MainTex ("Base (RGB)", ...

shader中的属性

实例化Shader为Material时,可以通过为属性赋值达到创建具体对象的目的,可以在Properties块中定义自己所需要的属性Properties { _MainTex ("Ba...

【OpenGL】Shader实例分析(一)-Wave

转发请保持地址:http://blog.csdn.net/stalendp/article/details/21993227 这篇文章主要分析一个Shader,从而感受shader的魅力,并学习相关s...

Unity3d中shader属性的控制

Object [] renderers = GameObject.FindObjectsOfType(typeof(Renderer)); int i_max = renderers.Length; ...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)