Beta.05C rev.4 公開。(2023 年 05 月 01 日)
エクステンションの正式名が「ASTER」に決定。ASTER : Beta.05C rev.4 は rev.3 で未実装だった Grow Radius が実装されています。間に合わなかった Move Toward については 06 月公開予定の rev.5 で実装を目指します。
rev.5 は 6 月公開予定でしたが 5 月は作業があまり進まず Move Toward 機能は開発を一時停止、先に配列操作系の命令を実装することにしました。整列機能で作った画面上のグリッドをデータ構造に変換して配列として保持、配列に対するデータ更新とアクティブを関連付けし連動させる。メニューとかアイテム管理画面を作るための機能です。rev.5 は一応 7 月公開を目指してふんわりと頑張りますが 7 月が無理なら 9 月くらいになっちゃうかもしれません、です。
ASTER Beta.05C rev.4 は Beta 05C rev.3 までに実装された Object Control 機能と完全な動作互換性があります。正規表現に関する機能は Beta 05B 以降、動作互換性が維持されています。
古いファイルは動作サンプルも含め毎回消去をお願いします
Download (zip) : ASTER : Beta5C rev.4 Pub CF25 Extension
rev.3 で未実装だった Grow Radius はギリギリ間に合わせましたが Move Toward は未実装のまま締切が来ました。rev.5 でがんばります。メニューだけ作って中身未実装な機能はメニューに表示されても機能にはアクセスできないように処理しておきました。
- Controller >> Grow Radius
- +A-B MOTiONS >> Move Toward
Grow Rad は半径を大きくしたり小さくしたりするカスタムパラメータ機能です。このややこしい動作が 1 Action で設定可能。
タイミング制御・動作切り替えタイミングを検出するので予約変数が一個増えました。
rev.4 では未実装となった Move Toward は新しい動作定義、指定したオブジェクトあるいはオブジェクト群を目標まで自動移動させる機能です。
必要要件
Beta 05B 以降 Objects Control が HWA + DX9 + DX9 Shader を必要とします。05C rev.3 は rev2 と機能的な互換性を可能な限り維持しながら新機能やバグフィクスが追加されています。
05B rev7 から 2条項 BSD License で公開されるようになりました。フリーウェアとして利用できますが免責のためライセンス宣言してあります。ライセンスについて Beta.05C rev.4 Overviews に詳細が書いてあります。
Object Control に関する機能詳細は作者用のメモとして記した以下ブログ記事をご参照ください。最終的なドキュメントはまだ作業に取り組めていません。
関連ブログ記事 1 : Beta.05A 更新履歴|仕様変更など
関連ブログ記事 2 : Beta.05B 更新履歴|仕様変更など
関連ブログ記事 3 : Beta.05C 更新履歴|仕様変更など
関連ブログ記事 4 : Beta.05C rev.4 Overviews
開発コンセプトは「知識が無くても動かせる」と「なるべく簡潔なイベント」の両立。作者が何か作りながら必要に応じて自動化できる機能を実装しています。
実際に自動配置や自動操作で動かしてみると、「あ、これ楽だ」が体験できるはずです。ちょっとした手間がかかる部分とかをなるべく省力化する機能を実装していく予定。
ただし動作テスト足りてません
HWA 動作を推奨、要 DX9 + DX9 対応 Shader です
作者は Sub-Application というエクステが使い方がわからないためサブアプリを使った動作テストを行っていません。描画関連だと重要な Surface ですが、これもまだ試していません。
複雑過ぎて個別エクステンションとの整合性は取れない可能性があります。とくにサブアプリは作者には元々分からないのでサンプルも作る予定はありません。不具合が出る可能性あります。気にせず使える方だけ使ってください。
正規表現に関する機能はおおむね完成
Beta.05A|B でも正規表現に関する機能は内部的ブラッシュアップが多少あった程度で Beta.04 とほぼ同等です。安定性を評価しながら今後のバージョンでもブラッシュアップは継続しますが、要望や不具合が無ければこのまま完成とします。
不足しているドキュメント全般について、新機能追加予定が無くなるまでブログ記事を使って、最終的に静的ページとしてドキュメントをまとめたいと考えています。
Pingback: Beta.05A 更新履歴|仕様変更など – CF2.5 ガイド
05A rev6の公開お疲れ様です&ありがとうございます!
今回追加された画面端でのwrap機能は非常に有用ですね!
REGEXでの移動のみならず、他のイベントやユーザー操作での移動でも折り返してくれたので、非常に使い道がありそうです。
今までこれを実現しようとするならもう一個ダミーでOBJ配置しないといけなかったので、それなしでできるのは非常に便利です!
こちらでも色々触ったりテストしてみて、おかしな点を発見しましたら報告しますね!
すいません、早急に Beta.05B rev3 を出します。05A rev6 との互換性が無くなり Align から一部機能を削除して動作サンプルも完全新規で作成した修正版です。
REGEX の関数は FileSystem 関連で一箇所だけ互換性が無くなり、05B に付くサンプルはこれも修正済みです。MISC. の Objects Align は将来的な拡張に備えて 05B で大きく構成を変えたため、ほとんどの機能が一旦互換性を失いました。
Wrap や Flip は残っていますが、Beta.05A と Beta.05B は関数の JumpTable が全く異なるため、お手数ですが 05B が出たら 05A で作られたファイルは消してください。ゴメンナサイ。。。
05C 以降は Align も互換性を大きく損なうことは無いと思います。基本的に全ての配置命令で今後はマージン指定ができるように共通化します。お手数おかけしますがよろしくお願い申し上げます。
Beta.05A Rev6 の配布を停止します
Beta.05B rev3 をアップしました。基本設計が決まるまで Beta.05B シリーズは MISC. の動作互換性を積極的に切っていく可能性が高いのでご注意ください。
Beta.05B rev3 には Motion Controller の By Name Reject にまだバグがあります。Reject のバグは次公開バージョンまでに治す予定です。
Beta.05B rev4 をアップしました。Reject のバグを修正した版。追加機能は無しですが、新しくデバッグ用のサンプルファイルを同包しました。Objects Control で管理しているグループ情報を取得して表示できます。
05B rev4の公開お疲れ様です!
サンプルも充実してきて、軽く触ったり見るだけでも非常に可能性を感じられるものとなってきました。
wrapやflipはちょっとした画面の賑やかしに便利そうです。
wrapもユーザー移動でもちゃんと端から端に出現してくれるので非常にありがたいです!
基本的にこの手のギミックは画面スクロール固定の状態で実装されていることが多いですが、
ウィンドウサイズ(画面サイズ)だけでなく、指定した範囲内の端から端に移動するようにできても面白いかもしれません。
今後、サブアプリ等も含めて、時間ができたら色々テストしてみようかと思いますので、よろしくお願いします!
05B rev5 で Virtual Wall という機能を実装したので、Wrap | Flip に関しては範囲指定が後からできるようになってます。ちなみにまた一部機能的互換性を切ってしまいました。ゴメンナサイ。動作仕様に関して Objects Control は描画関連を弄る命令形は DX9 + DX9 対応 Shaders が必須になりました。無くても動きますが半透明 (Alpha-coefficient Param) 指定が機能しません。05B_rev6 がもうじき公開されます。
コメントありがとうございます。
REGEX ECMA Beta.05B rev6 Public を公開しました。rev4 との互換性が切れたので古い動作サンプルファイルは破棄をお願いします。
05C の概要
REGEX ECMA + Objects Control Beta 05C rev1 : Overview
Beta.05C rev1の更新・公開お疲れ様です!
B.rev7は触れない内に時間が経ってしまいましたが、今回のC.rev1はサンプル開いてみてビックリです!
まず作例が派手に動いてくれるので物凄くわかりやすいですし、動きも実用的な感じに作ってあるので便利であるということが一発でわかりますね!
オブジェクト操作については命令の意味なども踏まえて、ちゃんと理解していかないとよくわからなさそうですがその価値は十二分にあると断言できるクオリティですね。
また時間が出来たら色々触ったり試してみたいと思います。素晴らしいエクステンションの開発、ありがとうございました!
感想ありがとうございます。
いま動作仕様について文章化しているのですが「フレームベース」に特化した動作コントローラとパラメータ仕様になっています。
公式の「Clickteam Movement Controller」はタイムベース動作を考慮したパラメータと動作仕様になっているので速度というのは一秒単位の移動量あるいは角速度、「ByName Motion Controller」はフレームベース特化で時間の概念は無視した速度=移動量(pixel)、角速度=角度になってます。
前提知識とかロジックは説明全く無しだと理解し難いはずなので、今後はなるべく実装された動作やパラメータを文章化する作業を進めていきます。意味が分からないパラメータや動作仕様があったらお問い合わせください。