自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

NVIDIA_PhysXAPEX_Dev的专栏

博客中会介绍NVIDIA PhysX和APEX SDK的特性,以及一些使用心得和注意事项。

  • 博客(20)
  • 收藏
  • 关注

原创 PhysX 3.2中的刚体模拟: TolerancesScale

在创建PhysX 3.2的PhysX SDK对象和PxScene对象的时候,我们会发现,跟PhysX 2.8时候相比,有一个多出来的参数特别醒目:PX_INLINE physx::PxPhysics* PxCreatePhysics( physx::PxU32 version, physx::PxFoundation& foundation, const physx::PxToleran

2013-06-11 22:42:31 2275 3

原创 PhysX 3.2中的刚体模拟: contactOffset和restOffset

在PhysX3.2中,刚体模拟相对于2.8.x时代,多了两个概念:contactOffset和restOffset。这两个变量加入的初衷是为了让SDK能够更好的控制相互靠的很近的物体,尽快将他们稳定下来。我们来看看文档对这两个变量的描述: /** \brief Sets the contact offset. Shapes whose distance is less than the

2013-06-04 19:13:11 3649 2

翻译 NVIDIA 为微软 Xbox One 游戏机发布 PhysX 支持

2013 年 5月 22日—美国加利福尼亚州圣克拉拉 —NVIDIA®今天宣布,其广受欢迎的 NVIDIA®PhysX®和 NVIDIA® APEX®软件开发包 (SDK)现已支持微软 Xbox One游戏机。PhysX 与 APEX组合在一起,可在各种平台上为刚性体、衣服、流体和粒子系统的碰撞检测与模拟提供解决方案,这些平台包括台式 PC、游戏机以及移动和手持设备。NVIDIA

2013-05-24 10:22:52 1031

原创 PhysX 3.2中的场景查询(3)-使用

前面的两篇中,我们介绍了 PhysX 3.2中场景查询的一些基本概念,以及查询中如何设置过滤。有了前两节做的准备,到这一节中,我们就具体看看各种场景查询该如何使用。 首先看单次执行的查询。之前我们提到过,单次执行的查询,有查询有无的*Any方式,还有查询最近的*Single方式,和查询所有的*Multiple方式。所有的这些查询方式,从根本上讲,可以抽象为从一个位置,投射一个或者一组形

2013-05-04 21:04:01 1958

原创 PhysX 3.2中的场景查询(1)-基础

PhysX SDK一直都为游戏开发提供高效可靠的场景查询(Scene Query)功能,到了3.2中,也是如此。这一个系列中,就给大家介绍PhysX 3.2中场景查询功能的使用。这一篇中,我们重点介绍这一功能的一些基本概念和基础用法。 首先,PhysX 3.2中,场景查询的种类支持三种,分别是Raycast,Sweep和Overlap检测。其中:Raycast检测是从一点,投射一根

2013-05-03 15:55:14 2196

原创 PhysX 3.2中的场景查询(2)-过滤

场景查询,Scene Query,是物理引擎被非常广泛使用的一个功能,帮助我们查询到感兴趣的物体。在查询过程中,有一个事情非常重要,那就是如何过滤掉我们不感兴趣的物体,减少不必要的计算量--毕竟很多时候,我们的查询都是目的性很强的,只对某些类别的物体感兴趣,比如,计算一颗手雷爆炸伤害的时候,我们通常只需要查询出伤害范围内的动态物体即可,而对静态物体施加伤害没什么意义。这一篇中,我们就说说PhysX

2013-05-02 22:05:46 2403

原创 PhysX 3.2中碰撞过滤的实现

之前,我们在从PhysX2.8升级到PhysX3.2(4) 中就说到了,在PhysX 3.2中,物体之间的碰撞过滤都利用一个新增的FilterShader函数中实现。在模拟时,SDK在判断两个物体是否需要碰撞的是时候,会用这一对物体的相关信息来调用FilterShader。这一篇中,我们就具体介绍实现方式。关于SDK里面碰撞过滤的设计和实现,有几个概念要明确:a. 碰撞过滤函数的定义:也就

2013-04-26 20:43:24 3501 3

原创 PhysX 3.2里的布料模拟(4):运动控制

前面的三节中,我们介绍了PhysX 3.2的布料特性的基础知识、如何创建和更新,这一节中,再给大家介绍一些实际中非常有用的布料的属性和功能,让大家对PhysX 3.2的布料有更加深入的了解,使用起来更加得心应手。 首先,看一个简单的,External Acceleration。如果你有过PhysX 2.8.4的使用经历,那么你对这个属性一定不会陌生。这个属性会给布料的每一个顶点加上一个来自

2013-04-22 20:10:17 2840

原创 PhysX 3.2里的布料模拟(3):更新

在PhysX 3.2里的布料模拟(2)中,我们介绍了PhysX 3.2中创建布料对象PxCloth的过程。创建出来之后,实际游戏中我们肯定不希望把创建出来的布料就放在那里混吃等死、自生自灭了,多多少少,我们会有一些控制的动作。这一节中,我们就介绍PhysX 3.2为我们提供的更新布料状态的方法。 我们前面讲过,PhysX 3.2中的布料是在本地坐标系模拟的,碰撞形体都是本地维护的。这就意味

2013-04-21 21:18:35 2330

原创 PhysX 3.2里的布料模拟(2):创建

接那遥远的上一章PhysX 3.2里的布料模拟(1),呵呵。近一段时间比较忙,更新较慢,请见谅。废话少说,继续介绍PhysX 3.2中的布料特性吧。这一节中,我们看创建的过程。我们上一节中提到过,PhysX 3.2中,布料的模拟有三个基本的东西:布料自身的模型;布料的模拟属性;还有就是布料的碰撞体设置。这三个中,布料的模型是模拟最最基本的东西,如论如何你都需要有模型,SDK才知道要去模拟什么东

2013-04-20 23:35:09 3034 1

原创 PhysX的导入导出:从Max插件到左手系引擎

Physx的max编辑插件导出的场景,比如NxuStream保存的XML文件,是保留max坐标系(Z轴向上右手系)的。对于采用左手系的引擎来说,就需要有一个转换过程,将导出的物体转换到适应游戏坐标系的坐标系中。下面,我们就以导出的PhysX 2.8.4的Ragdoll为例,简单介绍一下如何来进行转换。 我们知道,对于一个Ragdoll,有这么几个必要的组成部分:刚体的Actor数据、Bod

2013-03-21 20:16:50 2187

原创 PhysX 3.2里的布料模拟(1):基本概念

最近刚好遇到了一些跟PhysX 3.2里面布料模拟相关的问题,那就约架不如偶遇,介绍一下PhysX 3.2中的布料模拟吧。这一篇中,我们先概要的介绍一下PhysX 3.2中的布料的一些基本概念,后续的文章中再详细介绍如何创建、控制等问题。提到布料模拟,那么我们可能会有这么几方面的问题:如何定义布料的模型;布料模型相邻顶点之间的约束如何定义;布料是否会穿透自己,也就是自碰撞;以及布料跟物理世界中

2013-03-17 14:47:43 4306 1

原创 查找使用CharacterController的人物移动位置出错的问题

我们在游戏中加入物理内容的时候,除了场景里面的东西要动起来,人物身上加上碰撞体,让人物也能够根据场景的变化,在移动过程中前进时做出对应的动作,比如遇到墙体不是直接穿墙而过而是被挡住,从高处落下切换到跳下的动画等。为了方便开发者处理这些需求,PhysX提供了人物控制器 Character Controller的功能。但是在使用中,我们有时候会被问到这样的问题:我的人物突然间就蹦到了很高的地方,完

2013-03-01 15:49:28 1669

原创 从PhysX2.8升级到PhysX3.2(6)

之前的小节中,我们主要介绍的是从PhysX2.8到3.2一些较大的方面的改动,比如架构,对象管理模型,模拟时间和碰撞过滤,以及场景查询等,除了这些主要的改变之外,还有一些比较杂项的改动。因此,这一篇中,我就集中为大家介绍这些杂项的改动。 首先,看Compartment。在2.8中,PhysX SDK提供了NxCompartment这个对象,让我们对场景中的物体能有更多的控制。简单点说,

2013-02-25 21:22:45 1518 1

原创 从PhysX2.8升级到PhysX3.2(5)

前面的篇幅中,我们介绍了PhysX SDK升级过程中需要注意的模拟和碰撞过滤方面的问题,这一篇中,我们介绍物理引擎另一大常用功能--场景查询(Scene Query)--的改进和升级中需要注意的问题。 在2.8和3.2中,PhysX SDK的场景查询都可以分为三大块的功能:raycast,overlap和sweep检测。Raycast检测即射线检测,把一个点沿着一个方向投射出去,看看能够射

2013-02-24 20:13:36 1168

原创 从PhysX2.8升级到PhysX3.2(4)

如果用最简单的话来描述我们使用物理引擎的目的,那么必然是来模拟游戏世界中的碰撞反应。前面两篇的重点是PhysX 2.8和3.2的架构和对象管理方面的不同,这一篇中,我们的重点将是跟模拟相关的两件最基本的东西:模拟时间控制和碰撞过滤。 首先来说模拟时间控制。我们都知道,对于游戏物理引擎来说,通常物理世界的模拟是离散的,也就是说,每一帧的物理模拟所做的事情,是根据现有世界中的物体的当前

2013-02-21 18:34:17 1721 6

原创 从PhysX2.8升级到PhysX3.2(3)

上一篇中 ,我给大家介绍了从2.8到3.2, PhysX SDK的架构改变以及支持的模拟特性的变化。这一篇中,我们就重点介绍在新的架构下,PhysX SDK在管理模拟对象方面的改动。 首先,还是需要再简单看一看2.8中是如何做的。如果我们需要使用PhysX来模拟我们的世界,那么就如同下面的图例显示的,我们需要创建PhsyX SDK对象,然后创建NxScene对象,然后通过这个NxSce

2013-02-20 16:41:05 1524

原创 从PhysX2.8升级到PhysX3.2(2)

这一篇中,我们主要介绍PhysX 2.8和PhyX 3.2之间的架构以及支持的特性的差别。 如果你正在或者曾经使用过PhysX2.8,那么你对下面这个架构图不会陌生: 从上面的架构图可以看到,整个SDK就是一个NxPhysicsSDK对象,在使用SDK的时候,首先需要创建这个SDK对象,再由这个SDK对象创建出其他的对象来使用,比如物理场景对象NxScene等。NxScen

2013-02-17 16:06:27 1599 2

原创 从PhysX2.8升级到PhysX3.2(1)

作为最流行的游戏物理引擎之一,PhysX SDK 一直以来都在为广大游戏开发者提供更真实、更高效的物理模拟引擎而努力着。但是自从PhysX SDK推出全新一代的PhysX SDK开始,游戏开发人员就不得不在两代PhysX SDK版本之间做出选择了。不过,还好,如果你是现在才开始关注PhysX SDK,那么好消息是,直接使用代号为“PhysX-3”的引擎就可以了,因为PhysX-3经历了漫长的数

2013-02-16 15:14:43 1251

原创 开博啦

大家好,大家在使用NVIDIA PhysX 和APEX开发的过程中遇到了任何问题,都可以给我留言。我会尽力帮助大家解决问题。

2012-01-10 22:21:43 885 3

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除