GPU编程入门(5) 基础纹理混合

这篇博客介绍了GPU编程中的纹理混合原理,通过线性插值公式实现颜色混合,并讲解了纹理采样器(texture sampler)的概念,特别是2D纹理采样。文章提供了像素着色器的示例代码,并附带了一个简单的DirectX程序来测试混合效果。
摘要由CSDN通过智能技术生成

今天给出一个纹理混合的像素着色器的例子,算是对以前的东西的一点运用吧,好久没更新了,太懒了。。。。有点对不起大家的说。。。。正题:

首先是纹理混合的原理,原理就是一个简单的数学公式,

color=sampler1.color×scalar+sampler2.color×(1-scalar)

仔细看就明白是一个线性插值公式,最后的颜色由两个样本的颜色和比例因子决定,下面看程序如何实现

接下来是介绍一个纹理采样器(texture sampler)的概念,采样器(sample)和纹理(texture)也是HLSL语言的一种数据类型,HLSL使用sample对texture进行采样,采样的结果直观的说是颜色 ,具体到HLSL里头就是向量,有采样器有很多种,有1D,2D,3D,CUBE....在以后会陆续用例子程序给介绍,这个例子中用的就是一个2D的sampler.下面是一般的使用方法:

 

texture g_texture;   // 声明一个纹理变量

// 定义采样器
sampler g_sampler =
sampler_state
{
    Texture 
= <g_texture>;  //关联到纹理
    
    
//设置采样器状态,均采用线性采样方式
    MipFilter = LINEAR;
    MinFilter 
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值