ピクチャの時間差処理

D.Wilderness
記事: 3
登録日時: 2015年12月02日(水) 23:17

ピクチャの時間差処理

投稿記事by D.Wilderness » 2017年9月02日(土) 01:17

こんにちは。

Wolf RPG エディターというツクールの仕様を踏襲したツールにあった便利な機能なのですが、例えばピクチャを使って画像が上下に跳ねるような演出をする場合、
・ピクチャを下に移動(ウェイト)
・ピクチャを上に移動(ウェイト)
・ピクチャを下に移動(ウェイト)
・一定時間ウェイト後消去
というような処理を組むことになるかと思います。

ところが、この間もリアルタイムで別の処理をしたい場合があります。
その場合も上記の処理を並列イベントで処理すればできなくもありませんが、ツクールの並列イベントは非常に高負荷になりやすいのと、スイッチのオンが必須になり使いやすいとは言えません。

そこで、Wolf RPG エディターで「ピクチャのディレイ」と呼ばれていた「nフレーム経過後にピクチャの処理をする」という一種の予約機能があると便利なのですが、このような機能追加はできませんでしょうか?

具体的には、
・一定時間のウェイト(ピクチャの移動でウェイトを指定した場合を含む)後にピクチャの表示・移動・消去を処理するように予約する

よろしくお願いします。

アバター
トリアコンタン
記事: 2311
登録日時: 2015年11月10日(火) 21:13
お住まい: きのこ王国
連絡を取る:

Re: ピクチャの時間差処理

投稿記事by トリアコンタン » 2017年9月10日(日) 01:52

こんばんは!

リクエストの件について検討してみましたが、やはり並列処理を使うのがいいのではないかと思います。

並列処理が重くなるのは、1フレームで大量のイベントコマンドを処理した場合です。
ピクチャの移動におけるウェイト中はコマンド処理を行わないので、この場合の重さはプラグインで独自実装した場合と差はほとんどないと考えられます。

また、スイッチを使用するのは確かですが多くの場合はセルフスイッチで代用することが可能です。
以下が実装例です。たとえ同一イベントであっても通常イベントと並列イベントとを同時に流せます。

ページ1
トリガー:自動実行、決定ボタンetc

コード: 全て選択

◆セルフスイッチの操作:A = ON
◆文章:なし, ウィンドウ, 下
:  :test
◆文章:なし, ウィンドウ, 下
:  :test1
◆文章:なし, ウィンドウ, 下
:  :test2


ページ2
トリガー:並列処理
条件:セルフスイッチA

コード: 全て選択

◆ピクチャの表示:#1, image061, 左上 (0,0), (100%,100%), 255, 通常
◆ピクチャの移動:#1, 左上 (300,0), (100%,100%), 255, 通常, 60フレーム (ウェイト)
◆ピクチャの移動:#1, 左上 (300,300), (100%,100%), 255, 通常, 60フレーム (ウェイト)
◆ピクチャの消去:#1
◆セルフスイッチの操作:A = OFF


並列処理で対応する場合、同じテクニックをピクチャ以外にも様々なコマンドに適用できる利点もあります。
直接のご希望とは異なってしまいますが、よろしければ参考にしてください。
プラグイン関連のトラブルが発生した際の切り分けと報告の方法です。
http://qiita.com/triacontane/items/2e227e5b5ce9503a2c30

[Blog] : http://triacontane.blogspot.jp/
[Twitter]: https://twitter.com/triacontane/
[GitHub] : https://github.com/triacontane/
D.Wilderness
記事: 3
登録日時: 2015年12月02日(水) 23:17

Re: ピクチャの時間差処理

投稿記事by D.Wilderness » 2017年9月10日(日) 11:32

トリアコンタンさん、レスありがとうございます。
トリアコンタンさんがご検討の上で並列処理のほうがよい、と仰るならそちらで対応しようと思います。
ありがとうございます。

“MV:プラグイン素材のリクエスト” へ戻る