public void Dispose() { 乗算差分?.Dispose(); 乗算差分 = null; 加算差分?.Dispose(); 加算差分 = null; 初期値?.Dispose(); 初期値 = null; テクスチャ?.Dispose(); テクスチャ = null; スフィアマップ?.Dispose(); スフィアマップ = null; トゥーンテクスチャ?.Dispose(); トゥーンテクスチャ = null; }
public static エフェクト用材質情報 作成する(IDrawable drawable, MMDFileParser.PMXModelParser.材質 material) { var info = new エフェクト用材質情報() { 材質名 = material.材質名, 材質名_英 = material.材質名_英, 環境色 = new Vector4(material.環境色, 1f), 拡散色 = material.拡散色, エッジ色 = material.エッジ色, 放射色 = new Vector4(1f), 地面影色 = drawable.地面影色, 反射色 = new Vector4(material.反射色, 1f), 反射係数 = material.反射強度, トゥーン色 = new Vector4(0f), エッジ幅 = material.エッジサイズ, エッジが有効である = material.描画フラグ.HasFlag(描画フラグ.エッジ), 地面影が有効である = material.描画フラグ.HasFlag(描画フラグ.地面影), Line描画を使用する = material.描画フラグ.HasFlag(描画フラグ.Line描画), 乗算差分 = new エフェクト用材質情報(), 加算差分 = new エフェクト用材質情報(), テッセレーション係数 = 1.0f, }; info.初期値 = new エフェクト用材質情報() { 環境色 = new Vector4(material.環境色, 1f), 拡散色 = material.拡散色, エッジ色 = material.エッジ色, 放射色 = new Vector4(1f), 地面影色 = drawable.地面影色, 反射色 = new Vector4(material.反射色, 1f), 反射係数 = material.反射強度, トゥーン色 = new Vector4(0f), エッジ幅 = material.エッジサイズ, }; info._リセットする(); return(info); }