投稿

5月, 2022の投稿を表示しています

【GDevelop】「インスタンスごとに繰り返す」は、できるだけ条件でインスタンスを絞り込んでから実行したほうが早いらしいぞ!

イメージ
Discord で「インスタンスごとに繰り返す」の効率化に関する話題が挙がり、ちょっと調査したので、その結果をここに記録しておきます。 そうそう、まだ  GDevelop の Discord サーバー  に参加していない方は、ぜひ参加しましょう! 日本語フォーラムもあるよ😉 あと、余談ですが「インスタンス」とはシーン上に配置された「オブジェクト」のことです。 GDevelop は、それらを区別せずにどちらもオブジェクトと言ったりするのですが、明確に表現する必要がある場合、唐突にインスタンスと言ったりする、 ややこしい  おちゃめな一面がありますw ご注意ください。 さて、表題の件、いきなり結論ですが…… 「インスタンスごとに繰り返す」は、できるだけ条件でインスタンスを絞り込んでから実行したほうが早い! つまり「インスタンスごとに繰り返す」内で、インスタンスを絞り込むより、あらかじめ親イベントの条件で絞り込んでおいたほうが、処理が早いということです。 ↓具体的な例をご覧ください。 「繰り返しが先」イベントグループでは、「インスタンスごとに繰り返す」の中でインスタンスを絞り込んでいます。 対して「繰り返しが後」イベントグループでは、親イベントの条件でインスタンスを絞り込んでから、「インスタンスごとに繰り返す」を実行しています。 ※ 「1000回繰り返す」は、処理にかかる時間をより明確にするためのものです。 ※ 座標を条件にして絞り込んでいますが、結果的にはすべてのインスタンスが対象となっています。「繰り返しが先」と「繰り返しが後」で差はありません。 このイベントを処理するためにかかった時間は以下のとおりです。 「繰り返しが先」は、36.14ms 「繰り返しが後」は、17.39ms という結果になり、なんでかは分かりませんが(ぉぃ)2倍以上早くなりました👍 まぁとにかく、 「インスタンスごとに繰り返す」内の条件は通常の条件より負荷が高いっぽいので注意しましょう! ということです。めでたしめでたし!(雑)

GDevelop 5.0.135 がリリースされました。

というか、5.0.134 が非公開になりました😅 134 には「Yarn エディターでダイアログツリーを保存できない」という不具合が見つかったので、修正版の 135 がリリースされた形です。 そのためアップデート内容は 134 と同じです。 詳しくは「 GDevelop 5.0.134 がリリースされました。 」をご覧ください。

GDevelop 5.0.134 がリリースされました。

イメージ
最近またバージョンアップのペースが早まってきましたね。 しかも今回はちょっと大規模なバージョンアップのようです👏 なので、ちょっとざっくりな解説です😅 なお 5.0.133 は闇に葬られました😇 💝 改善点 「X秒待機(実験的)」アクションの追加 これは Scratch などから来たユーザーには、待望の機能なのではないでしょうか?!😉 このアクションは、指定された秒数の間待機してから、次のアクションやサブイベントを実行します。 このアクションを利用することで、タイマーなどを使用しなくても、一連のアクションを時間差で実行することが簡単にできるようになります。 これは単純な処理の一時停止ではなく、待機している間も他のイベントは通常どおり実行され続ける点に注意してください。 例えば次の画像のようなイベントの場合…… 待機後に実行されるのは、続くアクションとサブイベント(赤枠内)で、それ以外は、通常どおり実行され続けます。 また、待機開始時の絞り込まれたオブジェクトを記憶しているので、待機中にオブジェクトが増減しても、待機開始時の絞り込まれたオブジェクトにのみアクションが実行されます。 詳しい使い方は Wiki をご覧ください。(英語) エディター画面の改善 変数エディターの改善 ついにドラッグアンドドロップによる並べ替えに対応しました!👏 入れ子の変数をたためるようになりました。 「元に戻す」「やり直す」に対応しました。 名前と値で変数の検索が可能になりました。 ポイントと衝突マスクのエディターを改善 編集中のポイントがハイライトされて分かりやすくなりました。 衝突マスクのポイントは並べ替えに対応しました。 他にも色々ユーザーフレンドリーになりました👍 エフェクトのリスト画面を改善 並べ替えに対応しました。 エフェクト名が変更されたときの処理を改善しました。 UI / UX の改善 アセットストアがアセットパックごとにサムネイル表示されるようになりました。 アラートやメッセージのデザインを改善しました。 チュートリアルへのボタンを色々と追加しました。 「アンカー」ビヘイビアをより直感的な仕様に改善しました。 式を入力する際のオートコンプリートで、候補を省略せずにすべて表示するようになりました。 リーダーボードの改善 表示するスコアの数を設定できるようになり

GDevelop 5.0.132 がリリースされました。

イメージ
ただゲームが作れるだけではなく、リリース後のことも考えたサービスを提供してくれる GDevelop はスゴイ!(語彙力) ✨新機能 数回クリックするだけでゲームにランキング機能を追加できるようになりました(実験的) まぁ「数回クリックするだけ」ってのは言い過ぎかと思いますがw、とても簡単にランキング機能(リーダーボード)が追加できます。 リーダーボードは「ゲーム ダッシュボード」の「ゲーム管理」内の「リーダーボード」タブから管理できます。 リーダーボードの管理方法についてはこちら (英語) リーダーボードのアクションと条件についてはこちら (英語) まだ実験的な段階ではあるものの、単位を設定できたりスコアをタイムとして表示できたりと、充分実用的だと思います。 強いて不満点を挙げるとしたら以下の様な点でしょうか…… 連続したスコア送信(1秒間に2回とか)は、かなりの頻度でエラーになるっぽい 背景や文字色などのデザイン変更ができない いたずら防止が必要ならプレイヤー名が他の人とかぶらないようにする必要がある これらは今後の改善に期待です。 あと、Liluo.io のオンラインサービスなのでネットに繋がった状態でないと利用できない点にもご注意ください。 💝 改善点 Liluo.io ゲームプラットフォームの改善 GDevelop ユーザーのページが用意されました。 (例えば私の場合はこんな感じ: https://liluo.io/PANDAKO ) あと「ゲームのURLを公開直前に確認・変更できるようになりました。」と発表されていますが、前からできてませんでしたっけ?🤔 UX/UIの改善 イベント名全体の表現方法の統一がおこなわれました。 オブジェクトとオブジェクトグループのリストを改善。 両方のリストに同じドラッグアンドドロップ効果が使用されるようになりました オブジェクトグループを複製できるようになりました。 一度に複数のオブジェクトを移動できるようになりました。(リストでは複数選択できません。おそらくシーン上のインスタンスを選択することで、リストが複数選択されるのでそれを利用する必要があるかと思います😅) Web 版の GDevelop でゲームを構築するときに、CORS などにより取得に失敗する画像の URL を指定できなくなりました。(ん?警告は出るけど出

このブログの人気の投稿

GDevelop の「イベント」を正しく理解しよう

GDevelop Wiki がリニューアル!

GDevelop 5.0.138 がリリースされました。