物理引擎Havok教程(一)
搭建开发环境

网上关于Havok的教程实在不多,并且Havok学习起来还是有一定难度的,所以这里写了一个系列教程,希望可以帮到读者。这是第一期。

一、Havok物理引擎简单介绍
      Havok引擎,全称为Havok游戏动力开发工具包(Havok Game Dynamics SDK),一般称为Havok,是一个用于物理系统方面的游戏引擎,为电子游戏所设计,注重在游戏中对于真实世界的模拟。使用碰撞功能的Havok引擎能够让很多其它真实世界的情况以最大的拟真度反映在游戏中。
 开发商Havok成立于1998年,眼下Havok物理引擎被超过200款游戏使用,很多电影也应用了这家公司的软件技术。
      2007年9月Havok被Intel收购,为了和NVIDIA的PhysX竞争,Intel在去年的(08年)免费开放了Havok的Physics和Animation组件,内容包含Havok SDK库、例子、技术文档以及支持Maya、3ds Max和Avid XSI等3D建模软件的格式转换工具。
      依照Havok的授权文档,即使使用它开发商业游戏也是不须要付费的,这对国内的爱好者应该是一个好消息。
     同PhysX相比,个人认为,Havok不管在稳定性还是功能上,都要略胜一筹。NVIDIA的PhysX在硬件加速上,临时率先,但随着AMD增加到Havok硬件加速的开发,未来Havok的功能肯定会更加的强大。

二、Havok开发环境的搭建
 1.安装SDK
      首先,到Havok的官网下载SDK,http://software.intel.com/sites/havok/,填写自己的姓名和邮箱,注冊后就可以下载。

Content Tools是内容工具,包括一些3D建模软件的导出工具。Behavior Tool是给游戏美工或设计师用的角色编辑工具,具有所见即所得的功能。对程序猿来讲最重要的就是SDK了,我下载的是6.0.0这个版本号。由于Intel仅仅开放了物理和动画两个组件,所下面载的SDK是仅仅包括这两个组件,其它的如布料(Cloth)和破坏(Destruction)还是须要付费才干使用。
 Havok SDK使用的是C++语言,开发环境是Visual Studio,我用的版本号是2005。

Demo文件夹以下是SDK的例子程序和源码,Docs是文档,包含chm和pdf两种格式。Lib是链接库,库分为Debug和release及动态链接和静态链接。Source以下是SDK的包含文件。Tools以下是工具,包含了Visual Debugger这个可视化调试器。

2.设置Visual Studio

这里以我使用的Visual Studio 2005为例。
      头文件包括文件夹的设置。打开Visual Studio 2005,依次选择工具-》选项-》项目与解决方式-》VC++文件夹

选择包括文件,加入新的一行,路径指向Havok SDK安装文件夹的Source文件夹。建议建立一个叫HAVOK_HOME的环境变量,这样能够避免使用绝对路径。
       库文件夹不能在这里设置,而应该为debug和release版本号设置不同的库包括文件夹。由于不论是debug还是release,它们的库名都是同样的。你能够打开Demo/Demos以下的project,看看它是怎样设置为不同版本号设置链接包括文件夹的。

三、第一个Havok程序

这里以SDK自带的一个控制台演示程序为例,使用Visual Debugger来观察Havok的详细效果。首先执行Tools/VisualDebugger文件夹下的Visual Debugger程序,使用它我们能够观察到Havok实际执行的效果,而省去渲染步骤,并且能够把场景记录下来,供以后观看。演示程序在Demo/StandAloneDemos/ConsoleExampleMt文件夹下,这个程序模拟一个高速运动的刚体,撞击墙壁的效果。执行它,然后就能够在VisualDebugger中看到实际的效果了。

好了,第一期教程就是这样。下期会接触到详细的编码问题。假设你有不论什么问题,欢迎和我交流,我的邮箱songnianhu@163.com,博客blog.csdn.net/shangguanwaner,下期再见。

