物探论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 670|回复: 0

地形渲染中消除POP的方法(转载)

[复制链接]
发表于 2013-3-7 16:03:55 | 显示全部楼层 |阅读模式
在地形渲染中为了减轻渲染负担其中一个技术是就LOD,但其带了的一个问题就是会产生地形”跳动”,因为地形的LOD精度发生变化时镶嵌的密度也发生了变化。要解决这个问题有一个方法就是当高精的模型向底精模型变化时不是突然变化过去的,而是慢慢渐变而来,这样可以极大的减少”跳动”。通过设置适当的渐变距离可以做到让观察者感觉不到地形的变化。 关于这个问题在一篇文章里面也有介绍www.dgdaming.com:TerrainGeomorphingintheVertexShader[1],但是原文介绍的方法过于复杂而且不适合用硬件加速,但是这仍然是一篇学习地形渲染的好文章。下面提出一种更加简单,快速的方法来解决这个问题。使用这个方法有一个前提条件就是地形块之间的LOD级别相差不能大于1。
解决这个问题最基本的思想就是:对高精度的地形块进行形变来模拟低精度的地形块,当高精地形和低精地形的形态完全一样时,地形块的LOD才变为低精度的。设置高精度地形块的高度为H1,低精度的地形块的高度为H2,最后根据渐变距离求出一个插值t[0,1],最后地形的高度就为H=lerp(H1,H2,t)。
为了加速渲染顶点形变的过程由vs去计算。设置地形的最大LOD级别为5,也就说有4种形变可能:0->1,1->2,2
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|物探论坛 ( 鄂ICP备12002012号 微信号:iwutan )

GMT+8, 2024-4-19 12:29 , Processed in 0.070569 second(s), 15 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表