public SharpDX.Size2F サイズdpx => this.ShaderResourceViewSize;
public SharpDX.Matrix 等倍スケーリング行列 => SharpDX.Matrix.Scaling( this.サイズdpx.Width, this.サイズdpx.Height, 1f );
- public テクスチャ( string 画像ファイルパス )
+ public テクスチャ( string 画像ファイルパス, SharpDX.Direct3D11.BindFlags bindFlags = SharpDX.Direct3D11.BindFlags.ShaderResource )
{
+ this.bindFlags = bindFlags;
+
+ // ↓どちらかを選択的に指定する。
this.画像ファイルパス = 画像ファイルパス;
this.ユーザ指定サイズdpx = SharpDX.Size2.Empty;
}
- public テクスチャ( SharpDX.Size2 サイズdpx )
+ public テクスチャ( SharpDX.Size2 サイズdpx, SharpDX.Direct3D11.BindFlags bindFlags = SharpDX.Direct3D11.BindFlags.ShaderResource )
{
+ this.bindFlags = bindFlags;
+
+ // ↓どちらかを選択的に指定する。
this.画像ファイルパス = null;
this.ユーザ指定サイズdpx = サイズdpx;
}
//----------------
if( this.画像ファイルパス.Nullでも空でもない() )
{
+ // (A) 画像ファイルから生成する場合。
this.ShaderResourceView = FDK.Utilities.CreateShaderResourceViewFromFile(
- d3dDevice, FDK.フォルダ.絶対パスに含まれるフォルダ変数を展開して返す( this.画像ファイルパス ), out this.ShaderResourceViewSize, out this.Texture );
+ d3dDevice,
+ this.bindFlags,
+ FDK.フォルダ.絶対パスに含まれるフォルダ変数を展開して返す( this.画像ファイルパス ),
+ out this.ShaderResourceViewSize,
+ out this.Texture );
}
else if( this.ユーザ指定サイズdpx != SharpDX.Size2.Empty )
{
+ // (B) サイズを指定して生成する場合。
this.ShaderResourceView = FDK.Utilities.CreateShaderResourceView(
- d3dDevice, this.ユーザ指定サイズdpx, out this.Texture, target: true );
+ d3dDevice,
+ this.bindFlags,
+ this.ユーザ指定サイズdpx,
+ out this.Texture );
this.ShaderResourceViewSize = new SharpDX.Size2F( this.ユーザ指定サイズdpx.Width, this.ユーザ指定サイズdpx.Height );
}
}
}
+ protected SharpDX.Direct3D11.BindFlags bindFlags;
protected string 画像ファイルパス = null;
protected SharpDX.Size2 ユーザ指定サイズdpx;
protected struct ST定数バッファの転送元データ