これに伴いFullAVICenteringは廃止。MovieX,YはAVIX,Yに変更(AVIは旧AVI, Movieは全画面の動画等新方式のものとして用語区別したい)。
this.bチップがある.Movie |= chip.bMovie;
if (chip.bMovie)
{
- if (chip[EChannel.MovieFull] || CDTXMania.Instance.ConfigIni.bFullAVI)
+ if (chip[EChannel.MovieFull] || CDTXMania.Instance.ConfigIni.bForceScalingAVI)
{
this.bMovieをFullscreen再生する = true;
}
list項目リスト.Add(CDTXMania.Instance.ConfigIni.bFullScreen);
list項目リスト.Add(CDTXMania.Instance.ConfigIni.bBGA);
list項目リスト.Add(CDTXMania.Instance.ConfigIni.bAVI);
- list項目リスト.Add(CDTXMania.Instance.ConfigIni.bFullAVI);
+ list項目リスト.Add(CDTXMania.Instance.ConfigIni.bForceScalingAVI);
list項目リスト.Add(CDTXMania.Instance.ConfigIni.bVSyncWait);
list項目リスト.Add(CDTXMania.Instance.ConfigIni.cdDebugX.Both);
list項目リスト.Add(CDTXMania.Instance.ConfigIni.cdDebugY.Both);
list項目リスト.Add(CDTXMania.Instance.ConfigIni.cdDebugY.DrOnly);
list項目リスト.Add(CDTXMania.Instance.ConfigIni.cdDebugX.GBOnly);
list項目リスト.Add(CDTXMania.Instance.ConfigIni.cdDebugY.GBOnly);
- list項目リスト.Add(CDTXMania.Instance.ConfigIni.cdMovieX.Both);
- list項目リスト.Add(CDTXMania.Instance.ConfigIni.cdMovieY.Both);
- list項目リスト.Add(CDTXMania.Instance.ConfigIni.cdMovieX.DrOnly);
- list項目リスト.Add(CDTXMania.Instance.ConfigIni.cdMovieY.DrOnly);
- list項目リスト.Add(CDTXMania.Instance.ConfigIni.cdMovieX.GBOnly);
- list項目リスト.Add(CDTXMania.Instance.ConfigIni.cdMovieY.GBOnly);
- list項目リスト.Add(CDTXMania.Instance.ConfigIni.bForceFullMovieCentering.Both);
- list項目リスト.Add(CDTXMania.Instance.ConfigIni.cdForceFullMovieX.Both);
- list項目リスト.Add(CDTXMania.Instance.ConfigIni.cdForceFullMovieY.Both);
+ list項目リスト.Add(CDTXMania.Instance.ConfigIni.cdAVIX.Both);
+ list項目リスト.Add(CDTXMania.Instance.ConfigIni.cdAVIY.Both);
+ list項目リスト.Add(CDTXMania.Instance.ConfigIni.cdAVIX.DrOnly);
+ list項目リスト.Add(CDTXMania.Instance.ConfigIni.cdAVIY.DrOnly);
+ list項目リスト.Add(CDTXMania.Instance.ConfigIni.cdAVIX.GBOnly);
+ list項目リスト.Add(CDTXMania.Instance.ConfigIni.cdAVIY.GBOnly);
+ //list項目リスト.Add(CDTXMania.Instance.ConfigIni.bForceFullMovieCentering.Both);
+ list項目リスト.Add(CDTXMania.Instance.ConfigIni.cdForceScaledMovieX.Both);
+ list項目リスト.Add(CDTXMania.Instance.ConfigIni.cdForceScaledMovieY.Both);
+ list項目リスト.Add(CDTXMania.Instance.ConfigIni.cdForceScaledMovieW.Both);
+ list項目リスト.Add(CDTXMania.Instance.ConfigIni.cdForceScaledMovieH.Both);
list項目リスト.Add(CDTXMania.Instance.ConfigIni.nBGAlpha);
list項目リスト.Add(CDTXMania.Instance.ConfigIni.nShowLagType);
list項目リスト.Add(CDTXMania.Instance.ConfigIni.eJudgePriority);
}
/// <summary>
- /// 従来のAVIをウインドウ全体に拡大表示するかどうか
+ /// 従来のAVIを拡大表示するかどうか
/// </summary>
[DataMember]
- public COptionBool bFullAVI;
+ public COptionBool bForceScalingAVI;
[DataMember]
public COptionBool bAVI;
[DataMember]
public STInstValue<COptionInteger> cdDebugY;
[DataMember]
- public STInstValue<COptionInteger> cdMovieX;
+ public STInstValue<COptionInteger> cdAVIX;
[DataMember]
- public STInstValue<COptionInteger> cdMovieY;
+ public STInstValue<COptionInteger> cdAVIY;
[DataMember]
public STDGBSValue<STInstValue<COptionInteger>> cdComboX;
[DataMember]
public STDGBSValue<COptionInteger> nHiddenFrom;
/// <summary>
/// 旧AVIを強制的にウインドウ全体に表示するときの、X座標
+ /// (114で...FullMovieXから...ScalewdMovieXに改名)
/// </summary>
- [DataMember(Order = 113)]
- public STInstValue<COptionInteger> cdForceFullMovieX; // #38362 2018.7.19 add yyagi
+ [DataMember(Order = 114)]
+ public STInstValue<COptionInteger> cdForceScaledMovieX; // #38362 2018.7.19 add yyagi
/// <summary>
/// 旧AVIを強制的にウインドウ全体に表示するときの、Y座標
+ /// (114で...FullMovieYから...ScalewdMovieYに改名)
/// </summary>
- [DataMember(Order = 113)]
- public STInstValue<COptionInteger> cdForceFullMovieY; // #38362 2018.7.19 add yyagi
+ [DataMember(Order = 114)]
+ public STInstValue<COptionInteger> cdForceScaledMovieY; // #38362 2018.7.19 add yyagi
/// <summary>
/// 旧AVIを強制的にウインドウ全体に表示するときに、センタリング表示するかどうか
+ /// (Rel114で廃止)
/// </summary>
- [DataMember(Order = 113)]
- public STInstValue<COptionBool> bForceFullMovieCentering; // #38362 2018.7.19 add yyagi
+ //[DataMember(Order = 113)]
+ //public STInstValue<COptionBool> bForceFullMovieCentering; // #38362 2018.7.19 add yyagi
+
+ /// <summary>
+ /// 旧AVIを強制的にウインドウ全体に表示するときの、width
+ /// </summary>
+ [DataMember(Order = 114)]
+ public STInstValue<COptionInteger> cdForceScaledMovieW; // #38362 2019.1.8 add yyagi
+ /// <summary>
+ /// 旧AVIを強制的にウインドウ全体に表示するときの、height
+ /// </summary>
+ [DataMember(Order = 114)]
+ public STInstValue<COptionInteger> cdForceScaledMovieH; // #38362 2018.1.8 add yyagi
public int GetLaneX(ELane e)
bFullScreen = new COptionBool(false);
bVSyncWait = new COptionBool(true);
bStageFailed = new COptionBool(true);
- bFullAVI = new COptionBool(false);
+ bForceScalingAVI = new COptionBool(false);
bAVI = new COptionBool(true);
bBGA = new COptionBool(true);
bFillin = new COptionBool(true);
cdDebugY.DrOnly = new COptionInteger(200);
cdDebugY.GBOnly = new COptionInteger(200);
- cdMovieX = new STInstValue<COptionInteger>();
- cdMovieX.Both = new COptionInteger(619 + 682);
- cdMovieX.DrOnly = new COptionInteger(619 + 682);
- cdMovieX.GBOnly = new COptionInteger(682);
-
- cdMovieY = new STInstValue<COptionInteger>();
- cdMovieY.Both = new COptionInteger(128);
- cdMovieY.DrOnly = new COptionInteger(128);
- cdMovieY.GBOnly = new COptionInteger(128);
-
- #region [ #38362 ForcedFullScreen X, Y, flag ]
- cdForceFullMovieX = new STInstValue<COptionInteger>();
- cdForceFullMovieX.Both = new COptionInteger(0);
- cdForceFullMovieX.DrOnly = new COptionInteger(0);
- cdForceFullMovieX.GBOnly = new COptionInteger(0);
-
- cdForceFullMovieY = new STInstValue<COptionInteger>();
- cdForceFullMovieY.Both = new COptionInteger(0);
- cdForceFullMovieY.DrOnly = new COptionInteger(0);
- cdForceFullMovieY.GBOnly = new COptionInteger(0);
-
- bForceFullMovieCentering = new STInstValue<COptionBool>();
- bForceFullMovieCentering.Both = new COptionBool(true);
- bForceFullMovieCentering.DrOnly = new COptionBool(true);
- bForceFullMovieCentering.GBOnly = new COptionBool(true);
+ cdAVIX = new STInstValue<COptionInteger>();
+ cdAVIX.Both = new COptionInteger(619 + 682);
+ cdAVIX.DrOnly = new COptionInteger(619 + 682);
+ cdAVIX.GBOnly = new COptionInteger(682);
+
+ cdAVIY = new STInstValue<COptionInteger>();
+ cdAVIY.Both = new COptionInteger(128);
+ cdAVIY.DrOnly = new COptionInteger(128);
+ cdAVIY.GBOnly = new COptionInteger(128);
+
+ #region [ #38362 ForcedFullScreen X, Y, W, H ]
+ cdForceScaledMovieX = new STInstValue<COptionInteger>();
+ cdForceScaledMovieX.Both = new COptionInteger(0);
+ cdForceScaledMovieX.DrOnly = new COptionInteger(0);
+ cdForceScaledMovieX.GBOnly = new COptionInteger(0);
+
+ cdForceScaledMovieY = new STInstValue<COptionInteger>();
+ cdForceScaledMovieY.Both = new COptionInteger(0);
+ cdForceScaledMovieY.DrOnly = new COptionInteger(0);
+ cdForceScaledMovieY.GBOnly = new COptionInteger(0);
+
+ cdForceScaledMovieW = new STInstValue<COptionInteger>();
+ cdForceScaledMovieW.Both = new COptionInteger(1920);
+ cdForceScaledMovieW.DrOnly = new COptionInteger(1920);
+ cdForceScaledMovieW.GBOnly = new COptionInteger(1920);
+
+ cdForceScaledMovieH = new STInstValue<COptionInteger>();
+ cdForceScaledMovieH.Both = new COptionInteger(1080);
+ cdForceScaledMovieH.DrOnly = new COptionInteger(1080);
+ cdForceScaledMovieH.GBOnly = new COptionInteger(1080);
+
+ //bForceFullMovieCentering = new STInstValue<COptionBool>();
+ //bForceFullMovieCentering.Both = new COptionBool(true);
+ //bForceFullMovieCentering.DrOnly = new COptionBool(true);
+ //bForceFullMovieCentering.GBOnly = new COptionBool(true);
#endregion
cdComboX = new STDGBSValue<STInstValue<COptionInteger>>();
bFullScreen.Initialize( "strCfgSysFullScreen" );
bVSyncWait.Initialize( "strCfgSysVSync" );
bStageFailed.Initialize( "strCfgSysStageFailed");
- bFullAVI.Initialize( "strCfgSysFullAVI" );
+ bForceScalingAVI.Initialize( "strCfgSysForceScalingAVI" );
bAVI.Initialize( "strCfgSysAVI" );
bBGA.Initialize( "strCfgSysBGA" );
bLog.Initialize( "strCfgSysLog" );
cdDebugY.Both.Initialize("strCfgDispDebugYBoth", 0, 1 + SampleFramework.GameWindowSize.Height, crdStep);
cdDebugY.GBOnly.Initialize("strCfgDispDebugYGB", 0, 1 + SampleFramework.GameWindowSize.Height, crdStep);
- cdMovieX.DrOnly.Initialize("strCfgDispMovieXDr", 0, 1 + SampleFramework.GameWindowSize.Width, crdStep);
- cdMovieX.Both.Initialize("strCfgDispMovieXBoth", 0, 1 + SampleFramework.GameWindowSize.Width, crdStep);
- cdMovieX.GBOnly.Initialize("strCfgDispMovieXGB", 0, 1 + SampleFramework.GameWindowSize.Width, crdStep);
- cdMovieY.DrOnly.Initialize("strCfgDispMovieYDr", 0, 1 + SampleFramework.GameWindowSize.Height, crdStep);
- cdMovieY.Both.Initialize("strCfgDispMovieYBoth", 0, 1 + SampleFramework.GameWindowSize.Height, crdStep);
- cdMovieY.GBOnly.Initialize("strCfgDispMovieYGB", 0, 1 + SampleFramework.GameWindowSize.Height, crdStep);
+ cdAVIX.DrOnly.Initialize("strCfgDispAVIXDr", 0, 1 + SampleFramework.GameWindowSize.Width, crdStep);
+ cdAVIX.Both.Initialize("strCfgDispAVIXBoth", 0, 1 + SampleFramework.GameWindowSize.Width, crdStep);
+ cdAVIX.GBOnly.Initialize("strCfgDispAVIXGB", 0, 1 + SampleFramework.GameWindowSize.Width, crdStep);
+ cdAVIY.DrOnly.Initialize("strCfgDispAVIYDr", 0, 1 + SampleFramework.GameWindowSize.Height, crdStep);
+ cdAVIY.Both.Initialize("strCfgDispAVIYBoth", 0, 1 + SampleFramework.GameWindowSize.Height, crdStep);
+ cdAVIY.GBOnly.Initialize("strCfgDispAVIYGB", 0, 1 + SampleFramework.GameWindowSize.Height, crdStep);
+
+ cdForceScaledMovieX.DrOnly.Initialize("strCfgForceScaledAVIXDr", -SampleFramework.GameWindowSize.Width, 1 + SampleFramework.GameWindowSize.Width, crdStep);
+ cdForceScaledMovieX.Both.Initialize("strCfgForceScaledAVIXBoth", -SampleFramework.GameWindowSize.Width, 1 + SampleFramework.GameWindowSize.Width, crdStep);
+ cdForceScaledMovieX.GBOnly.Initialize("strCfgForceScaledAVIXGB", -SampleFramework.GameWindowSize.Width, 1 + SampleFramework.GameWindowSize.Width, crdStep);
+
+ cdForceScaledMovieY.DrOnly.Initialize("strCfgForceScaledAVIYDr", -SampleFramework.GameWindowSize.Height, 1 + SampleFramework.GameWindowSize.Height, crdStep);
+ cdForceScaledMovieY.Both.Initialize("strCfgForceScaledAVIYBoth", -SampleFramework.GameWindowSize.Height, 1 + SampleFramework.GameWindowSize.Height, crdStep);
+ cdForceScaledMovieY.GBOnly.Initialize("strCfgForceScaledAVIYGB", -SampleFramework.GameWindowSize.Height, 1 + SampleFramework.GameWindowSize.Height, crdStep);
- cdForceFullMovieX.DrOnly.Initialize("strCfgForceFullMovieXDr", -SampleFramework.GameWindowSize.Width, 1 + SampleFramework.GameWindowSize.Width, crdStep);
- cdForceFullMovieX.Both.Initialize("strCfgForceFullMovieXBoth", -SampleFramework.GameWindowSize.Width, 1 + SampleFramework.GameWindowSize.Width, crdStep);
- cdForceFullMovieX.GBOnly.Initialize("strCfgForceFullMovieXGB", -SampleFramework.GameWindowSize.Width, 1 + SampleFramework.GameWindowSize.Width, crdStep);
+ cdForceScaledMovieW.DrOnly.Initialize("strCfgForceScaledAVIWDr", 1, 1 + SampleFramework.GameWindowSize.Width, crdStep);
+ cdForceScaledMovieW.Both.Initialize("strCfgForceScaledAVIWBoth", 1, 1 + SampleFramework.GameWindowSize.Width, crdStep);
+ cdForceScaledMovieW.GBOnly.Initialize("strCfgForceScaledAVIWGB", 1, 1 + SampleFramework.GameWindowSize.Width, crdStep);
- cdForceFullMovieY.DrOnly.Initialize("strCfgForceFullMovieYDr", -SampleFramework.GameWindowSize.Height, 1 + SampleFramework.GameWindowSize.Height, crdStep);
- cdForceFullMovieY.Both.Initialize("strCfgForceFullMovieYBoth", -SampleFramework.GameWindowSize.Height, 1 + SampleFramework.GameWindowSize.Height, crdStep);
- cdForceFullMovieY.GBOnly.Initialize("strCfgForceFullMovieYGB", -SampleFramework.GameWindowSize.Height, 1 + SampleFramework.GameWindowSize.Height, crdStep);
+ cdForceScaledMovieH.DrOnly.Initialize("strCfgForceScaledAVIHDr", 1, 1 + SampleFramework.GameWindowSize.Height, crdStep);
+ cdForceScaledMovieH.Both.Initialize("strCfgForceScaledAVIHBoth", 1, 1 + SampleFramework.GameWindowSize.Height, crdStep);
+ cdForceScaledMovieH.GBOnly.Initialize("strCfgForceScaledAVIHGB", 1, 1 + SampleFramework.GameWindowSize.Height, crdStep);
- bForceFullMovieCentering.DrOnly.Initialize("strCfgForceFullMovieCenteringDr");
- bForceFullMovieCentering.Both.Initialize("strCfgForceFullMovieCenteringBoth");
- bForceFullMovieCentering.GBOnly.Initialize("strCfgForceFullMovieCenteringGB");
+ //bForceFullMovieCentering.DrOnly.Initialize("strCfgForceFullMovieCenteringDr");
+ //bForceFullMovieCentering.Both.Initialize("strCfgForceFullMovieCenteringBoth");
+ //bForceFullMovieCentering.GBOnly.Initialize("strCfgForceFullMovieCenteringGB");
cdComboX.Drums.Both.Initialize("strCfgDispDrComboXBoth", 0, 1 + SampleFramework.GameWindowSize.Width, crdStep);
cdComboX.Drums.DrOnly.Initialize("strCfgDispDrComboXDr", 0, 1 + SampleFramework.GameWindowSize.Width, crdStep);
/// </remarks>
public bool bIsPreviewMovie
{
- get
- {
- return _bIsPreviewMovie;
- }
- set
- {
- _bIsPreviewMovie = value;
- if (value == true)
- {
- this.bFullScreenMovieCentering = true;
- }
- }
+ get; set;
}
- private bool _bIsPreviewMovie;
+ //public bool bIsPreviewMovie
+ //{
+ // get
+ // {
+ // return _bIsPreviewMovie;
+ // }
+ // set
+ // {
+ // _bIsPreviewMovie = value;
+ // //if (value == true)
+ // //{
+ // // this.bFullScreenMovieCentering = true;
+ // //}
+ // }
+ //}
+ //private bool _bIsPreviewMovie;
public bool bHasBGA
/// <summary>
/// ウインドウ全体で再生するAVIを、センタリング表示するかどうか
/// </summary>
- public bool bFullScreenMovieCentering
+ //public bool bFullScreenMovieCentering
+ //{
+ // get;
+ // set;
+ //}
+
+ public int X
{
- get;
- set;
+ get; set;
}
- /// <summary>
- /// ウインドウ全体で再生するAVIを、センタリング表示しない場合の、表示X座標
- /// </summary>
- public int nFullScreenMovieX
+ public int Y
{
- get;
- set;
+ get; set;
}
- /// <summary>
- /// ウインドウ全体で再生するAVIを、センタリング表示しない場合の、表示Y座標
- /// </summary>
- public int nFullScreenMovieY
+ public int Width
{
- get;
- set;
+ get; set;
+ }
+ public int Height
+ {
+ get; set;
}
+ ///// <summary>
+ ///// ウインドウ全体で再生するAVIを、センタリング表示しない場合の、表示X座標
+ ///// </summary>
+ //public int nFullScreenMovieX
+ //{
+ // get;
+ // set;
+ //}
+ ///// <summary>
+ ///// ウインドウ全体で再生するAVIを、センタリング表示しない場合の、表示Y座標
+ ///// </summary>
+ //public int nFullScreenMovieY
+ //{
+ // get;
+ // set;
+ //}
public void PrepareProperSizeTexture(int width, int height)
{
this.rAVI = chip.rAVI; // DTXVモードで、最初に途中再生で起動したときに、ここに来る
}
- this.bFullScreenMovie = (chip.eチャンネル番号 == EChannel.MovieFull || CDTXMania.Instance.ConfigIni.bFullAVI); // DTXVモードで、最初に途中再生で起動したときのために必要
+ this.bFullScreenMovie = (chip.eチャンネル番号 == EChannel.MovieFull); // DTXVモードで、最初に途中再生で起動したときのために必要
this.rAVI.avi.Seek(n移動開始時刻ms - chip.n発声時刻ms);
//this.Start( chip.eチャンネル番号, chip.rAVI, SampleFramework.GameWindowSize.Width, SampleFramework.GameWindowSize.Height, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, chip.n発声時刻ms );
this.Start( chip.eチャンネル番号, chip.rAVI, (int)chip.rAVI.avi.nフレーム幅, (int)chip.rAVI.avi.nフレーム高さ, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, chip.n発声時刻ms );
{
this.rAVI = chip.rAVI; // DTXVモードで、最初に途中再生で起動したときに、ここに来る
}
- this.bFullScreenMovie = (chip.eチャンネル番号 == EChannel.MovieFull || CDTXMania.Instance.ConfigIni.bFullAVI); // DTXVモードで、最初に途中再生で起動したときのために必要
+ //this.bFullScreenMovie = (chip.eチャンネル番号 == EChannel.MovieFull || CDTXMania.Instance.ConfigIni.bForceScalingAVI); // DTXVモードで、最初に途中再生で起動したときのために必要
+ this.bFullScreenMovie = (chip.eチャンネル番号 == EChannel.MovieFull); // DTXVモードで、最初に途中再生で起動したときのために必要
this.rAVI.avi.Seek(n移動開始時刻ms - chip.n発声時刻ms);
this.Start(chip.eチャンネル番号, chip.rAVI, chip.rAVIPan.sz開始サイズ.Width, chip.rAVIPan.sz開始サイズ.Height, chip.rAVIPan.sz終了サイズ.Width, chip.rAVIPan.sz終了サイズ.Height, chip.rAVIPan.pt動画側開始位置.X, chip.rAVIPan.pt動画側開始位置.Y, chip.rAVIPan.pt動画側終了位置.X, chip.rAVIPan.pt動画側終了位置.Y, chip.rAVIPan.pt表示側開始位置.X, chip.rAVIPan.pt表示側開始位置.Y, chip.rAVIPan.pt表示側終了位置.X, chip.rAVIPan.pt表示側終了位置.Y, chip.n総移動時間, chip.n発声時刻ms);
}
public int t進行描画(int x, int y, int w, int h)
{
+ this.X = x;
+ this.Y = y;
+ this.Width = w;
+ this.Height = h;
+ return t進行描画();
+ }
+ public int t進行描画()
+ {
+ int x = X, y = Y, w = Width, h = Height;
+
if (b活性化してる &&
CDTXMania.Instance.ConfigIni.bAVI &&
!CDTXMania.Instance.ConfigIni.bStoicMode)
//if (bFullScreenMovie || bIsPreviewMovie) // #37227 2017.5.29 yyagi: 動画表示の拡縮を、右横ウインドウ表示での動画再生にも適用
{
- CPreviewMagnifier.EPreviewType e = CPreviewMagnifier.EPreviewType.PlayingFront;
+ CPreviewMagnifier.EPreviewType e = CPreviewMagnifier.EPreviewType.PlayingFrontScalable;
if ( bFullScreenMovie ) e = CPreviewMagnifier.EPreviewType.PlayingBackground;
- if ( bIsPreviewMovie ) e = CPreviewMagnifier.EPreviewType.MusicSelect;
+ if ( bIsPreviewMovie ) e = CPreviewMagnifier.EPreviewType.MusicSelect;
- CPreviewMagnifier cmg = new CPreviewMagnifier( e, xx, yy );
+//Trace.TraceInformation("InMovie1:{0},{1},{2},{3} Type={4}", x, y, w, h, e);
+
+ CPreviewMagnifier cmg = new CPreviewMagnifier( e, xx, yy, w, h );
cmg.GetMagnifier(
(int) this.rAVI.avi.nフレーム幅,
(int) this.rAVI.avi.nフレーム高さ,
);
magX = cmg.magX;
magY = cmg.magY;
- if (bFullScreenMovieCentering)
+ //if (bFullScreenMovieCentering)
{
xx = cmg.px;
yy = cmg.py;
}
- else if (bFullScreenMovie)
- {
- xx = nFullScreenMovieX;
- yy = nFullScreenMovieY;
- }
+ ////else if (bFullScreenMovie)
+ ////{
+ //// xx = nFullScreenMovieX;
+ //// yy = nFullScreenMovieY;
+ ////}
// fullscreenでないときはxx=x, yy=yだが、xx,yyの初期値がx,yのためここでわざわざ記載する必要なし
//else
//{
// xx = x;
// yy = y;
//}
+//Trace.TraceInformation("InMovie2:{0},{1},{2},{3}: {4}, {5}", xx, yy, w*magX, w*magY, magX, magY);
}
this.tx描画用.vc拡大縮小倍率.X = magX;
this.rAVI = null;
this.n移動開始時刻ms = -1;
this.bHasBGA = false;
- this.bFullScreenMovie = false;
+ //this.bFullScreenMovie = false;
base.On活性化();
}
}
// (2) バックバッファに txBGA を描画する。
- int x = CDTXMania.Instance.ConfigIni.cdMovieX[ CDTXMania.Instance.ConfigIni.eActiveInst ];
- int y = CDTXMania.Instance.ConfigIni.cdMovieY[ CDTXMania.Instance.ConfigIni.eActiveInst ];
+ int x = CDTXMania.Instance.ConfigIni.cdAVIX[ CDTXMania.Instance.ConfigIni.eActiveInst ];
+ int y = CDTXMania.Instance.ConfigIni.cdAVIY[ CDTXMania.Instance.ConfigIni.eActiveInst ];
txBGA.t2D描画( CDTXMania.Instance.Device, x, y );
}
base.eフェーズID != CStage.Eフェーズ.演奏_STAGE_FAILED_フェードアウト)
{
// AVI / BGA
- actAVI.t進行描画(
- CDTXMania.Instance.ConfigIni.cdMovieX[CDTXMania.Instance.ConfigIni.eActiveInst],
- CDTXMania.Instance.ConfigIni.cdMovieY[CDTXMania.Instance.ConfigIni.eActiveInst],
- CDTXMania.Instance.Coordinates.Movie.W,
- CDTXMania.Instance.Coordinates.Movie.H);
+ //actAVI.t進行描画(
+ // CDTXMania.Instance.ConfigIni.cdAVIX[CDTXMania.Instance.ConfigIni.eActiveInst],
+ // CDTXMania.Instance.ConfigIni.cdAVIY[CDTXMania.Instance.ConfigIni.eActiveInst],
+ // CDTXMania.Instance.Coordinates.Movie.W,
+ // CDTXMania.Instance.Coordinates.Movie.H);
+ actAVI.t進行描画();
actBGA.On進行描画();
#region [MIDIBGM 処理?]
if (base.eフェーズID != CStage.Eフェーズ.演奏_STAGE_FAILED)
{
this.actAVI.bHasBGA = true;
}
- this.actAVI.bFullScreenMovieCentering = (pChip.eチャンネル番号 == EChannel.MovieFull) ? true : CDTXMania.Instance.ConfigIni.bForceFullMovieCentering.Both;
- if (CDTXMania.Instance.ConfigIni.bFullAVI)
+ //this.actAVI.bFullScreenMovieCentering = (pChip.eチャンネル番号 == EChannel.MovieFull) ? true : CDTXMania.Instance.ConfigIni.bForceFullMovieCentering.Both;
+ //this.actAVI.bFullScreenMovieCentering = true;
+ //if (CDTXMania.Instance.ConfigIni.bForceScalingAVI)
+ //{
+ // //if (!this.actAVI.bFullScreenMovieCentering)
+ // //{
+ // this.actAVI.nFullScreenMovieX = CDTXMania.Instance.ConfigIni.cdForceScaledMovieX.Both;
+ // this.actAVI.nFullScreenMovieY = CDTXMania.Instance.ConfigIni.cdForceScaledMovieY.Both;
+ // //}
+ //}
+ //if (pChip.eチャンネル番号 == EChannel.MovieFull || CDTXMania.Instance.ConfigIni.bForceScalingAVI)
+ //if (pChip.eチャンネル番号 == EChannel.MovieFull)
+ //{
+ // this.actAVI.bFullScreenMovie = true;
+ //}
+
+ if (pChip.eチャンネル番号 == EChannel.MovieFull) // 新movie(Fullscreen movie)の場合
{
- if (!this.actAVI.bFullScreenMovieCentering)
- {
- this.actAVI.nFullScreenMovieX = CDTXMania.Instance.ConfigIni.cdForceFullMovieX.Both;
- this.actAVI.nFullScreenMovieY = CDTXMania.Instance.ConfigIni.cdForceFullMovieY.Both;
- }
+ this.actAVI.X = 0;
+ this.actAVI.Y = 0;
+ this.actAVI.Width = SampleFramework.GameWindowSize.Width;
+ this.actAVI.Height = SampleFramework.GameWindowSize.Height;
+//Trace.TraceInformation("MovieFull:{0},{1},{2},{3}", this.actAVI.X, this.actAVI.Y, this.actAVI.Width, this.actAVI.Height);
}
- if (pChip.eチャンネル番号 == EChannel.MovieFull || CDTXMania.Instance.ConfigIni.bFullAVI)
+ else if (CDTXMania.Instance.ConfigIni.bForceScalingAVI) // 旧AVIを拡大表示する場合
{
- this.actAVI.bFullScreenMovie = true;
+ this.actAVI.X = CDTXMania.Instance.ConfigIni.cdForceScaledMovieX[CDTXMania.Instance.ConfigIni.eActiveInst];
+ this.actAVI.Y = CDTXMania.Instance.ConfigIni.cdForceScaledMovieY[CDTXMania.Instance.ConfigIni.eActiveInst];
+ this.actAVI.Width = CDTXMania.Instance.ConfigIni.cdForceScaledMovieW[CDTXMania.Instance.ConfigIni.eActiveInst];
+ this.actAVI.Height = CDTXMania.Instance.ConfigIni.cdForceScaledMovieH[CDTXMania.Instance.ConfigIni.eActiveInst];
+//Trace.TraceInformation("ScaledAVI:{0},{1},{2},{3}", this.actAVI.X, this.actAVI.Y, this.actAVI.Width, this.actAVI.Height);
}
+ else // 旧AVIをそのまま表示する場合
+ {
+ this.actAVI.X = CDTXMania.Instance.ConfigIni.cdAVIX[CDTXMania.Instance.ConfigIni.eActiveInst];
+ this.actAVI.Y = CDTXMania.Instance.ConfigIni.cdAVIY[CDTXMania.Instance.ConfigIni.eActiveInst];
+ this.actAVI.Width = CDTXMania.Instance.Coordinates.Movie.W;
+ this.actAVI.Height = CDTXMania.Instance.Coordinates.Movie.H;
+//Trace.TraceInformation("NormalAVI:{0},{1},{2},{3}", this.actAVI.X, this.actAVI.Y, this.actAVI.Width, this.actAVI.Height);
+ }
+
+ int startWidth = !this.actAVI.bFullScreenMovie ? 278 : SampleFramework.GameWindowSize.Width;
+ int startHeight = !this.actAVI.bFullScreenMovie ? 355 : SampleFramework.GameWindowSize.Height;
switch (pChip.eAVI種別)
{
case EAVIType.AVI:
{
- int startWidth = !this.actAVI.bFullScreenMovie ? 278 : SampleFramework.GameWindowSize.Width;
- int startHeight = !this.actAVI.bFullScreenMovie ? 355 : SampleFramework.GameWindowSize.Height;
this.actAVI.Start(pChip.eチャンネル番号, pChip.rAVI, startWidth, startHeight, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, pChip.n発声時刻ms);
}
break;
{
graphics3.FillRectangle(Brushes.Black,
new Rectangle(
- CDTXMania.Instance.ConfigIni.cdMovieX[CDTXMania.Instance.ConfigIni.eActiveInst],
- CDTXMania.Instance.ConfigIni.cdMovieY[CDTXMania.Instance.ConfigIni.eActiveInst],
+ CDTXMania.Instance.ConfigIni.cdAVIX[CDTXMania.Instance.ConfigIni.eActiveInst],
+ CDTXMania.Instance.ConfigIni.cdAVIY[CDTXMania.Instance.ConfigIni.eActiveInst],
CDTXMania.Instance.Coordinates.Movie.W, CDTXMania.Instance.Coordinates.Movie.H));
}
#endregion
public int px;
public int py;
+ private int freestyle_w, freestyle_h;
+
/// <summary>
/// プレビュー画像向けの拡大率か(それとも、演奏画面向けの拡大率か)
/// </summary>
public enum EPreviewType : int
{
MusicSelect = 0, // 選曲画面
- PlayingFront = 1, // 演奏画面(ウインドウ表示の動画)
- PlayingBackground = 2 // 演奏画面(背景全画面表示の動画)
+ PlayingFront = 1, // 演奏画面(ウインドウ表示の動画,サイズ固定(従来方式)
+ PlayingBackground = 2, // 演奏画面(背景全画面表示の動画)
+ PlayingFrontScalable = 3 // 演奏画面(ウインドウ表示の動画,サイズ可変
}
public EPreviewType ePreviewType;
#endregion
}
public CPreviewMagnifier(EPreviewType _ePreviewType)
{
- CPreviewMagnifier_initializer(_ePreviewType, 0, 0);
+ CPreviewMagnifier_initializer(_ePreviewType, 0, 0, 1, 1);
}
public CPreviewMagnifier( EPreviewType _ePreviewType, int _px, int _py )
{
- CPreviewMagnifier_initializer( _ePreviewType, _px, _py );
+ CPreviewMagnifier_initializer( _ePreviewType, _px, _py, 1, 1 );
+ }
+ public CPreviewMagnifier(EPreviewType _ePreviewType, int _px, int _py, int _w, int _h)
+ {
+ CPreviewMagnifier_initializer(_ePreviewType, _px, _py, _w, _h);
}
- private void CPreviewMagnifier_initializer( EPreviewType _ePreviewType, int _px, int _py)
+ private void CPreviewMagnifier_initializer(EPreviewType _ePreviewType, int _px, int _py, int _w, int _h)
{
this.ePreviewType = _ePreviewType;
this.px = _px;
this.py = _py;
+ this.freestyle_w = _w;
+ this.freestyle_h = _h;
}
#endregion
#region [ アスペクト比を維持した拡大縮小 ]
this.width = width_org;
this.height = height_org;
- this.magX = magX_org * width_fhd_set / width_org;
- this.magY = magY_org * height_fhd_set / height_org;
+ int W = (this.ePreviewType == EPreviewType.PlayingFrontScalable)? freestyle_w : width_fhd_set;
+ int H = (this.ePreviewType == EPreviewType.PlayingFrontScalable)? freestyle_h : height_fhd_set;
+ this.magX = magX_org * W / width_org;
+ this.magY = magY_org * H / height_org;
if ( magX > magY )
{
magX = magY;
- px += (int) ( ( width_fhd_set - ( width_org * magY ) ) / 2 );
+ px += (int) ( ( W - ( width_org * magY ) ) / 2 );
}
else
{
magY = magX;
- py += (int) ( ( height_fhd_set - ( height_org * magX ) ) / 2 );
+ py += (int) ( ( H - ( height_org * magX ) ) / 2 );
}
#endregion
}