最小透视矩阵的求法

遇到很多时候,需要把透视矩阵最小化,以达到性能最优。比如要求Camera只能看到一个洞口里的内容这样其它的区域是不需要进行渲染的。

这里自己写了一个求最小透视矩阵的方法。


 

第一步是先求出CameraBox中心的向量vecCB,定义从Box中心到四个顶点的向量,再求出其各自到vecCB的投影向量,晕,也就是Box四个顶点到在向量上的投影点。可以通过以下方法获取到。


 

第二步求出四个投影点离Camera最近的点,求出以vecCBNormal并经过这个最近点的平面P(也就是后面Camera的近平面)

 

第三步求出Box四个顶点到平面A上的投影点,通过以下方法获取。


 

目前已经把以上方法做为BoxCollider的扩展进行了封装,参考代码:

https://github.com/bennychao/commonlib

 

 

第四步求出最小可视面积,即是一个菱形最小包含正方形的方法

以一个最大边为基准做边应该是最小正方形(未证明)


 


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值