問題タブ [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.

0 投票する
1 に答える
2541 参照

java - libgdx パーティクル システムの Z 座標

Z 座標を使用して 3D でパーティクル エフェクトをレンダリングしたいと考えています。スプライトの代わりにデカールを使用して独自の ParticleEffect を実装しようとしましたが、成功しませんでした。

Z 座標を使用して ParticleEffect をレンダリングする他の方法はありますか? たぶん、SpriteBatch の変換マトリックスを操作することによってですか?

アップデート:

作業コード

0 投票する
2 に答える
298 参照

c++ - 異なる確率分布関数を効率的に処理するには?

私は通常、新しい粒子を作成し、それらを更新し、破壊する粒子システムを持っています...

エミッタ モジュールには、パーティクルをリセットする for ループがあります。

通常、C の rand() 関数を使用すると均一な分布が得られますが、他の分布 (ガウスなど) を使用したい場合はどうすればよいでしょうか?

そのコードを変更して、新しい粒子のパラメーターを生成するいくつかの (または少なくとも 2 つの) 異なる方法を処理する方法は?

もちろん、RandomGenerator などのオブジェクトを作成し、いくつかの仮想関数呼び出しを使用して、これらのさまざまな動作を処理できます。しかし、このコードは非常に高速である必要があるため (数千の粒子を更新する場合)、仮想関数を使用するのは良くないと思います。

または多分私は気にせず、単に書くべきです:

異なるディストリビューションの数を絞り込んで、そのうちの 2 つまたは 3 つだけを使用することができます...

私の例は非常に単純ですが、実際のコードではいくつかの粒子パラメータ構成があることに注意してください。

その件について一般的なアドバイスをいただきたいです。

0 投票する
3 に答える
204 参照

android - パーティクルエフェクトでlogcatを解決する方法

ゲームにパーティクルエフェクトを追加しようとしています。エラーはありませんが、実行時にlogcatが表示されます。以下は私のコードとlogcatです。

//////////////////// logcat ///////////////////////

0 投票する
1 に答える
478 参照

directx - 単一の Present の前に複数の定数バッファーを更新する

SlimDX/D3D11 を使用してパーティクル システム マネージャーを作成していますが、定数バッファーに関するいくつかの問題が見つかりました。

私のパーティクル システム マネージャーは、物理特性の異なる複数のパーティクル システムを同時に描画でき、XNAのParticle 3D サンプルに基づいています。描画操作の一般的な考え方は次のとおりです。

  • context.ClearRenderTargetView(...)
  • パーティクルをレンダーする
  • swapChain.Present()

「パーティクルのレンダリング」操作は次のように実装されます。

  • shaderTimeGlobalVariable.Set(currentTime)
  • シェーダー手法の各パスについて:
    • パスを適用
    • 各パーティクル システム:
      • 定数バッファを物理定数で設定 (EffectConstantBuffer.SetRawValue)
      • 1 つ以上の context.Draw 呼び出しを発行します。

私の問題は、最後の定数バッファー呼び出しのみが考慮されているように見えるため、すべての粒子システムが同じ物理特性を持つように強制されることです。

したがって、まず第一に、これは正しい/予想されると思いますが、いくつかの重要な点が欠けています。何が欠けているのか誰かが私に明確にすることができますか?

解決策は、パーティクルの物理的特性を頂点バッファーに挿入することであり、頂点ごとに約 12 バイト多く、したがって、使用している物理システムごとに 12k から 120k のコストがかかると思います。可能であれば避けたいこと:他に利用可能なオプションはありますか?

0 投票する
1 に答える
732 参照

objective-c - GLKView 内に Michael Daley による openGL Particle Emitter を追加する

私は、Michael Daley が彼のParticle Designer用に構築した優れたパーティクル エミッターを使用して、GLKView 内で作業するようにしています。そこにたどり着くには、次の 2 つの方法があります。

  1. 彼の偉大な (しかし古すぎる)チュートリアルのコードをハックして、GLKView 内で iOS5.1 を操作する
  2. 料金を支払い、パーティクル デザイナーを使用してパーティクル エフェクトを glkview に追加する

1.丸一日やってみましたが一人で終わってopenGLの広い土地に負けてしまいました。GL のものから初期化する方法や何が重要なのかわかりません。

クラス Image、Texture2D、Common、および ParticleEmitter を移植し、GLKViewController 内でインスタンス化し、ParticleEmitter.m の 341 行目の EXC_BAD_ACCESS で終了します。

そして、なぜなのか、何なのかわかりません....

今、Particle Designer を購入して、GLKViewController とその GLKView 内に実装しようと考えています。

1./2.で私を助けてくれる人はいますか?私の問題を解決するには、openGL パーティクル エミッターをビュー ベースのアプリケーションに追加しますか?

ありがとう!

編集:いくつかの愚かなコードを削除しました

0 投票する
5 に答える
2389 参照

c - Cのバッファから割り当てます

単純なパーティクルシステムを構築していて、構造体の単一の配列バッファを使用してパーティクルを管理したいと考えています。とはいえ、任意のバッファーからmalloc()とfree()を実行できるC関数が見つかりません。これが私の意図を示すためのいくつかの擬似コードです:

ここ<buffer_alloc>で、および<buffer_free>は、任意のポインタからメモリチャンクを割り当てて解放する関数です(おそらく、バッファ長などの追加のメタデータを使用します)。そのような機能は存在しますか、および/またはこれを行うためのより良い方法はありますか?ありがとうございました!

0 投票する
1 に答える
1974 参照

webgl - three.jsパーティクルシステムの作成によりINVALID_OPERATIONが提供されます:バインドされていないBUFFER_ARRAY

以下のコードでthree.jsパーティクルシステムを作成しようとしています。LinuxホストにインストールされたChromeでは、これは完全に正常に機能しますが、Windows Chromeポータブルで実行しようとすると、最初のレンダリング呼び出しで次のWegGLエラーが発生します。

WebGL:INVALID_OPERATION:vertexAttribPointer:バインドされていないARRAY_BUFFER WebGL:INVALID_OPERATION:drawArrays:属性が正しく設定されていません

...シェーダー構成からのスニペット:..。

...パーティクルシステムの作成...。

VBOがバインドされていない、またはバインドできない理由がわかりません。このトピックに関連して私がこれまでに見つけた問題:

  1. https://github.com/mrdoob/three.js/issues/1985
  2. https://github.com/mrdoob/three.js/issues/2073

しかし、私の場合、どちらも当てはまらないようです。

どんな助けでも大歓迎です;)

0 投票する
1 に答える
3011 参照

ios - iOS の粒子効果

iPhone と iPad のアプリケーションを開発する開発者を雇いました。アプリケーションの一部として、パーティクル エフェクトを使用したいと考えています。

CoreGraphics を使用してパーティクル エフェクトをどのように実装しますか? 開発者に次のリンクを紹介しましたが、リークのためにうまく機能しないと言われました: http://www.clingmarks.com/generate-particles-along-a-path/822

0 投票する
1 に答える
227 参照

iphone - パーティクル システム内のパーティクルの動作がおかしい

メインのゲーム オブジェクト (キャラクター) が画面の中央に留まるようにオフセットするノード (「地形」という名前) があります。私はこれを次のようにします:

問題は、私の地形にパーティクル システムがあることです。キャラクターを動かす (そして地形を相殺する) と、放出されたパーティクルは上向きの軌道を維持しません。放出された粒子がデフェーズしているように見えます。これは、地形クラスに含めるパーティクル システム コードです (つまり、self は地形自体を参照します)。

パーティクルをパーティクル システム ソースから上に移動させるにはどうすればよいですか?