位置: 编程技术 - 正文

Qt Quick + OpenGL + Bullet初次测试

编辑:rootadmin
Qt Quick &#; OpenGL &#; Bullet初次测试

推荐整理分享Qt Quick + OpenGL + Bullet初次测试,希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:,内容如对您有帮助,希望把文章链接给更多的朋友!

目前Qt的Quick模块已经表现得非常出色,而且可以预留接口来渲染OpenGL场景。一般来说,已经能够满足大部分编程需要了。这次呢,尝试使用结合一些技术,来做一些有趣儿的事情——将Bullet整合进来,并且进行测试。

蒋彩阳原创文章,首发地址: 有关Bullet的选择,其实也是有一番讲究的。目前Bullet的2.版本,暂时没有更新了,而Bullet 3.x,则是还少有应用。如果我们去看Bullet的新的代码库——github,就会发现,在“Requirementsfor Bullet 2”,作者表示几乎任何编译器都能够编译它的代码,而在“Requirements for Bullet 3”的介绍中,只是说能在高端的显卡中运行,低端显卡或者是移动设备可能和Bullet 3无缘了。所以在这种情况下,我就选择Bullet 2.来制作这个例子。

为了完成这个例子,我参考了前辈们的一些例子,比如说Qt在诺基亚时期,就写了一个很棒的Bullet &#; Qt的例子,叫做BulletDice。它的github地址在这里。这边儿比较简单,容易上手,再加上Bullet有一份Manual,两者结合起来看,方便了许多。花了一周的时间,终于模仿并且制作出来了这样的效果:

一开始立方体在平面的上面位置,随后根据重力,呈自由落体速度,慢慢地往下落。最终落在了地面上。下图表示落下来时候的样子:

Qt Quick + OpenGL + Bullet初次测试

怎么样?很简单吧。这里也是我对Bullet的初步认识。在编写这个例子的过程中,遇到了很多困难,也有很多地方&#;得推敲。所以我在这里先作一个笔记,给以后作参考。

首先为了验证物理引擎可用,我在类中写了一个函数叫debugShow(),每次仿真采样的时候,输出立方体的位置。在验证这样是没有问题的基础上,开始研究怎样让数据与渲染相结合。下面的代码片描述了与Bullet相关的一些知识:

随后,可能要考虑,在这个模型中,只有一个施力物体,也就是“地球”,它对立方体施以重力,让立方体做自由落体运动,运动过程中采样的轨迹通过body中motionState中的worldTransform来表述。如果和渲染引擎相结合的话,我这边的做法是物理引擎最终只修改物体的modelMatrix,模型自己的形态则控制着本原位置,摄像机的参数控制着viewMatrix和projectionMatrix。只有这样,一切看起来概念才清晰。

这里可能有一个比较棘手的问题,有时候,需要对modelMatrix进行手动控制,来改变模型的变换信息,但是呢,modelMatrix又是受物理引擎控制的,所以对于modelMatrix受手动控制和物理引擎控制的切换,是比较难以处理的,下次我再看看随着学习的深入,能不能厘清他们之前的关系。

最后,我也在我的Android平板电脑上测试成功。说明Bullet是完全可以做到结合Qt来跨平台的。

Xcode上创建openGL项目 创建opengl项目步骤1,创建一个Cocoa的项目。2,将项目中的AppDelegate.h,AppDelegate.m,MainMenu.xib文件删除。然后将main.m文件删除,改为main.cpp文件。3,将inclu

opengl入门 基本概念1,OpenGL:是图形硬件的一种软件接口。通俗点讲就是一套API,调用接口而已,用于图像的渲染。与微软的Direct类似,不过它是跨平台的。2,Ope

OpenGL--双缓冲 双缓冲就是先将图片绘制到后台缓冲区,然后再交换到前台缓冲区显示。为什么要这么做?一种解释是我们的渲染一般是多线程处理,如果直接绘制到

标签: Qt Quick + OpenGL + Bullet初次测试

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

上一篇:openGL 获取矩阵中的旋转-平移-缩放(opengl矩形)

