• R/O
  • HTTP
  • SSH
  • HTTPS

Commit

Tags
No Tags

Frequently used words (click to add to your profile)

javac++androidlinuxc#windowsobjective-ccocoa誰得qtpythonphprubygameguibathyscaphec計画中(planning stage)翻訳omegatframeworktwitterdomtestvb.netdirectxゲームエンジンbtronarduinopreviewer

MIDITrail をピカピカにする。鍵盤方向自動切替・多ポート・歌詞対応等


Commit MetaInfo

Revisiondefaef3c97927451a310ebb3804facf9048b70ec (tree)
Time2023-08-06 14:38:45
Authoryoshy <yoshy@user...>
Commiteryoshy

Log Message

[FIX] タイムインジケーターオブジェクトのMod化関連の不具合を修正
・PianoRoll3Dで描画順判定時にタイムインジケーターModオブジェクトを見るように修正していなかったので波紋描画時に透過しないことがあった
・PianoRoll3Dで演奏停止時にタイムインジケーターModオブジェクトのリセットが漏れていて表示位置がまき戻っていなかった
・PianoRoll3Dで視点読み書き時にタイムインジケーターオブジェクトを見ているが演奏位置を通知していなかったので保存座標が相殺されず演奏停止位置にずれていた
・PianoRollRingで視点読み書き時にタイムインジケーターオブジェクトを見ているが演奏位置を通知していなかったので保存座標が相殺されず演奏停止位置にずれていた

Change Summary

Incremental Difference

--- a/MIDITrail/MTScenePianoRoll3DMod.cpp
+++ b/MIDITrail/MTScenePianoRoll3DMod.cpp
@@ -188,7 +188,7 @@ int MTScenePianoRoll3DMod::Draw(
188188 if (result != 0) goto EXIT;
189189
190190 // カメラ位置が演奏位置より手前側であれば
191- if(m_TimeIndicator.GetPos() > camVector.x) {
191+ if(m_TimeIndicatorMod.GetPos() > camVector.x) {
192192
193193 //メッシュ>タイムインジケータ>歌詞>波紋>キーボードの順で奥から描画
194194
@@ -288,6 +288,8 @@ int MTScenePianoRoll3DMod::OnRecvSequencerMsg(
288288 else if (parser.GetMsg() == SMMsgParser::MsgPlayTime) {
289289 m_Dashboard.SetPlayTimeMSec(parser.GetPlayTimeMSec());
290290 m_FirstPersonCam.SetCurTickTime(parser.GetPlayTickTime());
291+ // Viewpointの読み書きに支障が出るので、m_TimeIndicator にも通知する
292+ m_TimeIndicator.SetCurTickTime(parser.GetPlayTickTime());
291293 m_TimeIndicatorMod.SetCurTickTime(parser.GetPlayTickTime());
292294 m_NoteRippleMod.SetPlayTimeMSec(parser.GetPlayTimeMSec());
293295 m_NoteRippleMod.SetCurTickTime(parser.GetPlayTickTime());
@@ -359,6 +361,7 @@ void MTScenePianoRoll3DMod::_Reset()
359361 {
360362 MTScenePianoRoll3D::_Reset();
361363
364+ m_TimeIndicatorMod.Reset();
362365 m_NoteBoxMod.Reset();
363366 m_NoteRippleMod.Reset();
364367 m_NoteLyrics.Reset();
--- a/MIDITrail/MTScenePianoRollRingMod.cpp
+++ b/MIDITrail/MTScenePianoRollRingMod.cpp
@@ -224,6 +224,8 @@ int MTScenePianoRollRingMod::OnRecvSequencerMsg(
224224 else if (parser.GetMsg() == SMMsgParser::MsgPlayTime) {
225225 m_Dashboard.SetPlayTimeMSec(parser.GetPlayTimeMSec());
226226 m_FirstPersonCam.SetCurTickTime(parser.GetPlayTickTime());
227+ // Viewpointの読み書きに支障が出るので、m_TimeIndicator にも通知する
228+ m_TimeIndicator.SetCurTickTime(parser.GetPlayTickTime());
227229 m_TimeIndicatorMod.SetCurTickTime(parser.GetPlayTickTime());
228230 m_NoteRippleMod.SetPlayTimeMSec(parser.GetPlayTimeMSec());
229231 m_NoteRippleMod.SetCurTickTime(parser.GetPlayTickTime());