问题标签 [particle-system]
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.
java - libgdx 粒子系统 Z 坐标
我想使用 Z 坐标在 3D 中渲染粒子效果。我尝试使用贴花而不是 Sprite 来实现自己的 ParticleEffect,但没有成功。
还有其他方法可以使用 Z 坐标渲染 ParticleEffect 吗?也许通过操纵 SpriteBatch 的转换矩阵?
更新:
工作代码
c++ - 如何有效地处理不同的概率分布函数?
我有一个粒子系统,通常会创建新粒子,更新它们并破坏......
在发射器模块中有用于重置粒子的 for 循环:
通常在使用 C 的 rand() 函数时,我们会得到均匀分布,但是当我想使用其他分布(例如高斯分布)时怎么办?
如何更改该代码以使其能够处理几种(或至少两种)不同的方式来生成新粒子的参数?
当然,您可以创建一些对象:例如 RandomGenerator,并使用一些虚函数调用并处理这些不同的行为。但是这段代码应该很快(更新数千个粒子时),所以我认为使用虚函数并不好。
或者也许我不应该关心并简单地写:
我们可以缩小不同分布的数量,只使用其中的两个或三个......
请注意,我的示例非常简单,但在实际代码中,您有几个粒子参数配置。
我想就该主题获得一些一般性建议。
android - 如何解决粒子效果中的logcat
我正在尝试在我的游戏中添加粒子效果。运行时没有错误但显示 logcat。下面是我的代码和logcat。
//////////////////logcat////////////////////
directx - 单个 Present 之前的多个常量缓冲区更新
我正在使用 SlimDX/D3D11 编写粒子系统管理器,并且发现常量缓冲区存在一些问题。
我的粒子系统管理器可以同时绘制多个具有不同物理特性的粒子系统,并且基于XNA的Particle 3D样本。绘制操作的总体思路是:
- context.ClearRenderTargetView(...)
- 渲染粒子
- 交换链.Present()
“渲染粒子”操作是这样实现的:
- shaderTimeGlobalVariable.Set(currentTime)
- 对于着色器技术的每个通道:
- 申请通行证
- 对于每个粒子系统:
- 使用物理常量设置常量缓冲区 (EffectConstantBuffer.SetRawValue)
- 发出一个或多个 context.Draw 调用
我的问题是,似乎只考虑了最后一个常量缓冲区调用,从而迫使所有粒子系统具有相同的物理特性。
所以,首先:我怀疑这是正确/预期的,我错过了一些关键点。谁能澄清我错过了什么?
我希望一个解决方案是将粒子的物理特性插入到顶点缓冲区中,每个顶点的成本大约增加 12 个字节,因此对于我正在使用的每个物理系统来说,成本会增加 12k 到 120k。如果可能的话,我想避免的事情:还有其他选择吗?
objective-c - 在 GLKView 中添加 Michael Daley 的 openGL 粒子发射器
我尝试使用 Michael Daley 为他的粒子设计师构建的伟大粒子发射器在 GLKView 中工作。我看到有两种方法可以到达那里:
- 破解他伟大(但太旧)教程中的代码,以便在 GLKView 中使用 iOS5.1
- 付费并使用他的粒子设计器将粒子效果添加到 glkview
我尝试了 1. 一整天,但独自结束并迷失在 openGL 的广阔土地上。我不知道从 GL-stuff 初始化如何或什么是重要的。
我移植了 Image、Texture2D、Common 和 ParticleEmitter 类,并在 GLKViewController 中实例化了它们,在 ParticleEmitter.m 的第 341 行以 EXC_BAD_ACCESS 结尾:
我不知道为什么或什么......
现在我考虑购买粒子设计器并尝试在 GLKViewController 及其 GLKView 中实现它。
有没有人可以帮助我解决 1./2. 解决我的问题,将openGL 粒子发射器添加到基于视图的应用程序中?
谢谢!
编辑:删除了一些愚蠢的代码
objective-c - 检查 iOS XCode 项目文件:openGL Particle Emitter for GLKit
我正在尝试将 Michael Daley 的 Particle Emitter 移植到 GLKView 并找到了一个XCode 项目,他在 github 上做了这个- 不幸的是,它被严重绑定在一个不错的小游戏中。
现在我尝试只将粒子发射器从他的游戏项目中取出来重新使用它(我需要它在 2D 中)并且我将它设置为没有任何编译错误的状态 - 但什么也看不到......
这是项目文件。谁能告诉我为什么没有可见的粒子发射器?谢谢!
c - 从 C 中的缓冲区分配
我正在构建一个简单的粒子系统,并希望使用结构的单个数组缓冲区来管理我的粒子。也就是说,我找不到允许我从任意缓冲区进行 malloc() 和 free() 的 C 函数。这是一些伪代码来显示我的意图:
where<buffer_alloc>
和<buffer_free>
are 从任意指针分配和释放内存块的函数(可能带有额外的元数据,例如缓冲区长度等)。是否存在此类功能和/或是否有更好的方法来做到这一点?谢谢!
webgl - 三.js ParticleSystem 创建给出 INVALID_OPERATION: not bound BUFFER_ARRAY
我正在尝试使用以下代码创建一个three.js ParticleSystem。在我安装在 Linux 主机上的 Chrome 上,这工作得非常好,但是当我尝试在 Windows Chrome 便携式设备上运行它时,我在第一次渲染调用时收到以下 WegGL 错误:
WebGL:INVALID_OPERATION:vertexAttribPointer:没有绑定ARRAY_BUFFER WebGL:INVALID_OPERATION:drawArrays:属性设置不正确
...来自着色器配置的片段:...
... 创建粒子系统 ....
我不知道为什么 VBO 未绑定或无法绑定。到目前为止我发现的与该主题相关的问题:
但两者似乎都不适用于我的情况。
任何帮助将不胜感激;)
ios - iOS 中的粒子效果
我聘请了一位开发人员来开发 iPhone 和 iPad 应用程序,作为应用程序的一部分,我们希望有粒子效果。
如何使用 CoreGraphics 实现粒子效果?请注意,我已将开发人员推荐到以下链接,但他告诉我由于泄漏而无法正常工作:http: //www.clingmarks.com/generate-particles-along-a-path/822
iphone - 粒子系统中的粒子行为怪异
我有一个节点(名为“地形”),我偏移了这个节点,以便我的主要游戏对象(我的角色)保持在屏幕的中心。我这样做:
问题是在我的地形上,我有一个粒子系统。当移动我的角色(从而抵消地形)时,发射的粒子不会保持它们的上行轨迹。看起来发射的粒子是相移的。这是我包含在地形类中的粒子系统代码(即 self 指的是地形本身):
如何让我的粒子从我的粒子系统源向上移动?