经过前面针对OpenGL的一些特性的学习,越发觉得要学的更多,相关如LOD,各种阴影实现,场景管理如BSP与Octree等以及还没听过的各种的实现.有感自学的进度太慢,并且在做一些小DEMO时,心中不由的想到各种想要的大场景的实现.,故想到直接从3D引擎根据代码学习,然后就开始在各大网站上翻看各种开源引擎,主要是根据如下几条来选择1.开发语言最好是C#,毕竟C#的组织性强,阅读有条理,并且基于面向对象的语言也更适合团队开发.2要有上面如模型,地面的LOD实现,以及相应的场景管理功能,各种阴影的实现.3最好包装的OpenGL的实现,如果OpenGL与D3D都包含就更完美了.4有点名气,可能觉得有点俗,不过主要是因为越有名气,对应的资料会越多,能更好的吸取前辈们的经验.

基于这上面几占,在这个游戏引擎列表里,可以看到可供选择的比较多.其实最开始我选择的是卡马克大神的雷神3引擎以及Ogre的net版MOgre,不过前者主要是基于C语言开发,效率肯定是牛B哄哄的,用来快速学习不好掌握.而MOgre看简介发现,MOGRE (Managed OGRE) is an advanced .NET wrapper for OGRE.这就是说,是在C++上进行的包装,实现还是在对应的Ogre上面(就如OpenTK与OpenGL).然后在那引擎列表里又找了一些并下载试用,终于发现一个名声不显的引擎Axiom,大家可能要说,这不是不满足第4点吗,且看对Axiom的介绍.

The core of Axiom is a port of the very popular OGRE graphics engine, which was chosen based on its clean object-oriented design, powerful features, and flexibilty. The original port was carried out by Leedgitar, the project founder.

看到了没,Axiom是Ogre的net实现版,不同于MOgre,他是把Ogre里的核心代码都用C#来实现的,其中针对OpenGL的包装用的是开源项目OpenTK(后调试好像还是用的Tao框架),也就是我以前Demo用的,并且包含了针对D3D的渲染,用的好像是SharpDX或是SlimDX,MS自己的Managed DirectX已经被MS放弃更新了.前面说了名气其实就是为了学习资源,那Axiom的学习资源多不,不多...果然和我想的一样,名气越多,资源越多.但是架不住有个好爹,Ogre的资料多,资料吻合度可以这样说,在看Axiom的中心源代码时,或是生成,组织,利用如场景,资源等代码,二者的代码几乎一样.这么说,你看用MOgre讲解的Demo,里面的代码几乎就和Axiom的Demo过程一样.

Axiom是LGPL授权,意思可以有条件的商用,并且支持Mono开发.可以用于Windows,Linux,Android,iPhone,Windows Phone,XNA,几乎对主流平台都提供支持.支持各种纹理以及常用的图像格式,支持Cg与HLSL着色器语言,支持顶点/片断着色器.动画支持关键桢动画,骨骼动画,场景管理支持如BSP,Octrees.支持Ogre .mesh 文件格式并可以预加载LOD层次,相关的建模,蒙皮操作.等一系列高级特效.还有非常强大的插件系统.详细介绍请看官网Axiom.

请注意,Axiom的源码存放在 http://svn.axiom3d.net/svnroot/axiomengine/trunk,别的一些开源项目网站多存放的是Axiom的编译后的DLL.

     

