ActiveImageCanvasV2   [w]


拡大縮小と透過&RGBエフェクト SubAppSprite連動(画像は加算エフェクト使用) ActiveImageCanvas同士も可能 Spine対応(useActiveImageCanvasを使用) DxLib対応 TextSprite対応
*基本的にV1と同じExtensionなので混在する事はできませんが内部動作を一新しています 20240515 グレーアウト再調整 20240512 アクティブオブジェクト即時切替時にホットスポットの反映がされなかった点を修正(20240208バグ) 20240510 DirectX11の乗算済みアルファが有効時の挙動についての調整 回転時の中心軸がズレてしまっていた点の修正(2世代前より混入) -------------------------------------------------------------------------------- -- ActiveImageCanvasV2 Extension 20240515 -------------------------------------------------------------------------------- 動作までの配置 CF25\Extensions\Unicode\ActiveImageCanvas.mfx CF25\Data\Runtime\Unicode\ActiveImageCanvas.mfx -------------------------------------------------------------------------------- ■仕様など アクティブで表示されている画像を コピペな感じで表示&消し込みができるエクステンションです □制限について 32bitカラーのみ対応 ※基本的な使い方は動作サンプルを見て頂ければ大体わかるかと思います。 ---------------------------- ■V2について(V1バージョンとの差異) 基本的な命令の変更は行われていませんが V2には根本部分へ大掛かりな変更を加え 対象オブジェクトの拡大縮小回転及び各種エフェクトにも対応しました。 Loop_CheckMaskによる当たり判定も同様に対応している他 一部のエクステンションからの利用もできるように拡張しています。 ただし対象となるエクステンションはActiveImageCanvasへの対応済みであるバージョンである事が必要です 下記が対応済みエクステンションになります ・Spine ・SubAppSprite ・ActiveImageCanvasV2(つまりキャンバス同士を相互に扱えます) ■他のプラットフォーム(Runtime)についてなど ActiveImageCanvasは以前と同様のバージョンで作られている為、混在する事はできません。 以前のバージョンで対応していたAndroidやiosについては 現時点では今回の機能分は対応していない為 他のプラットフォームでは拡張分の動作は行われませんが 以前の動作のまま実行自体は行う事ができます。 また、かなりハード寄りの処理を行っている為 巨大なテクスチャ等はビデオメモリの制限による不具合が発生する可能性はあります。 -------------------------------------------------------------------------------- ■Action InitSize 指定したサイズでキャンバスを生成します SetHotSpot ホットスポットを設定します SetScale スケールを設定します SetAngle 角度を設定します Clear キャンバスをクリアします(透明) Paste 指定したアクティブオブジェクトの固定値に表示されている、アクティブの画像を貼り付けます Erase 指定したアクティブオブジェクトの固定値に表示されている、アクティブの画像を元に消し込みます CollisionReset 現在表示されているCanvasの画像を元に、当たり判定を生成します Loop_CheckMask 指定したアクティブオブジェクトの固定値に表示されている、アクティブの画像と 現在表示されているCanvasの画像で、重なっているドット部分に対して検出の高速ループを実行します SaveImage 現在の状態を画像ファイルに保存します LoadImage 画像ファイルからロードします -------------------------------------------------------------------------------- ■Conditions Loop_CheckMask 当たり判定の高速ループ実行中に何度も呼び出されます 1ループあたりで取得できる情報はExpressionsで取得することができます -------------------------------------------------------------------------------- ■Expressions getColor 指定座標の色情報を取得します getAlpha 指定座標のアルファ値を取得します getX_Loop_CheckMask getY_Loop_CheckMask getColor_Loop_CheckMask getAlpha_Loop_CheckMask ループチェック実行時に取得できるドットの情報が得られます -------------------------------------------------------------------------------- □変更点 20240515 グレーアウト再調整 20240512 アクティブオブジェクト即時切替時にホットスポットの反映がされなかった点を修正(20240208バグ) 20240510 DirectX11の乗算済みアルファが有効時の挙動についての調整 回転時の中心軸がズレてしまっていた点の修正(2世代前より混入) 20240403 Ldtk Extensionにも対応 20240208 アクティブオブジェクトのアニメーションを切り替えた直後、同一のフレーム内の場合において 新しいアニメーションのホットスポットが参照されていなかった不備の修正 20231211 TextSpriteにも対応 20231126 DxLibにも対応 20231106 サーフェスロスト時の不具合の修正(windowサイズ変更時) 20231102 ・windows版を拡縮回転エフェクトに対応 ・他のエクステンションとの連動にも対応 20231017 windows版にアルファチャンネル付きアクティブオブジェクト及び透過エフェクトに対応 20230917 iPhoneRuntimeの対応 ただしファイン判定はCFエンジン側に実装処理がされていない為動作しません CRun.m -(CArrayList*)objectAllCol_IXY:(CObject*)pHo withImage:(short) newImg andAngle:(float)newAngle andScaleX:(float)newScaleX andScaleY:(float)newScaleY andX:(int)newX andY:(int)newY andColList:(short*)pOiColList ここに、Extensionのマスク当たり判定に対する処理が入っていない(いずれ対応されるとは思いますが) 20230909 AndroidRuntimeの対応 20211209 スクロールへの対応 Paste時、対象アクティブに指定されているRGBカラーへの対応 (自前ソフトウェア演算なので高速ではありませんが実用レベルにはあるかとは思います) イメージフィルタ―自動認識の対応 20211002 初版 -------------------------------------------------------------------------------- ■あとがき V2から一気に生まれ変わりました。 それなりの画像編集ソフトも作り出せるかもしれませんね。 DOWNLOAD(20240512は破棄) OLDVER OLDVER OLDVER OLDVER OLDVER