[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [28755] branches/soc-2010-moguri/source/ blender: Getting material saving/ loading working again by using fixed arrays.
Mitchell Stokes
mogurijin at gmail.com
Fri May 14 04:27:10 CEST 2010
Revision: 28755
http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=28755
Author: moguri
Date: 2010-05-14 04:27:09 +0200 (Fri, 14 May 2010)
Log Message:
-----------
Getting material saving/loading working again by using fixed arrays. Right now the cap is set to 64, but a constant or something should probably be used instead.
Modified Paths:
--------------
branches/soc-2010-moguri/source/blender/makesdna/DNA_material_types.h
branches/soc-2010-moguri/source/blender/makesrna/intern/rna_material.c
Modified: branches/soc-2010-moguri/source/blender/makesdna/DNA_material_types.h
===================================================================
--- branches/soc-2010-moguri/source/blender/makesdna/DNA_material_types.h 2010-05-14 01:42:42 UTC (rev 28754)
+++ branches/soc-2010-moguri/source/blender/makesdna/DNA_material_types.h 2010-05-14 02:27:09 UTC (rev 28755)
@@ -130,9 +130,9 @@
float rms;
float darkness;
short texco, mapto;
- char* vertex_shader;
- char* fragment_shader;
- char* geometry_shader;
+ char vertex_shader[64];
+ char fragment_shader[64];
+ char geometry_shader[64];
/* ramp colors */
struct ColorBand *ramp_col;
Modified: branches/soc-2010-moguri/source/blender/makesrna/intern/rna_material.c
===================================================================
--- branches/soc-2010-moguri/source/blender/makesrna/intern/rna_material.c 2010-05-14 01:42:42 UTC (rev 28754)
+++ branches/soc-2010-moguri/source/blender/makesrna/intern/rna_material.c 2010-05-14 02:27:09 UTC (rev 28755)
@@ -122,93 +122,6 @@
ma->material_type= value;
}
-static void rna_Material_fragment_get(PointerRNA *ptr, char *value)
-{
- Material *ma= (Material*)ptr->data;
-
- if(ma->fragment_shader)
- strcpy(value, ma->fragment_shader);
- else
- strcpy(value, "");
-}
-
-static int rna_Material_fragment_length(PointerRNA *ptr)
-{
- Material *ma= (Material*)ptr->data;
- return (ma->fragment_shader)? strlen(ma->fragment_shader): 0;
-}
-
-static void rna_Material_fragment_set(PointerRNA *ptr, const char *value)
-{
- Material *ma= (Material*)ptr->data;
-
- if(ma->fragment_shader)
- MEM_freeN(ma->fragment_shader);
-
- if(strlen(value))
- ma->fragment_shader= BLI_strdup(value);
- else
- ma->fragment_shader= NULL;
-}
-
-static void rna_Material_vertex_get(PointerRNA *ptr, char *value)
-{
- Material *ma= (Material*)ptr->data;
-
- if(ma->vertex_shader)
- strcpy(value, ma->vertex_shader);
- else
- strcpy(value, "");
-}
-
-static int rna_Material_vertex_length(PointerRNA *ptr)
-{
- Material *ma= (Material*)ptr->data;
- return (ma->vertex_shader)? strlen(ma->vertex_shader): 0;
-}
-
-static void rna_Material_vertex_set(PointerRNA *ptr, const char *value)
-{
- Material *ma= (Material*)ptr->data;
-
- if(ma->vertex_shader)
- MEM_freeN(ma->vertex_shader);
-
- if(strlen(value))
- ma->vertex_shader= BLI_strdup(value);
- else
- ma->vertex_shader= NULL;
-}
-
-static void rna_Material_geometry_get(PointerRNA *ptr, char *value)
-{
- Material *ma= (Material*)ptr->data;
-
- if(ma->geometry_shader)
- strcpy(value, ma->geometry_shader);
- else
- strcpy(value, "");
-}
-
-static int rna_Material_geometry_length(PointerRNA *ptr)
-{
- Material *ma= (Material*)ptr->data;
- return (ma->geometry_shader)? strlen(ma->geometry_shader): 0;
-}
-
-static void rna_Material_geometry_set(PointerRNA *ptr, const char *value)
-{
- Material *ma= (Material*)ptr->data;
-
- if(ma->geometry_shader)
- MEM_freeN(ma->geometry_shader);
-
- if(strlen(value))
- ma->geometry_shader= BLI_strdup(value);
- else
- ma->geometry_shader= NULL;
-}
-
static void rna_Material_mtex_begin(CollectionPropertyIterator *iter, PointerRNA *ptr)
{
Material *ma= (Material*)ptr->data;
@@ -1596,17 +1509,17 @@
RNA_def_property_update(prop, 0, "rna_Material_draw_update");
prop= RNA_def_property(srna, "fragment_shader", PROP_STRING, PROP_NONE);
- RNA_def_property_string_funcs(prop, "rna_Material_fragment_get", "rna_Material_fragment_length", "rna_Material_fragment_set");
+ RNA_def_property_string_sdna(prop, NULL, "fragment_shader");
RNA_def_property_ui_text(prop, "Fragement Shader", "A custom GLSL fragment shader to use");
RNA_def_property_update(prop, 0, "rna_Material_update");
prop= RNA_def_property(srna, "vertex_shader", PROP_STRING, PROP_NONE);
- RNA_def_property_string_funcs(prop, "rna_Material_vertex_get", "rna_Material_vertex_length", "rna_Material_vertex_set");
+ RNA_def_property_string_sdna(prop, NULL, "vertex_shader");
RNA_def_property_ui_text(prop, "Vertex Shader", "A custom GLSL vertex shader to use");
RNA_def_property_update(prop, 0, "rna_Material_update");
prop= RNA_def_property(srna, "geometry_shader", PROP_STRING, PROP_NONE);
- RNA_def_property_string_funcs(prop, "rna_Material_geometry_get", "rna_Material_geometry_length", "rna_Material_geometry_set");
+ RNA_def_property_string_sdna(prop, NULL, "geometry_shader");
RNA_def_property_ui_text(prop, "Geometry Shader", "A custom GLSL geometry shader to use");
RNA_def_property_update(prop, 0, "rna_Material_update");
More information about the Bf-blender-cvs
mailing list