下一篇:Xcode上创建openGL项目(xcode怎么新建项目)

  • sql语句中单引号嵌套问题(一定要避免直接嵌套)(sql语句中单引号是什么)

    比如下面例子是存储过程里查询时的语句示例

    红色部分是会报错的,应该写成 @condition= 'ROOMTYPElike ‘ ‘%标准间%' ‘ ', 蓝色部分不是双引号,而是两个单引号

    谈谈sqlserver自定义函数与存储过程的区别 一、自定义函数:1.可以返回表变量2.限制颇多,包括不能使用output参数;不能用临时表;函数内部的操作不能影响到外部环境;不能通过select返回结果

    深入分析SqlServer查询计划 对于SQLServer的优化来说,优化查询可能是很常见的事情。由于数据库的优化,本身也是一个涉及面比较的广的话题,因此本文只谈优化查询时如何看懂SQ

    sql 判断字符串中是否包含数字和字母的方法 判断是否含有字母selectPATINDEX('%[A-Za-z]%',‘ads')=0(如果存在字母,结果1)判断是否含有数字PATINDEX('%[0-9]%',‘sdf" class="img-responsive" alt="sql语句中单引号嵌套问题(一定要避免直接嵌套)(sql语句中单引号是什么)">

    sql语句中单引号嵌套问题(一定要避免直接嵌套)(sql语句中单引号是什么)

  • 找回音频文件右键-属性-摘要 选项卡的操作方法(音频文件恢复)

    找回音频文件右键-属性-摘要 选项卡的操作方法(音频文件恢复)

  • Win10一周年更新设置更精美 新版设置应用界面(windows10周年更新)

    Win10一周年更新设置更精美 新版设置应用界面(windows10周年更新)

  • 好好了解一下Cookie(强烈推荐)(好好了解 英文)

    好好了解一下Cookie(强烈推荐)(好好了解 英文)

  • 批处理bat下载FTP服务器上某个目录下的文件(批处理文件.bat)

    批处理bat下载FTP服务器上某个目录下的文件(批处理文件.bat)

  • 盘亏存货进项税额转出的计算公式
  • 核定税种可以在哪里申报
  • 广告费业务宣传费扣除标准
  • 税务ukey如何清卡
  • 小规模结转成本的会计分录怎么写
  • 太阳能发电开票编码
  • 应缴纳的增值税计算公式
  • 邮票可以抵个税吗
  • 库存现金期末余额
  • 机动车检测公司上班时间
  • 重分类八个对应科目有哪些
  • 租入固定资产改扩建
  • 小规模公司缴税以后公转私
  • 房地产企业对外投资案例
  • 发票作废了可以重新领吗
  • 租金收入个人所得税
  • 应付账款周转次数公式的理解
  • 企业年会的增值税能抵扣吗?
  • 固定资产叉车卖出怎么开票
  • 土地买卖所得税由谁承担
  • 加速折旧法是什么方法
  • 结汇汇兑损益账务处理
  • 小微企业增值税减免账务处理
  • 企业管理可以开什么明细发票
  • 支付教育培训费
  • 研发费用加计扣除最新政策2023
  • 外管证怎么开票
  • 预付账款收到发票的会计分录
  • cpu游戏性能天梯图2023
  • win10系统怎么设置
  • php写接口实现json文件读取
  • 退回多收款项开具发票原发票需要退回吗
  • typecho安装插件
  • 微软正在测试什么意思
  • 电脑中毒如何处理
  • 偿还债券本金和利息
  • 房产开发企业涉及税种
  • 不能错过的只有你下架了吗
  • 购买股票会计分录怎么写
  • 建筑工程房屋租赁费属于什么费用
  • 投资收益会计准则
  • 公司收取保证金违法吗
  • 机器学习中的数学原理——对数似然函数
  • 谈谈社会公德普通话三分钟
  • 存货非正常损失的会计处理
  • 公司食堂的费用分录
  • 深入解读何暮楚
  • 新政府会计制度下,属于资产类科目的是
  • 营业执照增加经营范围要钱吗
  • 衡量税收负担通常用()
  • 个税申报更正申报如何操作
  • 预收账款是怎么算的
  • 坏账准备需要计提增值税吗
  • 房地产企业代收费用
  • 如何收信用卡付款
  • 预付账款的相关认定
  • 今年成立的公司需要申报残疾人保障金吗
  • 住宿费开的增值税专用发票怎么记账
  • 应付票据在资产负债表怎么填列
  • 企业债与公司债的还款有区别
  • mysql macbook安装教程
  • xp系统开机一直在滚动条
  • windows 2000 server sp4 下载
  • 让Windows Server 2008系统安全更上一层楼
  • 苹果系统最新版本
  • fedora怎么用
  • u盘如何安装win7系统
  • linux mount -o remount
  • windows8怎么调整亮度
  • linux远程登录命令ssh
  • win10周年更新版是什么意思
  • win10内置应用大全
  • 耳朵前皮下有个小软包
  • perl-v
  • opengl安装教程
  • 深入浅出nginx实战
  • Java之CyclicBarrier使用
  • 日本快递税率
  • 企业未开立基本存款账户承诺书的相关规定
  • 汕头办理社保卡流程
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设