基于Ogre引擎的3D WorkSpace

Ogre 使用非常广泛,国内外都有不少使用者,包括国内的天龙八部。

 

Ogre并不是游戏引擎,而是一个通用的3D引擎,功能非常强大。然而,使用Ogre开发的应用,基本上是游戏相关。如果要开发一款类似3d max类型的3D work space, 例如机械绘图,船舶制造等等就会比较困难。因为一大堆的问题需要自己解决,比如如何绘制3d max里移动物体的小坐标轴?如何管理一大堆的几何体?如何平移,旋转相机?这些都和游戏类程序不一样,看似简单,却比较麻烦,但ogre有没有相关资料可查,因为大家都在做游戏开发:).

PS: 为什么需要开发这样的应用了?不是有3d max, autocad了么? 这些工具功能完善,但始终是一个通用平台。我们可以使用它们来制作3D模型,却不能满足很多特定工程的需要。

 

通过几个月的开发,我使用Ogre + c++ + wxwidget开发了一款具有3d max基本3D功能的程序,可以从Ogre的mesh文件,autocad的dxf文件以及自定义文件加载和保存模型。程序被划分为了几个层,和几个块,所以虽然是使用的wxwidget开发,但是很容易使用其他GUI替换。并且使用了插件技术,需要添加新的功能时,只需要注册新的功能,使代码被最大程度低耦合。如果需要源代码,可以联系我的msn: derickyou@hotmail.com 或者qq: 394884652.

 

 

程序截图:

1: 图形渲染 ( 插件功能已被关闭)

 

 

 

2. 高亮显示

对于工程应用来说,模型和游戏大不一样,有大量空间上的嵌套,几何体数量巨大。但鼠标在几何体上hovering时,物体的高亮就需要精确的鼠标拾取,而不是常用的使用立方体近似。

 

 

 

3. 旋转物体

相对旋转相机来说,旋转物体比较简单,但是旋转轴和平移轴画起来也不是一件简单的事,特别是这些轴是大小不变的,而且是绘制于最顶层。

 

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值