首页 > 其他分享 >Games101-4 antialiasing and z-buffer

Games101-4 antialiasing and z-buffer

时间:2024-05-17 19:42:37浏览次数:16  
标签:采样 走样 antialiasing --- buffer -- Games101

利用中心对三角形进行采样

antialiasing 反走样

sampling artifact -- 图形学中一切不好的东西

空间,时间采样问题 --- 信号的速度快导致采样跟不上

如何做:在采样之前进行模糊/滤波,然后进行采样 -- 不能反过来

正弦和余弦滤波 -- 好处 :参数不同 频率不同 --- 每隔多少就重复一次

600

傅里叶基数展开:所有周期函数都可以写成一系列正弦和余弦函数的组合

600

7V86debvlshLBik.png

600

走样的定义

600

傅里叶变换

600

600

高通滤波

边界 --- 高频信息

600

低通滤波

600
600

卷积

600

box 越大 得到的频率越低 box 越小 得到的频率越高

采样 : 重复频率上的结果

原始信号 乘 冲击函数 就是采样的结果

600

时域上的乘积就是频域上的卷积 --- 就是重复原始信号的频谱

600

走样:就是在搬运的过程中进行了混合

反走样

  • 增加采样率
  • 反走样 --- 先模糊再走样 --- 拿走高频信息再进行采样

600

怎么进行滤波

  • 使用低通滤波器进行卷积

600

MSAA -- 进行模糊

600

600

600

现代 的反走样

MSAA 增加了计算量

FXAA --- fast approximate AA
TAA --- temporal AA

DLSS --- deep learning super sampling

z-buffer

画家算法 -- 从远到近 进行绘画

600

600

600

600

600

标签:采样,走样,antialiasing,---,buffer,--,Games101
From: https://www.cnblogs.com/bigsharker/p/18198480

相关文章

  • Linux Buffer/cache清理
    1、清理Buffer/cache缓存文件https://blog.csdn.net/u011066470/article/details/125510817syncsysctl-wvm.drop_caches=1sysctl-wvm.drop_caches=2sysctl-wvm.drop_caches=3定时脚本清理#!/bin/bashMem=$(free-m|awk'NR==2'|awk'{print$4}')......
  • Linux中Cache 和 Buffer 有什么区别?
    Cache和Buffer是两个不同的概念,简单的说,Cache是加速“读”,而buffer是缓冲“写”,前者解决读的问题,保存从磁盘上读出的数据,后者是解决写的问题,保存即将要写入到磁盘上的数据。在很多情况下,这两个名词并没有严格区分,常常把读写混合类型称为buffercache,本文后续的论述中,统一称为cache......
  • buffer/cach太高导致k8s无法新建pod分配内存
    1.使用hcache查看buff/cache占用情况执行下面的命令安装hcache,原hcache项目地址https://github.com/silenceshell/hcachewgethttps://silenceshell-1255345740.cos.ap-shanghai.myqcloud.com/hcachechmod+xhcachemvhcache/usr/local/bin/查看缓存排名前十的进程hc......
  • 调试-网络-如何查看tcp socket recv buffer size
    客户端与服务器建立tcp连接后,在服务器上执行ss-imdst目标IP地址来检查skmemrb值:tcpESTAB00192.168.99.124:ssh192.168.99.......
  • String、StringBuffer、StringBuilder的区别
    在Java中,`String`、`StringBuffer`、和`StringBuilder`都是用于处理字符串的类,但它们之间存在一些关键差异,主要涉及可变性、线程安全性和性能:1.String:-不可变性:`String`对象一旦被创建,其内容就不能改变。任何对`String`的操作,比如拼接、替换等,都会返回一个新的`String`对象,而原......
  • String、StringBuffer、StringBuilder的区别
    在Java中,`String`、`StringBuffer`、和`StringBuilder`都是用于处理字符串的类,但它们之间存在一些关键差异,主要涉及可变性、线程安全性和性能:1.String:-不可变性:`String`对象一旦被创建,其内容就不能改变。任何对`String`的操作,比如拼接、替换等,都会返回一个新的`String`对象,而原......
  • LwRB - 一款适用嵌入式系统的轻量级 RingBuffer+MultiTimer - 超精简的纯软件定时器驱
    1、MicroMagic发布世界上最快的64-bitRISC-V核近日,一家位于美国加州森尼维尔的小型电子设计公司MicroMagic宣称设计、生产出了全世界最快的64位RISC-V内核,比苹果的M1芯片和ArmCortex-A9表现还要出色。消息源: http://www.micromagic.com/news/RISCv-Fastest_PR.pdf这......
  • PikaScript - 面向嵌入式的超轻量级python引擎+Ring-Buffer - 仅80行代码的超简洁环形
    1、PikaScript-面向嵌入式的超轻量级python引擎PikaScript(前称mimiscript)是一个完全重写的超轻量级python引擎,零依赖,零配置,可以在少于4KB的RAM下运行(如stm32g030c8和stm32f103c8),极易部署和扩展。项目地址:https://github.com/pikasTech/pikascriptPikaScript是使用c语言写......
  • protocol buffer
    Googleprotocolbuffer使用的意义:在不使用的情况下,通常我们需要完成两个部分,一个是writter一个是reader。writter负责向磁盘写入消息,reader负责读出消息,如果是定长数据且writter和reader都采用c++编写则会比较方便,采用同样的结构体就行。对于不定长数据稍微麻烦一点,需要定义一......
  • BufferedImage内存泄漏和溢出问题
    java的ImageIO处理图片在使用Thumbnailator时出现了OOM问题,但是其使用方法只有一行代码,无法针对其内部使用的对象进行资源释放,所以使用原生的Java类库中ImageIO来处理图片。关键有三个类:ImageIO、BufferedImage、GraphicsImageIO类包含两个静态方法:read()和write(),通过这两......