3d图形渲染中表层GUI制作的一种方法

本文介绍了一种在计算机图形(CG)中实现图形用户界面(GUI)合成的方法。通过创建透明背景的GUI图片,利用OpenGL绘制场景,再通过关闭深度缓存和设置混合模式使GUI始终覆盖在场景之上。

今天看了cg中compositing的内容,觉得使用cg制作3d渲染中的gui骑士可以很简单容易。我的做法是这样的:

1.制作一张GUI的窗口尺寸的图片,要求需要镂空的地方的alpha值为0

2.在opengl 中首先绘制场景

3.使用cg绘制gui:
  3.1首先关闭深度缓存(因为要将GUI永远至于表面),然后开启混合,混合方式为(srcalpha,one_minus_src-alpha)

   3.2绘制一个在xy片面的单元四边形

   3.3在cg 的顶点程序中将这个四边形转换到剪裁空间是将其不满整个-1到1的空间,也就是满屏,并将其贴上第一步生成的图片

    3.4在片段程序中映射纹理

4最后关闭混合,开启深度测试

  这样这个gui图片就永远浮在窗口之上了。

转载于:https://www.cnblogs.com/weizhixiao/archive/2009/07/24/5697383.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值