之前对三线型过滤理解有些问题更新一下

三线性采样点 一次sample采样点是8

(u,v,d)

d是个分数 作为权重

miplevel floor(d)向上取整 在这级mipmap上用uv 采样4个点插值得到a

miplevel ceil(d)向下取整 在这级mipmap上用uv 采样4个点插值得到b

ab按照d的小数部分插值

所以tribilinear在跨不跨mipmap的地方都是sample8个值 所有位置的结果都是插值

(mipmap跨级的意思是指 相邻两个位置 dx/du,dy/dv 计算出来不在一级mipmap的level就是跨级)

然后在这种情况下三线性还能提升性能。。。我也真是服 我要测下看看

原因是 远处cachemissing减小 但是整整多了一倍采样啊 不是增加很多带宽吗 难道我3.0版本对filter对带宽的影响还需要更新?

------

bilinear算法 临近四个点的uv距离下一组uv的四个点  在远处还是会差很大  还是cache missing

有一个容易被忽视的问题是 bilinerar因为有cache的情况下 并不会一直去mem拿tex多半在cache里面 在近的地方

但如果在远处 这部分cache会missing  情况就变成每次都是4  近的时候访存远远低于4

改成tri为什么能提升性能呢这说不通 因为有4次像bri一样的samp一定会做 还有4次性能比较好的 在高level的mipmap上的sample是额外的开销

所以如果他说 Trilinear filtering with mipmaps via GL LINEAR MIPMAP LINEAR requires eight values per sample, but it can actually increase performance since, for faraway pixels, samples from the smaller mip levels are very likely to hit in texture cache.

三线性提升性能 只有一个可能 与之比较的是没有mipmap的bilinear

如果只开mipmap filter不变 比如都是point 用mipmap会减少cachemissing提升性能

开mipmap之后如果用bilinear

mipmap分界处会不衔接 有肉眼可见瑕疵 性能优于三线性的mipmap

trilinear filter的更多相关文章

  1. Use PerfHUD ES to Do Frame Capture Android Game

    Author: http://www.cnblogs.com/open-coder/p/3898224.html Get Start This is short tutorial about how ...

  2. mipmap一

    讲一下mipmap 生成的时候 指定texture 的mipmaplevel 8 然后memory自动就会那么大的 画的时候要在lineraspace(因为我是gpucopy所以不涉及这个问题 可能) ...

  3. django 操作数据库--orm(object relation mapping)---models

    思想 django为使用一种新的方式,即:关系对象映射(Object Relational Mapping,简称ORM). PHP:activerecord Java:Hibernate C#:Ent ...

  4. Texture Filter中的Bilinear、Trilinear以及Anistropic Filtering

    1. 为什么在纹理采样时需要texture filter(纹理过滤)?我们的纹理是要贴到三维图形表面的,而三维图形上的pixel中心和纹理上的texel中心并不一至(pixel不一定对应texture ...

  5. anisotropic filter

    各项异性 point一次sample 1 bilinear 一次sample 4 trilinear 一次sample 8   两个4按mipmaplevel混合 anisotropic 异性和同性 ...

  6. Texture Filter

    [Texture Filter] 我们的纹理是要贴到三维图形表面的,而三维图形上的pixel中心和纹理上的texel中心并不一至(pixel不一定对应texture上的采样中心texel),大小也不一 ...

  7. 纹理过滤模式中的Bilinear、Trilinear以及Anistropic Filtering

    1. 为什么在纹理采样时需要texture filter(纹理过滤). 我们的纹理是要贴到三维图形表面的,而三维图形上的pixel中心和纹理上的texel中心并不一至(pixel不一定对应textur ...

  8. JavaWeb——Filter

    一.基本概念 之前我们用一篇博文介绍了Servlet相关的知识,有了那篇博文的知识积淀,今天我们学习Filter将会非常轻松,因为Filter有很多地方和Servlet类似,下面在讲Filter的时候 ...

  9. 以bank account 数据为例,认识elasticsearch query 和 filter

    Elasticsearch 查询语言(Query DSL)认识(一) 一.基本认识 查询子句的行为取决于 query context filter context 也就是执行的是查询(query)还是 ...

随机推荐

  1. Proxy那点事儿

    全文转载,原文地址:Proxy 那点事儿 Proxy,也就是"代理"了.意思就是,你不用去做,别人代替你去处理.比如说:赚钱方面,我就是我老婆的 Proxy:带小孩方面,我老婆就是 ...

  2. 【hdoj_2152】Fruit(母函数)

    题目:http://acm.hdu.edu.cn/showproblem.php?pid=2152 本题采用母函数模板求解,母函数模板如下: http://blog.csdn.net/ten_sory ...

  3. Go语言有缓冲和无缓冲通道实现样例

    感觉可以,但不好用. 应该有封装程序更高的包包吧. package main import ( "math/rand" "fmt" "time&quo ...

  4. 02 java 基础:java 文件名与类名关系 CLASSPATH

    java 类修饰符:通常情况下使用 public 修饰,此时,java 强制要求 .java 文件名需与该 public 修饰类名一致,否则无法编译通过.如若没有加修饰符,文件名与类名可无任何关联. ...

  5. 推荐开源靶场Vulhub

    转:https://github.com/phith0n/vulhub Vulhub - Some Docker-Compose files for vulnerabilities environme ...

  6. gradle打包分编译环境

    gradle打包分测试.开发.生产环境 buildTypes { debug { signingConfig signingConfigs.myConfig buildConfigField(&quo ...

  7. HDU3487 Play With Chain [Splay]

    题目传送门 题目描述 Problem Description YaoYao is fond of playing his chains. He has a chain containing n dia ...

  8. UFO长啥样?--Python数据分析来告诉你

    前言 真心讲,长这么大,还没有见过UFO长啥样,偶然看到美国UFO报告中心有关于UFO时间记录的详细信息,突然想分析下这些记录里都包含了那些有趣的信息,于是有了这次的分析过程. 当然,原始数据包含的记 ...

  9. 【数据结构】 最小生成树(四)——利用kruskal算法搞定例题×3+变形+一道大水题

    在这一专辑(最小生成树)中的上一期讲到了prim算法,但是prim算法比较难懂,为了避免看不懂,就先用kruskal算法写题吧,下面将会将三道例题,加一道变形,以及一道大水题,水到不用高级数据结构,建 ...

  10. OpenCV 学习之路(2) -- 操作像素

    本节内容: 访问像素值 用指针扫描图像 用迭代器扫描图像 编写高效的图像扫描循环 扫描图像并访问相邻像素 实现简单的图像运算 图像重映射 访问像素值 准备工作: 创建一个简单函数,用它在图像中加入椒盐 ...