ホーム › フォーラム › Android,iOS › 複数の親オブジェクトに子を連結
タグ: ・・・
-
投稿者投稿
-
2020-08-18 7:11 pm #34085dai参加者
前回の内容の続きとなります。
宜しくお願いします。
複数の親オブジェクトに子オブジェクトの連結を実装したのですが
連なっている子オブジェクトが親から離れていってしまいます。
また親オブジェクト作成毎に座標、子順番リストを作成しているのですがこの方法が良いとは思えませんので
1つのリストにまとめることは出来ないでしょうか?Attachments:
You must be logged in to view attached files.2020-08-22 1:49 pm #34094ASDキーマスター親の作成時に同じ数のリスト、String tokenizerを作成し、ForEachループと固定値で結び付ければそれぞれ個別に動作するようになります。
リストの不使用については、使わないほうがむしろ複雑な処理が必要になりますので、使わないことが全てのケースでいい効果になるとは限りません。使えるものは使いましょう。『開始時に表示』のチェックを外せば非表示になり処理も軽減されます。
– サンプルプログラム
https://blog.clickteam.jp/wp-content/uploads/2020/08/cf25_blog_2020-08-22_複数の親に子を連結2.zip2020-08-22 1:52 pm #34095ASDキーマスター1つのリストにまとめるにしても、複数の親の座標が混在すると、それぞれの親の座標として取り出すことができませんので、やはり同じ数だけ必要です。
2020-08-22 6:09 pm #34096dai参加者フレーム1ですが私の作成したサンプルとの違いは何でしょうか?イベントを確認しましたがグローバル変数名の違いしか分かりませんでした。実際にはフレーム2を使用しますが・・・
- この返信は3年、 7ヶ月前にdaiが編集しました。
2020-08-22 8:27 pm #34098dai参加者String tokenizerについてなのですが
複数割り当てる理由がいまいち分かりません
親オブジェクト1と衝突した子オブジェクトは親オブジェクト1のString tokenizerを使用
親オブジェクト2と衝突した子オブジェクトは親オブジェクト2のString tokenizerを使用していると思うのですが
String tokenizerは切り取るだけのものとしての認識ですので今回の場合フレーム2の23行目は子のForEachループで回しているので1つのString tokenizerで座標を切り取って使用できそうなのですがそれぞれの親に対応したString tokenizerを使用している理由を教えて下さい。2020-08-22 10:16 pm #34102ASDキーマスターString tokenizerを親と同じ数作成するようにしました。
また、子オブジェクト選択条件を新規オブジェクトの「値を参照してオブジェクトを選択」にしています。各オブジェクトにある「固定値と比較」を使うよりも処理が軽いです。前回のサンプルでは親オブジェクトが1個だけでしたが、今回は複数存在します。
それぞれの親オブジェクトに繋がっている子オブジェクトの連結処理(座標変更)が同時に発生した場合、String tokenizerが1個だけでは、それぞれのリストの内容を放り込んで分割することができません(ループによってイベントは複数回実行されるが、String tokenizer1個だけだと前に分割した内容が上書きされて消えてしまう)連結したオブジェクトの距離が離れていくのもこれが原因でした。私も最初は1個で行けると考えていましたが、結局は複数必要でした。
- この返信は3年、 7ヶ月前にASDが編集しました。
2020-08-23 6:51 pm #34104dai参加者複数のリストを参照するときはString tokenizerの扱いに気を付けます。
別の親リストを参照するときにForEachループのインデックス前のオブジェクトを上書きしてしまうということですね。イメージとしてはインデックス1の実行時インデックス0のオブジェクトに上書きされ実行って感じでしょうか?子が同一リストへ移行の場合は上書きされない
インデックス1の時インデックス0が上書き実行されるのは不思議ではありますがそういうものだと考えます。話は変わりますが速度のことで実行できないことがあります。
バウンスボールの速度1は1f毎0.121666pxですよね。
これを種類バウンスボールを選択せずイベント内の計算で行いたいのですが
x座標を0.121666ずつ移動させたオブジェクトとバウンスボールで動かしたものを比べると速度が変わってしまいます。
計算式を教えてください。
宜しくお願いします。- この返信は3年、 7ヶ月前にdaiが編集しました。
- この返信は3年、 7ヶ月前にdaiが編集しました。
- この返信は3年、 7ヶ月前にdaiが編集しました。
- この返信は3年、 7ヶ月前にdaiが編集しました。
- この返信は3年、 7ヶ月前にdaiが編集しました。
Attachments:
You must be logged in to view attached files.2020-08-23 6:59 pm #34107dai参加者バウンスボールの速度に関してはやはり内容が異なりますので別に投稿します。
ありがとうございました。 -
投稿者投稿
- このトピックに返信するにはログインが必要です。