X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;f=blender%2Fio_mspgl%2Fmaterial.py;h=0c021c2227a9b2a8f704148d33a52fbe453c993d;hb=d78f1335362f4c467ee2003d3c727169f788ce37;hp=b275caa37f54a92a2a459df8ca9d66d7d12d90d0;hpb=180b20bee11425a776c5ead05afcf6a63945d3b2;p=libs%2Fgl.git diff --git a/blender/io_mspgl/material.py b/blender/io_mspgl/material.py index b275caa3..0c021c22 100644 --- a/blender/io_mspgl/material.py +++ b/blender/io_mspgl/material.py @@ -87,6 +87,15 @@ class Material: self.properties = (self.base_color, self.metalness, self.roughness, self.normal, self.emission) + sampler_settings = None + for p in self.properties: + if p.texture: + settings = (p.texture.default_filter, p.texture.interpolation, p.texture.use_mipmap, p.texture.max_anisotropy) + if sampler_settings is None: + sampler_settings = settings + elif settings!=sampler_settings: + raise Exception("Conflicting sampler settings in material textures") + class MaterialMap: def __init__(self, materials): @@ -137,10 +146,10 @@ def create_material_map(context, material): if not material.material_map: raise Exception("Material is not part of a material map") - tech = material.technique + shader = material.shader materials = [] for m in context.blend_data.materials: - if m.material_map and m.technique==tech: + if m.material_map and m.shader==shader: materials.append(m) mat_map = MaterialMap(materials)