物理引擎Havok教程

分享一下我老师大神的人工智能教程!零基础,通俗易懂!http://blog.csdn.net/jiangjunshow也欢迎大家转载本篇文章。分享知识,造福人民,实现我们中华民族伟大复兴!                物理引擎Havok教程
摘要由CSDN通过智能技术生成

分享一下我老师大神的人工智能教程!零基础,通俗易懂!http://blog.csdn.net/jiangjunshow

也欢迎大家转载本篇文章。分享知识,造福人民,实现我们中华民族伟大复兴!

               

物理引擎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/,填写自己的姓名和邮箱,注册后即可下载。
     

      下载Havok SDK

 

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


      Havok SDK目录

      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设置包含目录

 

 

       选择包含文件,添加新的一行,路径指向Havok SDK安装目录的Source目录。建议建立一个叫HAVOK_HOME的环境变量,这样可以避免使用绝对路径。
       库目录不能在这里设置,而应该为debug和release版本设置不同的库包含目录。因为不论是debug还是release,它们的库名都是相同的。你可以打开Demo/Demos下面的工程,看看它是如何设置为不同版本设置链接包含目录的。

 

       Havok设置库目录

三、第一个Havok程序

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

       Havok Visual Debugger

 好了,第一期教程就是这样。下期会接触到具体的编码问题。如果你有任何问题,欢迎和我交流,我的邮箱songnianhu@163.com,博客blog.csdn.net/shangguanwaner,下期再见。


物理引擎Havok教程(二)
Havok基础库简介

      Havok的SDK可以说比较复杂,并不是适合用来学习。拿它用来演示效果的Demo程序的框架来说,它的实现实在是非常的神秘,初学者一开始就接触海量的代码,估计会很大的挫伤积极性。所以为了降低大家学习的难度,我在做教程的时候会主要使用实际的代码来介绍SDK的各种特性,代码编写时我会尽量的简洁和通俗一点。示例代码我会整理好,提供链接,供大家下载。觉得好的话,大家要支持啊!

      Havok SDK可以分为三大部分,Havok基础库、Havok物理组件、Havok动画组件。基础库,为Havok的其他组件提供了通用功能的支持,Havok物理组件负责实时的刚体模拟,Havok动画组件负责处理骨骼和角色动画,与物理组件配合,可以实现强大的角色动画控制功能。
      关于Havok SDK的代码习惯,这里要说明一下,Havok SDK所有的类名基本上都以hk*开头,然后后面跟一个字符表示它所属的组件,例如,hkpWorld,说明它属于物理组件(Havok Physics),hkaBone,说明它属于动画组件(Havok Animation),hk后不跟一个表示组件的字符,则表明它是Havok基础库的一部份。

 

Havok基础库
      Havok基础库定义了一些基本的数据类型和容器类,它还包括与平台无关的接口,用于访问操作系统的资源,比如内存管理、时钟等。基础库中的许多类都可以修改或者替换,这样通过提供的源代码,你可以灵活地扩展基础库的功能。不过有些部分,因为编译进了Havok库,所以不能被替换,包括那些有内联函数的容器类,还有config目录下面的构造配置选项(它保存了在编译Havok库时的配置,对它进行任何更改,都需要重新构建整个Havok库)。
      使用基础库,只需要简单的包含hkBase.h即可。hkBase.h内,还定义了一些最基本的数据类型,比如浮点型(hkReal),有符号和无符号整形等等。

 

1. Havok基本系统
1.1 Havok的初始化
     

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值