经过前面针对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. 【Unity】11.3 基本碰撞体(箱体、球形、胶囊、网格)

    分类:Unity.C#.VS2015 创建日期:2016-05-02 一.简介 碰撞组件(Collider) 是另一种必须随刚体 (Rigidbody) 添加的组件,以便允许它和其他组件发生碰撞.或者 ...

  2. Market Guide for AIOps Platforms

    AIOps platforms enhance IT operations through greater insights by combining big data, machine learni ...

  3. tensorflow2:tf.app.run()

    在很多TensorFlow公布的Demo中,都有这样的代码存在,如下,这是干什么的呢? 我们来看一下源代码: # tensorflow/tensorflow/python/platform/defau ...

  4. 对于iOS开发人工智能意味着什么

    对于iOS开发人工智能意味着什么? 前言 近几年来人工智能的话题那是炙手可热.在国内很多大佬言必谈机器学习和大数据:在美国刚毕业的人工智能 PHD 也是众人追捧,工资直逼 NFL 四分卫.人工智能甚至 ...

  5. LearnOpenGL 你好,三角形[转]--附源码

    原地址:你好,三角形 你好,三角形 原文 Hello Triangle 作者 JoeyDeVries 翻译 Django 校对 Geequlim 译注 在学习此节之前,建议将这三个单词先记下来: 顶点 ...

  6. maven profile 多环境

    <profiles> <profile> <!-- 本地开发环境 --> <id>dev</id> <properties> & ...

  7. 基于css3 transform实现散乱的照片排列

    分享一款基于css3 transform实现散乱的照片排列.这是一款简单零散的css3相册排列特效下载.效果图如下: 在线预览   源码下载 实现的代码. html代码: <div class= ...

  8. Sphinx/Coreseek 4.1 执行 buildconf.sh 报错,无法生成configure文件

    参考的网址: http://blog.csdn.net/jcjc918/article/details/39032689 错误现象: 执行 buildconf.sh 报错,无法生成configure文 ...

  9. MYSQL自动备份策略的选择与实践

    目前流行几种备份方式: 1.逻辑备份:使用mysql自带的mysqldump工具进行备份.备份成sql文件形式.优点:最大好处是能够与正在运行的mysql自动协同工作,在运行期间可以确保备份是当时的点 ...

  10. Android keytool 生成keystore与给APK签名

    http://www.tttabc.com/android/keytool-keystore-jarsigner-apk.htm