问题标签 [nvidia-flex]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
227 浏览

opengl - Nvidia flex 数据传输

所以我正在尝试将 NVIDIA 的 flex API 用于我的游戏引擎(作为核心游戏机制),我现在正在安排我的数据结构。我已经阅读了 flex 手册,但描述相当稀疏。因为我也在使用 CUDA,所以我需要知道 flex API 调用flexSetParticles等是否也接受设备指针作为输入。另外,如果有人能告诉我,这将是很好的,具体是做什么flexUpdateSolver的。它自己计算速度吗?它计算重力吗?如果不是,并且您必须自己计算更新的速度,那么Solvereven 有什么作用?

目前,我自己计算新的位置和速度(没有弯曲),如下所示:

上面函数中的所有数组都是设备指针,函数实际上是一个内核。如果我现在必须自己计算速度,我将不得不

1.) 必要时通过添加新粒子来更新阵列(从主机到设备)并计算速度(设备)

2.) 将新位置(和速度)复制回 CPU 并将它们交给 flex

3.) flex 完成后,将新位置从flexGetParticles回复制到 GPU(用于渲染的 OpenGL 缓冲区)

这似乎效率很低,所以我想知道是否有更简单的解决方案。

0 投票
1 回答
869 浏览

unreal-engine4 - unreal engine 4 making a cable wrap around objects

does anyone know how to make a cable component respond to being blocked by other physics components in unreal engine 4? game has a swinging rope that should wrap around objects it hits, instead every setting I try it is still passing through them.

0 投票
1 回答
264 浏览

ubuntu - 无法在 Ubuntu 上编译 Nvidia Flex

我正在尝试在 Linux(Ubuntu 14.04)上编译 Flex。我收到以下我无法解决的错误:

我安装了带有最新 NVIDIA 驱动程序之一的 CUDA 7.5。感谢您对我应该如何解决这个问题的评论。

0 投票
1 回答
1039 浏览

nvidia - ID3D11DeviceContext::CopyResource 与不同的 D3D11_USAGE

我正在探索Nvidia 的 Flex,但我对 D3D 很陌生。我正在尝试在使用不同D3D11_BUFFER_DESC创建的两个ID3D11Buffer之间进行复制。我想使用ID3D11DeviceContext::CopyResource()因为它是 GPU-GPU 副本,但代码抛出异常。

两个缓冲区创建如下:

然后在每一帧我从Flex 的 NvFlexGet 得到一个更新的 buff0。然后我尝试将 buff0 复制到 buff1:

但是这条线抛出异常。如果两个缓冲区都是使用D3D11_USAGE_DYNAMIC创建的,它工作正常。但不是当 buff1 是D3D11_USAGE_DEFAULT时。

ID3D11DeviceContext::CopyResource 是否支持具有不同D3D11_USAGE的缓冲区之间的复制?还是我错过了什么?

0 投票
1 回答
389 浏览

c# - Nvidia Flex:为什么我不能在 FlexArray Actor 中设置粒子数?(统一)

我是 C# 编码的新手,无法在 Nvidia FlexArray 脚本中设置粒子计数,粒子计数公共类显示为灰色且无法编辑。它以某种方式永久设置为0。

我附上了一张图片和包装附带的脚本。我非常感谢任何帮助。数组 actor 上的检查器视图的图像

0 投票
1 回答
123 浏览

particles - Nvidia Flex 软体约束类型

当在 Nvidia Flex 中创建一个柔体时,使用NvFlexExtCreateSoftFromMesh()它会导致粒子在集群中组合在一起,将使用哪种约束类型的 Position-Based Dynamics?是形状匹配还是一般距离限制或其他什么?

我很感激任何帮助。

0 投票
1 回答
493 浏览

unity3d - Unity NVIDIA Flex,加力

