openGl高级(三)

1 Assimp 模型加载库作用?

答:在日常生活中有很多复杂的模型比如火车房屋,如果一一定义它们得顶点将很困难。Assimp能对每一种模型格式进行导入。

2 openGl如何应用Assimp模型加载库?

答:step 1:include Assimp头文件,通过loadModel()加载模型库,将得到一个scene;  step 2:定义在上openGl Mesh,来接收scene里面的数据。step 3:根据mesh里面的数据来渲染。

3 深度测试原理及使用?

答:将一个片段的深度值和深度缓冲得内容进行对比,如果通过了得话将会更新为新的深度值,否则被丢弃。通过glEnable(GL_DEPTH_TEST)打开深度测试,通过glDepthFunc()控制条件丢弃。

4 什么深度冲突如何避免?

答:两个平面紧密排在一起,深度缓冲没有足够的精度来决定哪个在前面或者后面。避免:1)物体不要摆的太近,2)将近平面设置远一点,3)使用更高精度的深度缓冲。

5 什么是模板测试及使用?

答:在模板缓冲中存放8位精度的模板像素值,当片段等于模板值可以选择保留或者丢弃片段。通过glEnable(GL_STENCIL_TEST)开启模板测试。

6 如何渲染半透明纹理?

答:step 1: 启用混合,设定相应的混合函数,glEnable(GL_BLEND); 然后它就会自动将当前片段颜色和颜色缓冲中的颜色根据alpha值来进行混合。

7 什么是面剔除以及如何使用?

答:一个立方体我们最多看到三个面,剔除那些不显示的面可以节省百分之五十以上消耗。step 1先定义顶点根据环绕顺序定义背面; step 2 glEnable(GL_CULL_FACE)开启面剔除。

8 自定义帧缓冲好处以及如何自定义?

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值