判定ラインの表示位置変更機能
sf298yenさん
さっそく試作してみましたので、恐れ入りますがお試しいただけますでしょうか。
http://sourceforge.jp/projects/dtxmania/scm/svn/commits/554
から、DTXManiaGR.exeと、FDK.dllをダウンロードして、097環境に上書きコピーしていただければOKです。
Config.ini の JudgeLinePosOffsetDrums を -2 とか -3 とかにしていただければ、表示位置が2pixなり3pixなり上がって、表示遅延をカバーできます。
かしこまりです。
今日は仕事があるので、帰宅次第やります。
お疲れさまです!
Windows 7+DTXMania(Rev:554)
レンダ前フレ数:3Dアプリ / 垂直同期:ON(3~4フレーム遅延?) SPEED=4.0 ≒ JudgeLinePosOffsetDrums=-40 SPEED=2.5 ≒ JudgeLinePosOffsetDrums=-25 レンダ前フレ数:1 / 垂直同期:ON(1フレーム遅延?) SPEED=4.0 ≒ JudgeLinePosOffsetDrums=-12 ※スクロール速度は4.0 / 3.0 / 2.5の3パターンでテスト。ヒットエフェクト?が本来の位置なので違和感が(^_^;
おおざっぱな数値で試しましたので誤差は大きいと思いますが、大体上記のタイミングで描画と判定タイミングが一致した感じです。
スクロール速度を変更すれば1フレームあたりの移動量が変わるのでそれに伴って判定位置を変更する必要があるということかな?
大抵の方は速度を自分好みで固定して使うと思いますが、ころころ変更する方や変更の必要がある場合はネックになるかもしれないと思いました。
→チケット#31602としてはちゃんと機能していると思います(判定位置の変更)。
・マイナス方向への調整なので、ヒットしてから少し流れてから消える、というパターン
・(プラス方向であれば、ヒットすると判定ライン到達前に消える)
という要素がありますが、
スクロール速度が遅めの場合はある程度エフェクトで誤魔化す(ヒットエフェクトが流れや手前で消える違和感を消す)ことが可能だと思ってみたりしますが、スクロールをやたら速くされる方の場合だと見た目の違和感はどうしても残るのではないかと。
遅延しているから当然だとは思いますが、ヒットエフェクト表示の開始がどうしても遅れるのでもっさり感がでやすい?
エフェクトを工夫して違和感を減らせると面白いかもしれないと思いました。
例えば遅延してる分だけエフェクトを高速?表示みたいな。本来0.5秒で再生するエフェクトなら0.3秒・・・とか?(意味あるのかな、これ;)
・・・遅延がなければいらないのでしょうけどorz
ご確認いただき、ありがとうございました。
まず、判定ラインにヒットエフェクトがないのは違和感ありますね。修正しました。(rev555)
スクロール速度に応じた判定位置の変更は、おいおいやります。(今日は間に合わず)
ヒットエフェクトの工夫ですが、実はもう既に「ヒットエフェクトの出始めを速くする(すぐ立ち上がる)」対応は入っているので、これ以上早く出し始めることはできないと思っています。今回判定ラインにヒットエフェクトの位置を合わせるようにしましたので、これで違和感が減るとよいのですが。
あと、レンダ前フレはユーザーサイドで1にしていただく前提で考えていました。XPを捨てていいならアプリ側で対応できるのですが、もう1年くらいは無理かなと思ってますので・・・
お疲れサマです!
今回判定ラインにヒットエフェクトの位置を合わせるようにしましたので、これで違和感が減るとよいのですが。
ヒットエフェクトの工夫ですが、実はもう既に「ヒットエフェクトの出始めを速くする(すぐ立ち上がる)」対応は入っている・・・(略
あと、レンダ前フレはユーザーサイドで1にしていただく前提で考えていました。XPを捨てていいならアプリ側で対応できるのですが、もう1年くらいは無理かなと思ってますので・・・
なるほど、つまり、チップのエフェクトだけは通常より上のほうに表示してみる、という話ですね。(通常のドラムの場合)
表示遅延がどのくらいあるのかを測定できれば、従来通りキー押下のずれに応じて判定ラインからずらしたヒット表示もできますが・・・できるかなぁ。 単純に判定ラインを上下させた度合いから表示遅延を推し量るようにしてみればいいのかな。
つまり、チップのエフェクトだけは通常より上のほうに表示してみる、という話ですね。(通常のドラムの場合)
タイミングに応じてエフェクトを上下はこれはこれで面白そう。でも想像してみたら、それなりのスクロール速度にしている場合、判定ラインよりかなり上にエフェクトが表示されることになるのかな?となると厳しいかも・・・orz。
あがきになるかもしれませんが、
ヒット(判定ライン)してもしばらくチップが表示され続けている(で下に流れてから突然消える)ことで視覚的に「遅く感じる」という影響があると仮定してみました。
とすると、判定ライン(正しいタイミングと思われるライン)を過ぎたらヒット成功・失敗にこだわらずチップの表示をフェードアウトしていくというのは視覚的にどうでしょう?
「ミスチップは消えずに画面下まで流れてしまわないとダメなんだ!」というこだわりがある人には向かない設計かもしれませんが、あくまで判定ラインを調整する必要があるような今回のケースに絞った意見で。
結局は極端に大きくズレがない、という前提にはなってしまうのかなぁ・・・と妄想。(調整が必要≒ズレが認識できてしまうレベル・・・どうあがいても違和感は残るから妥協するしかない?)
- memo -
・遅延対策としての判定ライン変更チケットですが、単純に表示位置(目線の高さあわせ等。タイミングはいじらず。)が設定出来るのも需要あるかも。
とりあえず、判定バーを過ぎたらチップをフェードアウトさせる機能を入れてみます。それで違和感がなくなればよいのですが・・・。
sf298yenさん、みなさん
忘れたころにすみません。
>・遅延対策としての判定ライン変更チケットですが、単純に表示位置(目線の高さあわせ等。タイミングはいじらず。)が設定出来るのも需要あるかも。
これを作りました。(表示遅延の問題をいつまでも放置するわけにはいきませんしね)
https://osdn.jp/users/yyagi/pf/DTXMania_TestBuilds/files/ の DTXMania105_判定ライン上下操作.zip です。
ちょっとお試しいただけませんか?
表示遅延対策として、対応の優先度を上げます。
#30666 の、画面表示遅延の対策として、判定ラインの表示位置を上下に調整する機能を追加する。