这可能是一个相当小众的问题,但也许有人可以帮助我。我使用 NVIDIA Flex 插件来统一创建一个球体形状的软体对象,我想通过对其施加脉冲来移动它。如果没有 Flex,我只会使用刚体和 addforce 函数。但是因为 Flex 使用它自己的物理计算并相应地设置对象的位置,至少在我看来是这样的,addForce 完全被忽略了......

那么如何将力添加到 Flex-Object 中呢?

0 投票
1 回答
229 浏览

physics - 计算/近似刚体上的速度和旋转冲量,只给定一个位置的力和刚体的质心?

我正在开发一个计算着色器,它允许流体粒子引擎(NVidia Flex)和刚体物理引擎(Unity3D Engine)之间的双向物理交互。

基本上对于计算着色器,我使用 5 个输入缓冲区:
(float4)粒子速度/形状接触指数
(float4)形状质心
(int)形状标志 - 动态与静态等
(int)粒子指数
(float4)粒子位置和质量

和 2 个输出缓冲区:
(float3) 速度增量
(float3) 旋转速度增量

我正在寻找的功能是最小的,不需要准确,它只需要有点可信,因为我主要只是将它用于视觉效果。我知道我可以使用 NVidia flex 粒子创建刚体约束并使用它,但在我的情况下,这不切实际,因为我的流体模拟使用非常小的粒子,而中等大小的rigiddodies 将使用 NVidia 刚性约束的粒子比文档多得多建议每个身体说。

所以无论如何,我已经到了这样的程度,在我的着色器中,我需要一个物理公式来获取世界空间中力的原点、力矢量、世界空间中形状的质心,我需要它给我形状的净增量速度(假设密度均匀)和形状的净旋转速度。对于每个形状与粒子之间的每次接触,此功能将多次应用于每个形状。

这是一些伪代码:

如果有人知道一个相对简单的公式来合理有效地计算甚至近似这些速度和旋转力,请告诉我。我搜索了谷歌,但所有关于此的文章似乎都超出了我的想象。我只是认为我没有足够的运动学经验和知识,还无法自己弄清楚这些公式。

0 投票
1 回答
180 浏览

c - 您如何使用 Nvidia Flex 设置模拟?

我已经阅读了文档https://docs.nvidia.com/gameworks/content/gameworkslibrary/physx/flex/manual.html?ncid=afm-chs-44270&ranMID=44270&ranEAID=a1LgFw09t88&ranSiteID=a1LgFw09t88-TGVNs5HtsNwQmL1xZ5XT8A#particles

但我仍然无法获得有效的模拟。有没有我不知道的调试选项?

我从https://github.com/NVIDIAGameWorks/FleX获得了 Flex

这是我的代码:

这是一些输出:

现在我希望粒子开始向右下落。我不确定我加载到粒子缓冲区中的数据是否正确,我该如何检查?所有文档都说是[float x,float y,float z,inverse_mass]。我应该检查哪些参数?

我能找到的缓冲区是:

0 投票
1 回答
358 浏览

unity3d - 如何在 Unity3D 中使用 NVIDIA FleX 制作软体果冻球?

我目前正在使用 Unity3D 中的NVIDIA FleX 包来创建软体果冻对象。我仅将 Unity 用于动画,而不是游戏开发。

我的目标是制作一个透明的果冻球,它可以保持其球形并具有弹性。

我尝试实现的第一种方法是使用 Flex Array + 流体设置。我一直在玩这些设置,但我无法让它保持一个球体,它只是变成了一个或多或少粘稠的流体斑点。

第二种方法是使用 Flex Soft + 流体设置。它在物理学方面要好得多,但即使“吸引粒子”关闭,但水滴是分开的,而不是一个果冻球。

这是点击 play 之前的样子,左边是 Flex Array,右边是 Flex Soft。Array 的粒子可见,但 Soft 的粒子不可见。 这是在打完 play 之后,Array 变成了一种粘性流体,而不是球体,Soft 很像果冻,但水滴都是分开的。

非常感谢这两种方法中的任何一种的解决方案!