From 49c5ba2f379fe6ef4fc02ec9077e5a4b38e812e9 Mon Sep 17 00:00:00 2001 From: =?utf8?q?=E3=81=8F=E3=81=BE=E3=81=8B=E3=81=BF=E5=B7=A5=E6=88=BF?= Date: Fri, 7 Oct 2016 10:48:53 +0900 Subject: [PATCH] =?utf8?q?=E9=81=B8=E6=8C=99=E5=8C=BA=E7=94=BB=E9=9D=A2?= =?utf8?q?=E3=81=AB=E6=96=87=E5=AD=97=E5=88=97=E3=83=86=E3=82=AF=E3=82=B9?= =?utf8?q?=E3=83=81=E3=83=A3=E3=82=92=E4=BD=BF=E3=81=A3=E3=81=A6=E3=82=BF?= =?utf8?q?=E3=82=A4=E3=83=88=E3=83=AB=E3=82=92=E8=A1=A8=E7=A4=BA=E3=80=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit --- .../ステージ/選曲/曲パネルビュー.cs | 12 ++++++++---- .../ステージ/選曲/曲パネルビューD2D.cs | 2 +- StrokeStyleT/曲/MusicNode.cs | 1 - StrokeStyleT/曲/Node.cs | 19 +++++++++---------- 4 files changed, 18 insertions(+), 16 deletions(-) diff --git a/StrokeStyleT/ステージ/選曲/曲パネルビュー.cs b/StrokeStyleT/ステージ/選曲/曲パネルビュー.cs index 697f9cf..0f0facf 100644 --- a/StrokeStyleT/ステージ/選曲/曲パネルビュー.cs +++ b/StrokeStyleT/ステージ/選曲/曲パネルビュー.cs @@ -88,6 +88,8 @@ namespace SST.ステージ.選曲 } else { + #region " カーソルの移動に伴う全パネルの横方向スクロール進行。" + //---------------- this.横スクロール用カウンタ.経過時間の分だけ進行する( 8, () => { int オフセットの加減算速度 = 1; @@ -141,6 +143,8 @@ namespace SST.ステージ.選曲 } } ); + //---------------- + #endregion } // 描画。 @@ -233,8 +237,9 @@ namespace SST.ステージ.選曲 { // ノード画像を表示する。 パネルノード.ノード画像を描画する( dr, this.ワールド変換行列を計算して返す( パネル位置, SharpDX.Matrix.Scaling( パネルノード.ノード画像サイズdpx.Width, パネルノード.ノード画像サイズdpx.Height, 1f ) ) ); - + // タイトル文字列画像を表示する。 + パネルノード.タイトル画像を描画する( dr, this.ワールド変換行列を計算して返す( パネル位置, SharpDX.Matrix.Scaling( パネルノード.タイトル画像サイズdpx.Width, パネルノード.タイトル画像サイズdpx.Height, 1f ), -( パネルノード.ノード画像サイズdpx.Height ) ) ); } else { @@ -242,8 +247,7 @@ namespace SST.ステージ.選曲 this.Nullパネルの画像.進行描画する( dr, this.ワールド変換行列を計算して返す( パネル位置, this.Nullパネルの画像.等倍スケーリング行列 ) ); } } - - protected SharpDX.Matrix ワールド変換行列を計算して返す( SharpDX.Point パネル位置, SharpDX.Matrix 等倍スケーリング行列 ) + protected SharpDX.Matrix ワールド変換行列を計算して返す( SharpDX.Point パネル位置, SharpDX.Matrix 等倍スケーリング行列, float Y方向移動量dpx = 0f ) { // 画面を見ながら直観的に調整した固定パラメータたち。 const float 見かけの倍率 = 3.0f; @@ -257,7 +261,7 @@ namespace SST.ステージ.選曲 // 平行移動 float パネル間縦距離dpx = ( this.Nullパネルの画像.サイズdpx.Height * 見かけの倍率 * 行間 ); - mat = mat * SharpDX.Matrix.Translation( 0f, パネル全体のY方向移動量dpx + ( パネル位置.Y - 1 ) * パネル間縦距離dpx, パネル全体のZ方向移動量dpx ); + mat = mat * SharpDX.Matrix.Translation( 0f, パネル全体のY方向移動量dpx + ( 1 - パネル位置.Y ) * パネル間縦距離dpx + ( Y方向移動量dpx * 見かけの倍率 ), パネル全体のZ方向移動量dpx ); // Y軸回転 mat = mat * SharpDX.Matrix.RotationY( SharpDX.MathUtil.DegreesToRadians( ( パネル位置.X - 4 ) * パネル間X方向角度deg ) ); diff --git a/StrokeStyleT/ステージ/選曲/曲パネルビューD2D.cs b/StrokeStyleT/ステージ/選曲/曲パネルビューD2D.cs index d2c2190..6d88937 100644 --- a/StrokeStyleT/ステージ/選曲/曲パネルビューD2D.cs +++ b/StrokeStyleT/ステージ/選曲/曲パネルビューD2D.cs @@ -287,7 +287,7 @@ namespace SST.ステージ.選曲 変換行列3Dpx *= this.横位置割合からパネルの変換行列を算出して返す( dr, 横位置割合, パネル位置.Y ); // 描画。 - パネルノード.タイトル画像を描画する( dr, 変換行列2Dpx, 変換行列3Dpx ); + //パネルノード.タイトル画像を描画する( dr, 変換行列2Dpx, 変換行列3Dpx ); //----------------- #endregion } diff --git a/StrokeStyleT/曲/MusicNode.cs b/StrokeStyleT/曲/MusicNode.cs index 1b4909d..c9a3c13 100644 --- a/StrokeStyleT/曲/MusicNode.cs +++ b/StrokeStyleT/曲/MusicNode.cs @@ -13,7 +13,6 @@ namespace SST.曲 public class MusicNode : Node { public string sstfファイルパス { get; protected set; } = null; -// public override SharpDX.Size2F ノード画像サイズdpx => this.サムネイル画像?.サイズdpx ?? base.ノード画像サイズdpx; public string 動画ファイルパス { get; protected set; } = null; public MusicNode( string sstfファイルパス ) diff --git a/StrokeStyleT/曲/Node.cs b/StrokeStyleT/曲/Node.cs index 0279a2c..a248bc2 100644 --- a/StrokeStyleT/曲/Node.cs +++ b/StrokeStyleT/曲/Node.cs @@ -66,16 +66,14 @@ namespace SST.曲 } } - public virtual SharpDX.Size2F ノード画像サイズdpx => new SharpDX.Size2F( 314f, 220f ); // 規定の設計値[dpx] - public virtual SharpDX.Size2F タイトル画像サイズdpx => new SharpDX.Size2F( 314f, 220f ); // 規定の設計値[dpx](暫定) - //=> new SharpDX.Size2F( 314f, 82f ); } // 規定の設計値[dpx](最終) + public SharpDX.Size2F ノード全体サイズdpx => new SharpDX.Size2F( 314f, 220f ); + public virtual SharpDX.Size2F ノード画像サイズdpx => new SharpDX.Size2F( 314f, 220f-82f ); + public virtual SharpDX.Size2F タイトル画像サイズdpx => new SharpDX.Size2F( 314f, 82f ); + protected override void On活性化( デバイスリソース dr ) { // タイトル部の文字画像を作成する。 - this.子リスト.Add( this.タイトル文画像 = new 文字列画像( this.タイトル, 20.0f, "メイリオ" ) { - レイアウトサイズdpx = new SharpDX.Size2F( 314f, 220f ), - 下詰め = true, - } ); + this.子リスト.Add( this.タイトル文画像 = new 文字列テクスチャ( this.タイトル ) ); } protected override void On非活性化( デバイスリソース dr ) { @@ -105,12 +103,13 @@ namespace SST.曲 if( Node.既定の曲画像.活性化している ) Node.既定の曲画像.進行描画する( dr, ワールド変換行列 ); } - public virtual void タイトル画像を描画する( デバイスリソース dr, SharpDX.Matrix3x2 変換行列2Dpx, SharpDX.Matrix 変換行列3Dpx, float 不透明度0to1 = 1.0f ) + public virtual void タイトル画像を描画する( デバイスリソース dr, SharpDX.Matrix ワールド変換行列 ) { - this.タイトル文画像.進行描画する( dr, 変換行列2Dpx, 変換行列3Dpx, 不透明度0to1 ); + if( this.タイトル文画像.活性化している ) + this.タイトル文画像.進行描画する( dr, ワールド変換行列 ); } - protected FDK.メディア.文字列画像 タイトル文画像 = null; + protected FDK.メディア.文字列テクスチャ タイトル文画像 = null; protected static FDK.メディア.テクスチャ 既定の曲画像 = null; // 全インスタンスで共有 } -- 2.11.0