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
版权声明:对于每一位看到本文的人,我先说抱歉,一切皆本人的谬论,记性不好,只好做下笔记,不是有意杀各位脑细胞。

Unity3D ShaderLab<二>Shader属性

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

shader中的属性

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

unity shader中有哪些属性如何使用

Shader"practice/myshader"{ Properties{ _Color("color",Color)=(1,1,1,1)   //颜色,一般用f...

Unity&Shader基础篇-概述

最近在学习Shader,将学习的一些心得和案例以及基础知识罗列了一下。这一篇是unity之Shader的基础篇之基础,更多的是一些概念。该篇将分以下几个部分: 1、什么是Shader? 2、GPU和C...

Unity shader教程-第二课:Shader的框架和Properties详细介绍

详细介绍Unity的Surface shader的Properties部分,案例形式讲解,步步到位。
  • TinyHum
  • TinyHum
  • 2015年01月27日 17:19
  • 3091

UNITY3D shader学习心得<一> properties属性接口

注意:shader  不区分大小写   名称规范:在变量前面加_下划线,首字母也大写  //声明shader在下拉菜单里的路径 shader "Custom/AAA" {          //定义...

Unity3d中Shader的基本属性以及定义

Unity3d Shader 预览 Surface Shader 主要用来实现光照相关处理,可能更简洁。  Vertex and Fragment Shader  如果不与光照交互, 则可以用...

[Unity3D]Shader学习笔记之ShaderLab基础

简介  Unity Shader为控制渲染过程提供了一层抽象。如果没有它,开发者需要和很多文件设置打交道,才能让画面呈现出想要的效果;而在Unity Shader的帮助下,开发者只需要使用Shader...

【Unity5.x Shaders】Properties 属性

Properties 块中的代码就是Shader的属性 属性的语法定义分为4个部分: 1: 在Shader代码中使用的变量名 2: Inspector面板中显示的GUI名称 3: 数据的类...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Unity Shader - 属性定义 ShaderLab : Properties 和 CG 属性
举报原因:
原因补充:

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