Fixed Function shaders实例

2024-01-31 11:58
文章标签 实例 function fixed shaders

本文主要是介绍Fixed Function shaders实例,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

一、显示纯颜色物体

Shader "Example/FixedSolidColor" {Properties{_Color("MainColor (RGB)", Color) = (1,1,1,1)}SubShader{pass {Lighting onMaterial{Diffuse[_Color]}}}FallBack "Diffuse"
}

二、各种颜色通道

Shader "Example/FixedFullColor" 
{Properties{_Color("Main Color", Color) = (1,1,1,0.5)_SpecColor("Spec Color", Color) = (1,1,1,1)_Emission("Emmisive Color", Color) = (0,0,0,0)_Shininess("Shininess", Range(0.01, 1)) = 0.7}SubShader{Pass{Lighting OnSeparateSpecular OnMaterial{Diffuse[_Color]Ambient[_Color]Shininess[_Shininess]Specular[_SpecColor]Emission[_Emission]}}}
}

三、显示一张贴图

Shader "Example/FixedOnePic" 
{Properties{_Color("MainColor(RGB)",Color) = (1,1,1,1)_MainTex("Base (RGB)", 2D) = "white" {}}SubShader{Pass{Lighting onColor(1,1,0,1)Material{Diffuse[_Color]}SetTexture[_MainTex]{//材质 * 定点颜色Combine texture * primary DOUBLE}}}FallBack "Diffuse"
}

四、多张贴图叠加

Shader "Example/FixedMulPic" 
{Properties{_Color("MainColor(RGB)",Color) = (1,1,1,1)_MainTex("Base (RGB)", 2D) = "white" {}_MainTex2("Base2 (RGB)", 2D) = "white" {}_MainTex3("Base3 (RGB)", 2D) = "white" {}}SubShader{Pass{Lighting onColor(1,1,0,1)Material{Diffuse[_Color]}SetTexture[_MainTex]{//第一张材质 * 定点颜色Combine texture * primary DOUBLE}SetTexture[_MainTex2]{//材质 * 之前累积(这里即第一张材质)Combine texture * previous DOUBLE}SetTexture[_MainTex3]{//材质 * 之前累积Combine texture * previous DOUBLE}}}FallBack "Diffuse"
}

五、透明通道贴图+双面显示

Shader "Example/FixedAlphaCull" 
{Properties{_Color("MainColor(RGB)",Color) = (1,1,1,1)_MainTex("Base (RGB)", 2D) = "white" {}}SubShader{Pass{Blend SrcAlpha OneMinusSrcAlphaCull offLighting onColor(1,1,0,1)Material{Diffuse[_Color]}SetTexture[_MainTex]{Combine texture * primary DOUBLE}}}FallBack "Diffuse"
}

这篇关于Fixed Function shaders实例的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/663693

相关文章

CSS中的Static、Relative、Absolute、Fixed、Sticky的应用与详细对比

《CSS中的Static、Relative、Absolute、Fixed、Sticky的应用与详细对比》CSS中的position属性用于控制元素的定位方式,不同的定位方式会影响元素在页面中的布... css 中的 position 属性用于控制元素的定位方式,不同的定位方式会影响元素在页面中的布局和层叠关

Python实例题之pygame开发打飞机游戏实例代码

《Python实例题之pygame开发打飞机游戏实例代码》对于python的学习者,能够写出一个飞机大战的程序代码,是不是感觉到非常的开心,:本文主要介绍Python实例题之pygame开发打飞机... 目录题目pygame-aircraft-game使用 Pygame 开发的打飞机游戏脚本代码解释初始化部

Spring组件实例化扩展点之InstantiationAwareBeanPostProcessor使用场景解析

《Spring组件实例化扩展点之InstantiationAwareBeanPostProcessor使用场景解析》InstantiationAwareBeanPostProcessor是Spring... 目录一、什么是InstantiationAwareBeanPostProcessor?二、核心方法解

java String.join()方法实例详解

《javaString.join()方法实例详解》String.join()是Java提供的一个实用方法,用于将多个字符串按照指定的分隔符连接成一个字符串,这一方法是Java8中引入的,极大地简化了... 目录bVARxMJava String.join() 方法详解1. 方法定义2. 基本用法2.1 拼接

Linux lvm实例之如何创建一个专用于MySQL数据存储的LVM卷组

《Linuxlvm实例之如何创建一个专用于MySQL数据存储的LVM卷组》:本文主要介绍使用Linux创建一个专用于MySQL数据存储的LVM卷组的实例,具有很好的参考价值,希望对大家有所帮助,... 目录在Centos 7上创建卷China编程组并配置mysql数据目录1. 检查现有磁盘2. 创建物理卷3. 创

Java List排序实例代码详解

《JavaList排序实例代码详解》:本文主要介绍JavaList排序的相关资料,Java排序方法包括自然排序、自定义排序、Lambda简化及多条件排序,实现灵活且代码简洁,文中通过代码介绍的... 目录一、自然排序二、自定义排序规则三、使用 Lambda 表达式简化 Comparator四、多条件排序五、

Java实例化对象的​7种方式详解

《Java实例化对象的​7种方式详解》在Java中,实例化对象的方式有多种,具体取决于场景需求和设计模式,本文整理了7种常用的方法,文中的示例代码讲解详细,有需要的可以了解下... 目录1. ​new 关键字(直接构造)​2. ​反射(Reflection)​​3. ​克隆(Clone)​​4. ​反序列化

Python解决雅努斯问题实例方案详解

《Python解决雅努斯问题实例方案详解》:本文主要介绍Python解决雅努斯问题实例方案,雅努斯问题是指AI生成的3D对象在不同视角下出现不一致性的问题,即从不同角度看物体时,物体的形状会出现不... 目录一、雅努斯简介二、雅努斯问题三、示例代码四、解决方案五、完整解决方案一、雅努斯简介雅努斯(Janu

Python开发文字版随机事件游戏的项目实例

《Python开发文字版随机事件游戏的项目实例》随机事件游戏是一种通过生成不可预测的事件来增强游戏体验的类型,在这篇博文中,我们将使用Python开发一款文字版随机事件游戏,通过这个项目,读者不仅能够... 目录项目概述2.1 游戏概念2.2 游戏特色2.3 目标玩家群体技术选择与环境准备3.1 开发环境3

Vue3组件中getCurrentInstance()获取App实例,但是返回null的解决方案

《Vue3组件中getCurrentInstance()获取App实例,但是返回null的解决方案》:本文主要介绍Vue3组件中getCurrentInstance()获取App实例,但是返回nu... 目录vue3组件中getCurrentInstajavascriptnce()获取App实例,但是返回n