位置: 编程技术 - 正文

解决三维建模软件中摄像机旋转的问题(你所知道的三维建模软件有哪些?)

编辑:rootadmin

推荐整理分享解决三维建模软件中摄像机旋转的问题(你所知道的三维建模软件有哪些?),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:3维建模软件介绍,解决三维建模软件的方法,三维软件建模,三维建模常用软件,解决三维建模软件的方法,解决三维建模软件问题,三维软件建模,三维软件建模,内容如对您有帮助,希望把文章链接给更多的朋友!

解决三维建模软件中摄像机旋转的问题

我们看到很多3D建模软件都可以很方便地对摄像机进行旋转,比如说Blender,通过按下鼠标中键,就可以很方便地对摄像机进行旋转。在学习了几年OpenGL之后,我也想要模仿这一点做出类&#;的功能。但是当研究的时候,遇到了一些困难。

蒋彩阳原创文章,首发地址: 此前了解到,这些建模软件对于三维建模中的摄像机的定义是:拥有位置(position)、观察点(look at)以及向上的向量(up),此外还有近裁面(z near)、远裁面(z far)、宽高比(aspect ratio)以及视野(field of view)。其中前三者构成了视图矩阵(view matrix),后四者构成了投影矩阵(projection matrix)。这里我说一下如何当摄像机绕着观察点旋转时视图矩阵是如何改变的。

1、 当鼠标按下时,我们必须记录当前摄像机的位置以及向上的向量,因为我们接下来旋转时要改变的就是这两个向量;

2、 在旋转时,我们需要计算position– lookat向量与Y轴形成的平面的法向量,这里我们称之为side向量,因为我们实际中旋转的一部分是在这个平面内进行的。

解决三维建模软件中摄像机旋转的问题(你所知道的三维建模软件有哪些?)

3、 计算旋转矩阵,首先如果鼠标往左右移动了,旋转矩阵沿着y轴正方向旋转-x角度;如果鼠标往上下移动了,旋转矩阵沿着side向量旋转-y角度。注意顺序很重要,如果两者颠倒顺序了,那么旋转出来的效果就不是我所见的三维建模软件那样的效果了;

4、 紧接着计算对position变换的矩阵:首先平移lookat向量,让lookat位于原点;接着乘以第三步计算的旋转矩阵,在后来执行反向操作,将lookat变回原来的位置。

5、 将第四步计算出来的变换矩阵左乘我们暂存的position,得到新的position,将第三步计算出来的旋转矩阵左乘我们暂存的up向量,得到新的up。这里说明的是,当我们将position从side和y轴形成的面旋转到另外一个新的position的时候,如果up向量不发生改变,模型的显示就会出现前后颠倒的现象。所以改变up向量的朝向也是非常有必要的。

6、 最后根据新计算出来的position和up,来计算视图矩阵。

下面的一段代码展示了这一个过程如何操作的:

OpenGL学习笔记:(二)简单绘制正方形(基本框架) #includeGL/glut.hspanstyle=white-space:pre/span//头文件,包含了gl.hglu.hconstintWINDOW_WIDTH=;constintWINDOW_HEIGHT=;voidreshape();voiddisplay();voidinit();voidinit(){glClearColor(0.0,0.0

关于OpenGL导入.obj文件的一点涉入 先说一下我的例子(下载):将需要导入的obj文件放在assets文件夹下面,在代码中设置相应的文件名称(这个都在代码中有标注,备注写的很明确),

OpenGL学习笔记:(三)异或操作-橡皮条程序 一、异或操作1.复制模式(GL_COPY)1.1.复制模式为Opengl默认的逻辑运算模式2.1.画线的时候,如果采用复制模式,则是用当前状态机中的颜色像素替换窗口

标签: 你所知道的三维建模软件有哪些?

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

上一篇:Opengl学习笔记:(一).Ply文件文件格式和文件读取(opengl教程48讲)

下一篇:OpenGL学习笔记:(二)简单绘制正方形(基本框架)(opengl入门视频教程)

  • 增值税专用发票怎么开
  • 出口退还增值税消费税的,是否退还教育费附加
  • 工会经费计税依据
  • 住宿费收入缴纳标准
  • 企业付房租怎么做会计分录
  • 弃置费用的财务费用可以税前扣除吗
  • 购买方已抵扣怎么作废
  • 劳务公司交企业所得税吗
  • 进项税额转出有什么影响
  • 小规模纳税人租金发票的税率是多少
  • 普通发票,供货怎么开
  • 核算会计科目职工薪酬的范围
  • 房企所得税纳税义务发生时间
  • 固定资产的净值等于
  • 企业所得税季度预缴怎么计算
  • 营改增后建筑企业的账务处理
  • 软件开发公司一般做什么
  • 金税三期如何报个税
  • 工程公司安装中央空调能按混合销售计算增值税么?
  • 已抵扣发票丢失如何处理
  • 小规模季度30万免税怎么做账
  • 税务贷的用途
  • 外购货物评估减值要转出进项税额吗?
  • 进料进口
  • 会计科目未付利润属于哪个科目
  • 华为手机屏幕变成黑白怎么调回来
  • 新版edge浏览器兼容性视图怎么设置
  • 如何正确使用好薪酬调查结果
  • 水土保持补偿费收费依据
  • 三栏式明细账目录填写范本
  • 关于工程施工的劳动法规
  • 公司账款无法收回扣款合法吗
  • php string函数
  • iphone11 iphone10区别
  • 领用自产库存商品
  • 基于php实现简单函数
  • 增值税发票作废后还能查到吗
  • 大熊雨林中一只小熊
  • 一借多贷的会计分录格式
  • php网站能实现什么效果
  • Yii2超好用的日期和时间组件(值得收藏)
  • 西安微信公众号开发
  • 资产负债表利润表的勾稽关系
  • 总公司下的分公司如何做账
  • 申请专利费用计入哪个科目
  • jwt 鉴权
  • 厂房没租出去要交税吗
  • 所有者权益变动表模板excel
  • 营业收入和营业外收入的区别
  • 股东投资款超过实收资本怎么处理
  • 高新企业奖励怎么领取
  • 新会计准则哪一年颁布
  • 年底计提坏账收回一部分怎么处理
  • 应付职工薪酬科目余额表怎么看
  • 定期定额户不能用专票
  • 新成立的小规模纳税人什么时候报税
  • 跨年发票如何做会计分录
  • 行业协会是怎么赚钱的
  • 维修费成本怎么结转
  • 发票红字怎么弄
  • 流动比率好说明什么
  • 税务局代开的增值税专票可以红冲吗?
  • 结转完工入库产品成本的会计分录
  • 资产季末值
  • 混合销售行为的概念
  • 会计凭证的主要种类
  • win10系统提醒
  • linux系统配置命令
  • win7使用mbr还是guid
  • ims文件是什么意思
  • nodejs用法
  • java的匿名内部类
  • Node.js中的全局变量有哪些
  • Unity3D游戏开发pdf
  • python dict 转 list
  • Android性能优化的方面12个
  • 湖南省电子国税
  • 税务查询热线
  • 离线开票金额为0
  • 银行开业送什么花
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设