位置: 编程技术 - 正文

OpenGL cube map方式实现的环境贴图●如何设置相机(opengl clamp)

编辑:rootadmin

推荐整理分享OpenGL cube map方式实现的环境贴图●如何设置相机(opengl clamp),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:opengl bloom,opengl cullface,opengl clamp,opengl batch,opengl cullface,opengl sample,opengl context for format,opengl sampler,内容如对您有帮助,希望把文章链接给更多的朋友!

对cube map有一些了解的朋友都知道,如果要在物体表面实现镜面反射的效果,需要在物体的中心设置一个相机,沿&#;X,-X,&#;Y,-Y,&#;Z,-Z六个方向分别取景,渲染到cube map的六个子texture中。

设置相机的时候,一般都不会弄错相机的朝向,但是,估计很多人搞不清楚相机的UP方向。

网络上的资料很少论及这个问题,因此,决定自己做一个简单的小实验,彻底搞清楚这个问题。为此,准备了下面的6张图片,分别充当cube map的六个子texture。

使用cube map方式将它们渲染到一个正方体表面,观察它们的方向,使用的vertex shader代码如下:

fragment shader代码如下 我们要观察正方体的六个面,但是每次只能看到它的三个面。

为了观察&#;X,&#;Y,&#;Z面,我们需要剔除物体的背面,只渲染正面:

渲染的结果如下:

为了观察-X,-Y,-Z面,我们需要剔除物体的正面,只渲染背面:

渲染结果如下:OpenGL cube map方式实现的环境贴图●如何设置相机(opengl clamp)

结论如下,(使用OpenGL的cube map)生成环境贴图的时候:

①当相机朝向&#;X,-X,&#;Z,-Z方向的时候,其UP方向都是&#;Y方向;

②当相机朝向&#;Y方向的时候,其UP方向是-Z方向

③当相机朝向-Y方向的时候,其UP方向是&#;Z方向

其实&#;得注意的只是顶部和底部的&#;Y和-Y两个方向。有一个比较傻瓜的做法是:渲染&#;Z方向之后,就让相机后仰°,就可以渲染&#;Y方向了;渲染&#;Y方向之后,就让相机前倾°,就可以渲染-Y方向了。

以下图片可以帮助大家更好地理解cube map各个子texture之间的关系:

最后,提个醒,使用glTexImage2D()或glTexStorage2D()为GL_TEXTURE_CUBE_MAP_POSITIVE_X、GL_TEXTURE_CUBE_MAP_NEGATIVE_X、GL_TEXTURE_CUBE_MAP_POSITIVE_Y...分配空间的时候,width和height必须相等,也就是说图片的长和宽必须相等,不然就会返回错误。因为这个问题,笔者耽搁了两天,差点唾弃自己的intel核显

CodeBlocks下的freeglut环境配置(一)(附图文) 记得我以前调配环境的时候,查阅各种博客,各种英文官方文档,未能得其要义,真可谓目断长途也,一望一回远,而今蓦然回首,才知道是如此的简

在android使用OPENGL总结 Android为OpenGLES支持,提供GLSurfaceView组件,这个组件用于显示3D图形。GLSurfaceView本身并不提供绘制3D图形的功能,而是由GLSurfaceView.Renderer来完成SurfaceView

opengl示例代码在vs上编译不过 官方解释,需要在includeglut.h前#ifndefGLUT_DISABLE_ATEXIT_HACK#defineGLUT_DISABLE_ATEXIT_HACK#endif

标签: opengl clamp

本文链接地址:https://www.jiuchutong.com/biancheng/369662.html 转载请保留说明!

上一篇:我的第二个opengl程序(我的第二个姐姐用英语怎么说)

下一篇:CodeBlocks下的freeglut环境配置(一)(附图文)(codeblocks视频教程)

  • 小规模纳税人代收水电费税率
  • 税务清算都交什么费用
  • 小规模开票超过五百万元,会自动升为一般纳税人吗
  • 小规模纳税人征税率为多少
  • 应交税费账目处理
  • 记账凭证核算形式是会计核算中最基本的核算形式
  • 咨询服务业涉及税费
  • 以前未入账固定资产补入账涉及的房产税
  • 培训产生的住宿费算培训费吗
  • 化肥发票怎么开
  • 分公司是独立核算还是非独立核算
  • 民间非营利组织算企业吗
  • 政府扶持企业资金要交税吗
  • 购买房产怎么确认收入
  • 事业单位取得了应税收入如何纳税?
  • 公司换法人公司账户怎么办
  • 个税税费返还
  • 年底给职工发啥实物
  • 税金及附加与期间费用区别
  • 买二手车年限久的会怎样
  • 显示发票离线,应当如何处理
  • 工会经费可以不提吗
  • 建筑企业管理部门
  • 银行承兑汇票加工费合同
  • 营改增后房屋出租税率
  • 简易征收货物的运费
  • 买办公用品花了100元如何做会计分录
  • 电脑休眠和睡眠什么差别
  • 生产车间折旧为0的原因
  • 会计中如何区分借方和贷方
  • 手机cpu性能排行榜2023最新天梯图
  • windows10和win10
  • php ftp上传文件
  • 股息红利要交税吗
  • AriaNg Native 1.2.4 Aria2图形界面下载工具 中文免费版 32/64位
  • 差额征收是啥意思
  • 重楼的功效与作用价格
  • PHP:imagestringup()的用法_GD库图像处理函数
  • 存货跌价准备是什么意思
  • PHP:iconv_mime_decode()的用法_iconv函数
  • 解决安装后软件icon一圈白边问题
  • 废品损失的核算一定要设废品损失账户吗
  • 小规模报税系统登录
  • css详解
  • php使用for循环实现乘法口诀表
  • php常用的打印函数
  • 写一个简单的php程序代码
  • 跟踪数据包命令
  • 计提增值税依据
  • js reverse
  • 不抵扣勾选的发票在哪里查看
  • 典当业销售的死当物品是什么意思
  • 公司向外借款给个人怎么做账
  • 报销管理规定
  • 小企业会计准则会计科目表
  • 存货期末成本的计量
  • 资产负债表中的货币资金怎么算
  • mysql批量执行sql文件工具
  • mysql修改默认编码
  • hyper v虚拟机
  • yAssistSe.exe是什么进程
  • winxp内存不足怎么办
  • 电脑英伟达控制面板在哪
  • win10改服务器
  • PadExe.exe - PadExe是什么进程 有什么用
  • Win10系统安装步骤
  • centos端口绑定
  • javascript字面量
  • unity游戏开发的技术路线有哪些
  • android拍照
  • js如何创建类
  • jq cookie
  • webpack vue-loader
  • node中使用什么引入模块
  • Python Requests安装与简单运用
  • jquery中获取元素的三种方法
  • 中国税务徽标
  • 怎样纳税申报和缴纳
  • 车辆购置税查询不到
  • 美国有汽车吗
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设