3D引擎Axiom的选择与学习.的更多相关文章

  1. 从0开发3D引擎(七):学习Reason语言

    目录 上一篇博文 介绍Reason Reason的优势 如何学习Reason? 介绍Reason的部分知识点 大家好,本文介绍Reason语言以及学习Reason的方法. 上一篇博文 从0开发3D引擎 ...

  2. 从0开发3D引擎(六):函数式反应式编程及其在引擎中的应用

    目录 上一篇博文 介绍函数式反应式编程 函数式反应式编程学习资料 函数式反应式编程的优点与缺点 优点 缺点 异步处理的其它方法 为什么使用Most库 引擎中相关的函数式反应式编程知识点 参考资料 大家 ...

  3. 从0开发3D引擎:目录

    介绍 大家好,本系列带你踏上Web 3D编程之旅- 本系列是实战类型,从0开始带领读者写出"良好架构.良好扩展性.优秀的性能.最小功能集合(MVP)" 的3D引擎. 本系列的素材来 ...

  4. 从0开发3D引擎(补充):介绍领域驱动设计

    我们使用领域驱动设计(英文缩写为DDD)的方法来设计引擎,在引擎开发的过程中,领域模型会不断地演化. 本文介绍本系列使用的领域驱动设计思想的相关概念和知识点,给出了相关的资料. 上一篇博文 从0开发3 ...

  5. Wonder第一期3D引擎和编辑器线下培训班报名开始啦(免费学习)

    Wonder第一次举办 针对3D底层技术的 线下培训班,免费学习,请大家多多支持-感谢- 培训地点 成都 开课时间 报名满5人开课. 报名方式 加QQ群:732861508 备注请写:报名培训 老师介 ...

  6. 关于如何学好游戏3D引擎编程的一些经验[转]

    此篇文章献给那些为了游戏编程不怕困难的热血青年,它的神秘要我永远不间断的去挑战自我,超越自我,这样才能攀登到游戏技术的最高峰 ——阿哲VS自己 QQ79134054多希望大家一起交流与沟通 这篇文章是 ...

  7. 万圣节福利:红孩儿3D引擎开发课程《3ds max导出插件初步》

    ds max文件夹,插件文件夹以及3ds max的可执行程序文件夹: 位的,这里要改成x64,否则启动程序后3ds max会提示"不是有效的win32程序"之类的对话框. 然后要将 ...

  8. 如何学好游戏3D引擎编程

    注:本文是网上看到的一篇文章,感觉写的很好,因此收藏了下来 <如何学好游戏3D引擎编程>此篇文章献给那些为了游戏编程不怕困难的热血青年,它的神秘要我永远不间断的去挑战自我,超越自我,这样才 ...

  9. (转)关于如何学好游戏3D引擎编程的一些经验

    此篇文章献给那些为了游戏编程不怕困难的热血青年,它的神秘要我永远不间断的去挑战自我,超越自我,这样才能攀登到游戏技术的最高峰 ——阿哲VS自己 QQ79134054多希望大家一起交流与沟通 这篇文章是 ...

随机推荐

  1. Fluent UDF【1】:简介

    前面基本完成了动网格专题的发布,不过还是有一些内容并没有更新进去,比如说in-cylinder.接触检测.2.5D网格重构等.不过这些都是小技巧,写起来挺麻烦,以后有时间再通过案例视频的方式讲解好了. ...

  2. 每日英语:Welcome to the Global Middle-Class Surge

    The mass uprisings this summer in Egypt, Turkey and Brazil are powerful reminders that the middle cl ...

  3. 每日英语:Got a Case of the Mondays? Blame the Sunday Blues

    Welcome to Monday morning at the office. Did you have trouble sleeping last night? Was your stomach ...

  4. 使用JPush(极光推送)实现远程通知

    使用JPush(极光推送)实现远程通知 远程推送是APP 必备的功能, 现在第三方的 SDK 已经做的非常完备了, 在 iOS10.0出来之后, 极光推送也及时更新了他的 SDK, 今天小试了一下效果 ...

  5. 一、图解Java中String不可变性

    这里有一堆例子来说明Java的String的不可变性. 1.声明一个String String s = "abcd"; s 变量保存string对象的引用,下面的箭头解释成保存了哪 ...

  6. maven 使用之自动编译热部署设置

    参见创建webapp项目 eclipse Maven 使用记录 ------ 建立 webapp项目 在maven中为实现热部署设置,部署至webapp,即webroot 设置classes输出目的地 ...

  7. SFTP文件上传与下载(window 上传文件到linux服务器)

    一.文件上传 说明1:所谓上传window上的文件上传到linux上 说明2:上传的文件会自动放到当前的用户的家目录 1:打开SFTP的窗口 Alt+p 输入上传命令: 语法: put  path/f ...

  8. combbox选中新添加的数据

    用到这样的一个功能:在CombBox中添加一项,并激活此项. string uvaName = newUVA.uvaName; this.comboBox_allUVA.Items.Add(uvaNa ...

  9. 1. K近邻算法(KNN)

    1. K近邻算法(KNN) 2. KNN和KdTree算法实现 1. 前言 K近邻法(k-nearest neighbors,KNN)是一种很基本的机器学习方法了,在我们平常的生活中也会不自主的应用, ...

  10. [转]handsontable常规配置的中文API

    原文地址:http://blog.csdn.net/mafan121/article/details/46050049 常规配置: 1.固定行列位置 fixedRowsTop:行数 //固定顶部多少行 ...