- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
今天,我试着玩弄 Physx 和 Physx 可视化调试器,一如既往,新手会遇到问题和疑问。我会用我糟糕的英语水平尽可能地描述我的问题。
1) 我设法创建了一个 physx 场景。添加一个动态 Actor 并操纵它。我在 Visual Debugger 中看到它在运动。这是一个标准的 PxSphereGeometry 球。但是,当我在场景中添加第二个球时,第二个球是不可见的,但我可以看到碰撞发生了。这是代码,如果有人能指出它有什么问题,我将不胜感激:
PxMaterial* mMaterial;
mMaterial = mPhysics->createMaterial(0.5f, 0.5f, 0.5f); //static friction, dynamic friction, restitution
if(!mMaterial)
error("createMaterial failed!");
PxVec3 position(0, 50, 0);
PxRigidDynamic* aSphereActor = PxCreateDynamic(*mPhysics, PxTransform(position), PxSphereGeometry(3), *mMaterial, 1.f);
PxRigidDynamic* aTrActor = PxCreateDynamic(*mPhysics, PxTransform(PxVec3(3, 1, 1)), PxSphereGeometry(3), *mMaterial, 1.1f);
if(!aSphereActor)
error("Unable to create sphere actor");
aSphereActor->setMass(1);
aTrActor->setMass(10);
PxRigidStatic* plane = PxCreatePlane(*mPhysics, PxPlane(PxVec3(0,1,0), 0), *mMaterial);
if (!plane)
error("create shape failed!");
mScene->addActor(*plane);
mScene->addActor(*aSphereActor);
mScene->addActor(*aTrActor);
while(true)
{
mScene->simulate(1.0f / 30.0f);
if(!mScene->fetchResults(true))
error("cant fetch result");
Sleep(10);
}
在此场景中,aSphereActor 与 aTrActor 发生碰撞,但我在 Visual Debugger 中看不到 aTrActor,但碰撞是完全可见的。
2) Nvidia 的文档非常非常差。对于我这样的新手来说,找到它的方法是一种折磨。所以我想知道如何导入 3d 模型并将其添加到场景中。我知道 3ds max、maya 等有一个 Physx 插件。假设我有一个用这个插件导出的模型,我如何将它导入我的应用程序并将它添加到场景中?
3)场景创建过程中
sceneDesc.gravity = PxVec3(0.0f, -9.81f, 0.0f);
,我应该提供什么值才能获得真正的引力,即我们在地球上拥有的引力
4) 我可以为 Actor 分配质量,但我不知道质量是用哪个测量单位表示的。例如,如果我设置 aSphereActor->setMass(1); aSphereActor 会是 1 公斤、克还是什么?
非常感谢大家。我感谢您的帮助。
最佳答案
首先,我将在本季度进行我的第一个 Physx 项目。 (读作,我可能正在弥补这个)
1)
您不检查 aTrActor 的创建,但我认为这不是您的问题。
检查您的绘制/更新回调中是否有 TrActor。
2)
不知道
3)
-9.81 m/s^2 是地球重力加速度。
我猜 PxVec3 是相对于每个轴的重力。
所以,PxVec3(0.0, -9.81, 0.0) 没有 x 或 z 加速度和 -9.81 m/s^2 y 加速度。
4)
#3 的答案表明单位是公制。
您可以将它们全部放在标准中,但公制 > 标准 imo。
只看了日期,这可能对 Davita 没有帮助,但希望它对某人有用。
关于c++ - Physx 3 的几个新手问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11353224/
我刚刚在 GitHub 上下载了 PhysX 3.4,但似乎无法编译 PhysX.sln。我收到很多这样的错误: C1083 Cannot open include file: 'stddef.h':
我正在尝试为 PhysX 应用程序中的物理模拟定义一个时间步长,这样物理将在所有机器上以相同的速度运行。我希望物理以 60FPS 的速度更新,因此每次更新应该有 1/60 秒的增量时间。 我的应用程序
我正在尝试在游戏引擎中实现PhysX,但是在链接PhysX库时遇到了一些奇怪的问题。无论我做什么,它总是失败,但是Nvidia的片段却像是一种魅力。我将尝试描述自己的所作所为,希望有人能找到我所缺少的
我正在使用 PhysX 作为基础物理求解器(使用它的 SPH 模拟)开发一个非真实感水渲染演示,并希望添加泡沫和水滴渲染以增强其视觉效果。 首先,我使用相邻粒子的数量作为阈值将它们分成几组(水、泡沫和
今天,我试着玩弄 Physx 和 Physx 可视化调试器,一如既往,新手会遇到问题和疑问。我会用我糟糕的英语水平尽可能地描述我的问题。 1) 我设法创建了一个 physx 场景。添加一个动态 Act
我需要在 PhysX 3.2 中制作一个类似 NULL 的刚体。一个非碰撞的 - 仅作为 anchor 。有什么办法吗?我只需要它来解决一些关节组合。提前致谢 最佳答案 首先为对创建一个过滤器: Px
就目前情况而言,这个问题不太适合我们的问答形式。我们希望答案得到事实、引用资料或专业知识的支持,但这个问题可能会引发辩论、争论、民意调查或扩展讨论。如果您觉得这个问题可以改进并可能重新开放,visit
我最近比较了一些用于模拟和游戏开发的物理引擎。有些是免费的,有些是开源的,有些是商业的(1 甚至是非常商业的 $$$$)。Havok、Ode、Newton(又名 oxNewton)、Bullet、Ph
你能帮帮我吗?我不明白如何在 Ogre3D 中与普通对象一起绘制 PhysX 调试可视化。 我有 OpenGL 的代码,但我不能将它转换为 Ogre3d: void RenderData(const
我目前正在使用 physx(尝试将 ik 添加到布娃娃)。出于某种原因,布娃娃的所有关节都是无摩擦的,因此,布娃娃往往会“摇晃”,尤其是当它悬卡在空中并连接到多个移动的运动参与者时。 我想给关节增加摩
我正在开展一个项目,我需要在我的 PhysX 应用程序中创建一个地形。 作为输入数据,我有 dted 文件(高程)。 在 PhysX 中创建地形的更好方法是什么?我需要一个大地形。 我尝试创建一个 H
所以,现在,我正在尝试开发一款游戏的直升机系统。我遇到的问题是,我想编辑直升机的重力,并且仅当我在其中/使用它时,但现在它导致所有使用 PhysX 的对象失去它的重力。 这是我正在使用的函数。 g_p
我仍在研究用于模拟流体的物理系统。我重写了我的应用程序以使用 PhysX 3.3.0 并变得更加客观,现在我遇到了一个问题,我在一两周内无法解决。 这是我对 PhysX Context 的启动: vo
我正在尝试使用我的老师提供的引擎来创建布娃娃。我们使用 DirectX 10,.X 格式作为网格文件(使用 assimp 和老师设计的封闭解析器)和 Nvidia PhysX。 我有工作动画(网格变形
我注意到有很多函数可以进行光线转换,但它们似乎使用了常量 NxRay 我遇到的问题是有一辆向下转换光线的车辆作为我的 NxRay。它不是恒定的,因为车辆可以以不同的角度移动,但我希望能够进行光线转换以
我有一个应用程序是为使用 Bullet 物理引擎而编写的。我在 8 核的 Intel i7 2600K CPU 上运行它。该应用程序必须处理数百万个物理工作 block ,每个工作 block 都可以
我正在使用 Ogre3D 和 PhysX。 当我从 8 位高度图加载地形时,它在 Visual Debugger 上看起来很正常。 看第一张图: http://img44.imageshack.us/
我正在浏览最近开源的 NVidia PhysX 3.4,我发现的都是 C++ 类 - 是 header 版本还是仅 C 语言的包装器 API? 最佳答案 可能您必须自己创建 C Header 包装器
所以,我正在尝试从 Qt Creator 中的 HelloWorldRender 片段编译代码。我希望能够做的只是单步执行调试器中的代码并对其进行修改,以便我可以了解如何使用它。 但是,问题是当我尝试
我是一名优秀的程序员,十分优秀!