private void CreateShadowMaterial(MaterialContent material) { var materialData = new MyreMaterialData(); materialData.EffectName = Path.GetFullPath("DefaultShadows.fx"); materialData.Technique = "ViewLength"; var shadowMaterial = context.Convert <MyreMaterialData, MyreMaterialContent>(materialData, "MyreMaterialProcessor"); processedMaterials[material].Add("shadows_viewlength", shadowMaterial); materialData = new MyreMaterialData(); materialData.EffectName = Path.GetFullPath("DefaultShadows.fx"); materialData.Technique = "ViewZ"; shadowMaterial = context.Convert <MyreMaterialData, MyreMaterialContent>(materialData, "MyreMaterialProcessor"); processedMaterials[material].Add("shadows_viewz", shadowMaterial); }
private void CreateGBufferMaterial(MaterialContent material, MeshContent mesh) { //System.Diagnostics.Debugger.Launch(); var diffuseTexture = FindDiffuseTexture(mesh, material); var normalTexture = FindNormalTexture(mesh, material); var specularTexture = FindSpecularTexture(mesh, material); if (diffuseTexture == null) { return; } var materialData = new MyreMaterialData(); materialData.EffectName = Path.GetFullPath("DefaultGBuffer.fx"); materialData.Technique = "ClipAlpha";//IsOpaque(diffuseTexture) ? "Default" : "ClipAlpha"; materialData.Textures.Add("DiffuseMap", diffuseTexture); materialData.Textures.Add("NormalMap", normalTexture); materialData.Textures.Add("SpecularMap", specularTexture); var gbufferMaterial = context.Convert <MyreMaterialData, MyreMaterialContent>(materialData, "MyreMaterialProcessor"); processedMaterials[material].Add("gbuffer", gbufferMaterial); }