L8J计算机图形学———可见表面检测 openGL入门

本文介绍了OpenGL中的可见表面检测技术,包括背面剔除、深度缓冲和光线追踪三种方法。背面剔除能快速初步消除不可见表面,深度缓冲通过深度缓冲区存储可见表面信息,光线追踪则追踪光线与曲面的交点来确定可见表面。
摘要由CSDN通过智能技术生成

学习目标:

  1. 明白可见表面检测的目的
  2. 知道back-face detection 背面剔除方法
  3. 知道深度缓冲(z-buffer)方法
  4. 知道光线追踪(ray-casting)方法
  5. 能对这种技术opengl编程
可见表面检测

又叫Hidden Surface Elimination隐面消除,只有可见表面应该被栅格化。

当我们查看包含非透明对象和表面的图片时,我们无法从靠近眼睛的对象后面看到那些对象。我们必须删除这些隐藏的表面,以获得逼真的屏幕图像。识别和去除这些表面称为隐面问题。

三种方法

  • Back-face detection (also called Culling)
  • Z buffer (also called depth buffer)
  • Ray Casting

1、Back-face detection 背面剔除

  • 简单快速
  • 一般在更复杂可见性测试之前用作初步步骤
  • 在进一步考虑前消除了大约50%的面
  • 如下图,N⋅V < 0 则为背面:在这里插入图片描述
  • 有时,v被VPN取代,可以更快地进行近似处理
  • 然而,这种方法不能处理凹形物体和部分被重叠的物体
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值