/// <summary> /// テクスチャパラム初期化 /// </summary> /// <param name="s"></param> public void InitializeTextureParams(ref ksMaterialStruct s) { Model m = owner_ as Model; textureFileParams_ = new List <TextureFileParam>(); for (int i = 0; i < 4; i++) { textureFileParams_.Add(new TextureFileParam()); textureFileParams_[i].Index = i; if (s.m_Type == (int)Material.MaterialType.TEXTURE_ONLY && s.m_texID[i] >= 0) { textureFileParams_[i].Path = m.TextureDict[s.m_texID[i]]; } else { textureFileParams_[i].Path = ""; } textureFileParams_[i].Owner = this; textureFileParams_[i].PropertyChanged += MaterialTextureParam_PropertyChanged; } }
/// <summary> /// マテリアルデータから初期化 /// </summary> /// <param name="s"></param> public Material(Object owner, ref ksMaterialStruct s, List <Texture> textures) { owner_ = owner; BlendState = RenderState.BlendState.None; DepthState = RenderState.DepthState.Normal; if (s.m_Type == (int)MaterialType.COLOR_ONLY) { diffuseColor_ = s.color; } else { diffuseColor_ = new Color4(1, 1, 1, 1); for (int i = 0; i < 4; i++) { if (s.m_texID[i] < 0) { break; } psShaderViews_[i] = textures[s.m_texID[i]]; } } }