2 using System.Diagnostics;
9 public class TextureFactory
15 public static CTexture tテクスチャの生成(string fileName, string _label = "" )
17 return tテクスチャの生成(fileName, false, _label);
20 public static CTexture tテクスチャの生成(string fileName, bool b黒を透過する, string _label = "")
22 if (CDTXMania.Instance == null)
28 return new CTexture(CDTXMania.Instance.Device, fileName, CDTXMania.Instance.TextureFormat, b黒を透過する, _label);
30 catch (CTextureCreateFailedException)
32 Trace.TraceError("テクスチャの生成に失敗しました。({0})", fileName);
35 catch (FileNotFoundException)
37 Trace.TraceError("テクスチャファイルが見つかりませんでした。({0})", fileName);
42 public static CTextureAf tテクスチャの生成Af(string fileName, string _label = "")
44 return tテクスチャの生成Af(fileName, false, _label);
47 public static CTextureAf tテクスチャの生成Af(string fileName, bool b黒を透過する, string _label = "")
49 if (CDTXMania.Instance == null)
55 return new CTextureAf(CDTXMania.Instance.Device, fileName, CDTXMania.Instance.TextureFormat, b黒を透過する, _label);
57 catch (CTextureCreateFailedException)
59 Trace.TraceError("テクスチャの生成に失敗しました。({0})", fileName);
62 catch (FileNotFoundException)
64 Trace.TraceError("テクスチャファイルが見つかりませんでした。({0})", fileName);
69 public static void tテクスチャの解放(ref CTexture tx)
71 t安全にDisposeする(ref tx);
74 public static void tテクスチャの解放(ref CTextureAf tx)
76 t安全にDisposeする(ref tx);
79 public static CTexture tテクスチャの生成(byte[] txData, string _label = "")
81 return tテクスチャの生成(txData, false, _label);
84 public static CTexture tテクスチャの生成(byte[] txData, bool b黒を透過する, string _label = "")
86 if (CDTXMania.Instance == null)
92 Trace.TraceError("テクスチャの生成に失敗しました。(txData==null)");
97 return new CTexture(CDTXMania.Instance.Device, txData, CDTXMania.Instance.TextureFormat, b黒を透過する, _label);
99 catch (CTextureCreateFailedException)
101 Trace.TraceError("テクスチャの生成に失敗しました。(txData)");
106 public static CTexture tテクスチャの生成(Bitmap bitmap, string _label = "")
108 return tテクスチャの生成(bitmap, false, _label);
111 public static CTexture tテクスチャの生成(Bitmap bitmap, bool b黒を透過する, string _label = "")
113 if (CDTXMania.Instance == null)
119 Trace.TraceError("テクスチャの生成に失敗しました。(bitmap==null)");
124 return new CTexture(CDTXMania.Instance.Device, bitmap, CDTXMania.Instance.TextureFormat, b黒を透過する, _label);
126 catch (CTextureCreateFailedException)
128 Trace.TraceError("テクスチャの生成に失敗しました。(bitmap:{0}x{1} )", bitmap.Width, bitmap.Height);
134 /// <summary>プロパティ、インデクサには ref は使用できないので注意。</summary>
135 public static void t安全にDisposeする<T>(ref T obj)
140 var d = obj as IDisposable;