svn merge ^/trunk/blender -r42080:42095
[blender.git] / source / blender / makesrna / intern / rna_modifier.c
index a015eec584c317194f243ed2575c06ce9ff4b8c6..013a4e57db69118d05f7e12f6a5ef2eb44ca7bf8 100644 (file)
@@ -97,6 +97,7 @@ EnumPropertyItem modifier_type_items[] ={
        {eModifierType_Smoke, "SMOKE", ICON_MOD_SMOKE, "Smoke", ""},
        {eModifierType_Softbody, "SOFT_BODY", ICON_MOD_SOFT, "Soft Body", ""},
        {eModifierType_Surface, "SURFACE", ICON_MOD_PHYSICS, "Surface", ""},
+       {eModifierType_NgonInterp, "NGONINTERP", ICON_MOD_LATTICE, "Precision UV Interpolation", ""},
        {0, NULL, 0, NULL, NULL}};
 
 #ifdef RNA_RUNTIME
@@ -181,6 +182,8 @@ static StructRNA* rna_Modifier_refine(struct PointerRNA *ptr)
                        return &RNA_MultiresModifier;
                case eModifierType_Surface:
                        return &RNA_SurfaceModifier;
+               case eModifierType_NgonInterp:
+                       return &RNA_NgonInterpModifier;
                case eModifierType_Smoke:
                        return &RNA_SmokeModifier;
                case eModifierType_Solidify:
@@ -486,7 +489,7 @@ static int rna_MultiresModifier_external_get(PointerRNA *ptr)
        Object *ob= (Object*)ptr->id.data;
        Mesh *me= ob->data;
 
-       return CustomData_external_test(&me->fdata, CD_MDISPS);
+       return CustomData_external_test(&me->ldata, CD_MDISPS);
 }
 
 static void rna_MultiresModifier_filepath_get(PointerRNA *ptr, char *value)
@@ -2865,6 +2868,7 @@ static void rna_def_modifier_weightvgproximity(BlenderRNA *brna)
        rna_def_modifier_weightvg_mask(brna, srna);
 }
 
+
 static void rna_def_modifier_ocean(BlenderRNA *brna)
 {
        StructRNA *srna;
@@ -3044,6 +3048,27 @@ static void rna_def_modifier_ocean(BlenderRNA *brna)
 }
 
 
+
+static void rna_def_modifier_ngoninterp(BlenderRNA *brna)
+{
+       StructRNA *srna;
+       PropertyRNA *prop;
+
+       srna= RNA_def_struct(brna, "NgonInterpModifier", "Modifier");
+       RNA_def_struct_ui_text(srna, "Precision UV Modifier", "Precision UV interpolation");
+       RNA_def_struct_sdna(srna, "NgonInterpModifierData");
+       RNA_def_struct_ui_icon(srna, ICON_MOD_SCREW);
+
+       prop= RNA_def_property(srna, "resolution", PROP_INT, PROP_UNSIGNED);
+       RNA_def_property_range(prop, 1, 10000);
+       RNA_def_property_ui_range(prop, 1, 100, 1, 0);
+       RNA_def_property_ui_text(prop, "Resolution", "Size of interpolation grids");
+       RNA_def_property_update(prop, 0, "rna_Modifier_update");
+
+}
+
+
+
 void RNA_def_modifier(BlenderRNA *brna)
 {
        StructRNA *srna;
@@ -3146,6 +3171,10 @@ void RNA_def_modifier(BlenderRNA *brna)
        rna_def_modifier_weightvgproximity(brna);
        rna_def_modifier_dynamic_paint(brna);
        rna_def_modifier_ocean(brna);
+
+
+       /* BMESH_ONLY */
+       rna_def_modifier_ngoninterp(brna);
 }
 
 #endif