物理引擎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. CF 452A(Eevee-直接试)

    A. Eevee time limit per test 1 second memory limit per test 256 megabytes input standard input outpu ...

  2. 使用DbUtils实现CRUD

    commons-dbutils 这是 Apache 提供了一个开源组织 JDBC工具库,它是JDBC简包,学习成本低,和使用dbutils可以大大简化jdbc的工作量,同一时候也不会影响程序的性能.因 ...

  3. 【Linux探索之旅】第二部分第二课:命令行,世界尽在掌握

    内容简介 1.第二部分第二课:命令行,世界尽在掌握 2.第二部分第三课预告:文件和目录,组织不会亏待你 命令行,世界尽在掌握 今天的标题是不是有点霸气侧漏呢? 读者:“小编,你为什么每次都要起这么非主 ...

  4. Cookie rejected: Illegal path attribute "/nexus". Path of origin: "/content/" 解

    问题叙述性说明 通过运行"mvn clean deploy" 命令 将 Maven 项目公布 Nexus 当PW.举例控制台输出以下警告消息: [INFO] Downloaded: ...

  5. phonegap+emberjs+python手机店发展,html5实现本地车类别~

    商城开发项目,现在需要做出APP,无奈出场前android但不是很精通.最后选择phonegap实现app. 由于之前办理购物车分为登陆和登陆后两种情况,登录前必须充分利用本地存储.而基于phoneg ...

  6. 最小二乘法拟合非线性函数及其Matlab/Excel 实现(转)

    1.最小二乘原理 Matlab直接实现最小二乘法的示例: close x = 1:1:100; a = -1.5; b = -10; y = a*log(x)+b; yrand = y + 0.5*r ...

  7. 参加persist.sys物业写权限的方法

    1.于AndroidManifest.xml manifest添加属性android:sharedUserId="android.uid.system" 2.假设AndroidMa ...

  8. ASP.NET跨平台

    ASP.NET跨平台最佳实践 前言 八年的坚持敌不过领导的固执,最终还是不得不阔别已经成为我第二语言的C#,转战Java阵营.有过短暂的失落和迷茫,但技术转型真的没有想象中那么难.回头审视,其实单从语 ...

  9. 第一篇——第一文 SQL Server 备份基础

    原文:第一篇--第一文 SQL Server 备份基础 当看这篇文章之前,请先给你的所有重要的库做一次完整数据库备份.下面正式开始备份还原的旅程. 原文出处: http://blog.csdn.net ...

  10. sdut 上机练习8面向对象编程(对象的数组)

    上机练习8面向对象编程(对象的数组) Time Limit: 1000MS Memory limit: 65536K 题目描写叙述 利用类对象数组完毕N个学生数据(学号是字符串类型.成绩是整型)的输入 ...