物理引擎Havok教程(一)搭建开发环境的更多相关文章

  1. ExtJS4 MVC开发教程:搭建开发环境

    原文地址:http://www.lihuai.net/qianduan/extjs/864.html 博主系列教程:http://www.lihuai.net/qianduan/extjs 在所有的J ...

  2. Hadoop基础教程之搭建开发环境及编写Hello World

    整个Hadoop是基于Java开发的,所以要开发Hadoop相应的程序就得用JAVA.在linux下开发JAVA还数eclipse方便. 1.下载 进入官网:http://eclipse.org/do ...

  3. 混合式app ionic2.x 手动搭建开发环境教程分享(nodejs,jdk,ant,androidsdk)

    1.ionic简介 为什么选用ionic: 彻底开源且免费 性能优异 基于红的发紫的AngularJs 漂亮的UI 强大的命令行(基于更热门的nodejs) 开发团队非常活跃 ngCordova,将主 ...

  4. qt学习教程1.qt开发环境搭建

    qt学习教程1.qt开发环境搭建 首先下载qt 下载地址:http://download.qt.io/archive/qt/ 此教程使用的版本为5.1.1 下载好后,打开安装包,然后点下一步 选择一个 ...

  5. Android基础新手教程——1.2 开发环境搭建

    Android基础新手教程--1.2 开发环境搭建 标签: Android基础新手教程 如今主流的Android开发环境有: ①Eclipse + ADT + SDK ②Android Studio ...

  6. 从0开发3D引擎(三):搭建开发环境

    本系列使用Reason语言,因此需要搭建它的开发环境. 上一篇博文 从0开发3D引擎(二):准备预备知识 搭建开发环境 建议使用VSCode编辑器来开发Reason,因为它的插件支持得最好. 具体搭建 ...

  7. python Day 1 - 搭建开发环境

    搭建开发环境 首先,确认系统安装的Python版本是2.7.x: $ python --version Python 2.7.5 然后,安装开发Web App需要的第三方库: 前端模板引擎jinja2 ...

  8. 3、Cocos2dx 3.0游戏开发找小三之搭建开发环境

    尊重开发人员的劳动成果.转载的时候请务必注明出处:http://blog.csdn.net/haomengzhu/article/details/27107295 搭建开发环境 使用 Cocos2d- ...

  9. React Native从零到一搭建开发环境

    React Native从零到一搭建开发环境 ReactNative环境搭建 安装Homebrew 安装rvm 安装nvm 安装node 安装react-native-cli 安装watchman i ...

随机推荐

  1. zTree市县实现三个梯级数据库映射

    zTree市县实现三个梯级数据库映射 Province.hbm.xml: <?xml version="1.0" encoding="UTF-8"? &g ...

  2. Qt5该插件机制(2)--QxxxFactory类和QFactoryLoader类别

    <<<<<<<<<<<<<<<<<<<<<<<<< ...

  3. java编程规范之java命名规范

    想要成为一个优秀的程序员,首先要培养良好的编程习惯,为了提高代码的可读性,必须有好的命名规范. 这篇文章是小编结合网上的很多资料整理出来的,若有不当或错误的地方,欢迎大家指正 在文章开始前,为方便阅读 ...

  4. MSXML2;System.ServiceModel.Configuration;对应dll的添加方法

  5. oracle一视图性能问题

    oracle一些性能视图的解释  --关于是否收集 timed_statistics参数:用于决定是否收集相关的时间参数,true为收集.如果该参数设为false,则等待事件相关视图也就无法收集到数据 ...

  6. hdu 4912 Paths on the tree(lca+馋)

    意甲冠军:它使树m路径,当被问及选择尽可能多的路径,而这些路径不相交. 思考:贪心,比較忧伤.首先求一下每对路径的lca.依照lca的层数排序.在深一层的优先级高.那么就能够贪心了,每次选择层数最深的 ...

  7. JAVA基础实例(三)--排序

    冒泡排序 是一种简单的排序算法.它反复地走訪过要排序的数列,一次比較两个元素.假设他们的顺序错误就把他们交换过来.走訪数列的工作是反复地进行直到没有再须要交换,也就是说该数列已经排序完毕. 这个算法的 ...

  8. Sphinx/Coreseek 4.1 跑 buildconf.sh 一个错误,无法生成configure档

    安装前 coorseek 什么时候,遇到一些错误.该官方网站无法看到的解决方案,终于 google 在大牛的博客评论区找到一个解决方案.突然跑到他的膝盖介绍~~ 这里整理是为了方便一些人发现,墙毕竟让 ...

  9. 对LevelDB的“升级版”存储引擎RocksDB的调研成果

    Google的leveldb是个非常优秀的存储引擎.但还是有一些不尽人意的地方,比方leveldb不支持多线程合并.对key范围查找的支持还非常easy,未做优化措施,等等.而Facebook的Roc ...

  10. MapXtreme DJ最短路径算法 全路径搜索算法

    包括最短路径,全路径搜索算法演示程序请在http://pan.baidu.com/s/1jG9gKMM#dir/path=%2F%E4%BA%A7%E5%93%81%2FDemos 找 ShortWa ...