問題タブ [caemittercell]

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 に答える
1363 参照

ios - CAEmitterLayer:CAEmitterCellで@ 2x(網膜)png画像を使用

CAEmitterLayerを使用すると、@ 2x(網膜)画像はiOSの他の場所のようにスケーリングされたプロパティではありません。私が得ている結果は、@ 2xバージョンが縮小されるのではなく、非網膜画像の4倍のサイズで表示されていることです。

これを修正する方法について何か考えはありますか?UIImageViewで画像の痛みをテストしようとしましたが、結果は期待どおりであるため、これはCAEmitterLayerとCAEmitterCellの問題のようです。画像には正しい@2x.png指定子があります。

これが私が使用しているコードです:

ありがとう!

アップデート:

@Fabian、contentScaleの設定が機能していません、少なくとも私のソリューションではありません

私もこれを試しましたが、結果はありませんでした。

また、スケール範囲の設定が機能しませんでした。iPad 2と3(w RD)のサイズにはまだ違いがあります。

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

ios - CAEmitterCell-遅い星または光の効果

私はCAEmitterCellで遊んでいますが、ほとんどの効果は花火のような非常に速い効果です。しかし、私はあなたがここwww.findyourwaytooz.comで見るような遅い「星」効果を持ちたいです

CAEmitterCellでそれを行うにはどうすればよいですか?

ありがとうございました :)

0 投票する
0 に答える
384 参照

objective-c - CAEmitterCell粒子の位置

uiviewパーティクルエミッタを使用した降雪アニメーションがあります。粒子の画像内容を変更するなど、多くの研究のおかげで、さまざまな方法で雪をアニメートすることができます。粒子の雪の画像を変更し、粒子がその領域を離れたときに画像を元に戻したい円形の領域があります。(ランプライトから降る雪)

アニメーションループ内のパーティクルの位置に基づいてコンテンツ画像を切り替える式を作成することを考えていましたが、パーティクルのx、yを取得できません。個々の粒子の位置を取得することは可能ですか?

それとも粒子衝突検出?

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

iphone - CAEmitterCell Color プロパティのアニメーション化

私は を持っていCAEmitterCellて、特定の色で設定しました。ドキュメンテーションによると、このプロパティは animatableであり、ゲーム内のさまざまなプレーヤー (全員が最初に色を選択する) のさまざまな色の間でこれをアニメーション化したいと考えています。

これが私EmitterCellがそれを設定したときの私のものです:

そして、ここでは、この場合の色の変化をテストしているところです。2 つの異なる色の間で跳ね返っているだけです。

ただし、これを実行しても色は変わりません。ここで「アニメータブル」の性質を誤解していますか、それとも単に別の方法で処理する必要がありCAEmitterCellますか?

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

iphone - CAEmitterCell は継続時間の値を尊重しません

2 秒後に終了したいエミッターがありますが、実行を停止できません。

私のコードは次のとおりです。

約2年間iOSの一部であったにもかかわらず、これに関する情報はほとんどないようです!

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

ios - CAEmitterLayer は表示されません

を追加しUIViewて、パーティクル エフェクトを表示するクラスをstoryboard view controller作成するだけです。クラス名を、作成したカスタム クラスの名前UIViewに変更します。UIView'sクラスで使用しているコードでは、UIView予期したパーティクル エフェクトが表示されません。コードは次のとおりです。

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

ios - すべてのパーティクルへの CAEmitterCell アクセス

私は CAEmitterCell を動作させていますが、パーティクルの速度を落として停止させたいと思っています。すべてのパーティクルにアクセスできた場合、速度および/または加速度を 0 に下げるだけで動きが止まるようです。

私はこのようなことを試しました:

私のlayerEmitterにはemitterCellが1つしかないため、emitterCellは必要ありませんが、すでに作成されている粒子は必要ありません。

ドキュメントにこれが表示されていないため、概念的な問題があると思われます。助けていただければ幸いです。

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

ios - CAEmitterCell は、birthRate の変更を考慮しません

ユーザーが画面に触れている間だけ放出するパーティクル エフェクトを作成したいのですが、CAEmitterCell のbirthRate プロパティをゼロ以外の値に設定すると変更できません。

CAEmitterLayer と CAEmitterCell を希望どおりにセットアップする UIView のサブクラスがあります。そのクラスに 2 つのプロパティを定義しています。

次に、View Controller で、タッチを追跡し、emitterLayer の位置を設定し、emitterCell の発生率を設定します。

ログは、emitterView.emitterCell.birthRate が変更されたことを報告します。

画面に触れると、エミッターは期待どおりに開始し、レイヤーはタッチに従いますが、タッチを終了すると、エミッターセルは最初に設定された値 (touchesBegan で設定された値) を喜んで放出します。私が何をしても、出生率の値をゼロ以外の値に設定すると変更できないようです。ログは、値が適切に設定されていることを報告しますが、エミッターは放出し続けます。

ただし、touchesEnded メソッドを変更してレイヤーの位置を変更すると、emitterCell でbirthRate を設定した後、すべてが期待どおりに機能します。

誰かが理由を説明してもらえますか?

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

ios - CAEmitter アニメーションのスムーズな開始

CAEmitterLayer に一種のライトセーバー アニメーションを作成させようとしています。ある点から光のビームが現れて停止するようにします。私の問題は、アニメーションの開始をスムーズに行うことができないことです。コードを実行するとすぐに、アニメーションなしで数秒が経過したように見えます。

問題の原因を見つけることができるかどうかを確認するために、コードを可能な限り削除しましたが、最も単純な場合でも問題は発生します。これは私が今持っているコードのサンプルで、まだ問題があります:

明らかな何かを見逃していたに違いないと思いますが、これを何日も修正できませんでした。

birthRate を 0 に設定するとビームはスムーズに消えますが、任意の数値に戻すと再びアニメーションなしで表示されます。

ご協力ありがとうございました。