diff options
author | Martin Poirier <theeth@yahoo.com> | 2007-12-11 00:14:19 +0300 |
---|---|---|
committer | Martin Poirier <theeth@yahoo.com> | 2007-12-11 00:14:19 +0300 |
commit | be354c3d095c78b36f8324aa270126611d607c25 (patch) | |
tree | 2dcb254d93df7d14ee237e1217d6570519cfb4b9 /source/blender/blenloader | |
parent | 23a525c52d4f000d4831e17c0795ef9235987601 (diff) | |
parent | 28e071d08c8251cdb568725c5050231b1e169ae2 (diff) |
Merge from Harmonic Skeleton branch
This code adds a basic and simple skeleton generator.
Examples and links are in the wiki, docs will come eventually: http://wiki.blender.org/index.php/User:Theeth/skeletor
In a nutshell, select a vertex at the top of the head and press "Generate Skeleton". UI Panel is in the Editing buttons in Edit Mode, tooltips and semi-useful.
Diffstat (limited to 'source/blender/blenloader')
-rw-r--r-- | source/blender/blenloader/intern/readfile.c | 24 |
1 files changed, 23 insertions, 1 deletions
diff --git a/source/blender/blenloader/intern/readfile.c b/source/blender/blenloader/intern/readfile.c index 68bf1d1815c..4b8418a78b9 100644 --- a/source/blender/blenloader/intern/readfile.c +++ b/source/blender/blenloader/intern/readfile.c @@ -6652,7 +6652,7 @@ static void do_versions(FileData *fd, Library *lib, Main *main) else wrld->ao_samp_method = WO_AOSAMP_HAMMERSLEY; - wrld->ao_adapt_thresh = 0.005; + wrld->ao_adapt_thresh = 0.005f; } for(la=main->lamp.first; la; la= la->id.next) { @@ -6666,6 +6666,7 @@ static void do_versions(FileData *fd, Library *lib, Main *main) } } if(main->versionfile <= 245) { + Scene *sce; bScreen *sc; Object *ob; Image *ima; @@ -6838,6 +6839,27 @@ static void do_versions(FileData *fd, Library *lib, Main *main) for(part=main->particle.first; part; part=part->id.next) if(part->ren_child_nbr==0) part->ren_child_nbr= part->child_nbr; + if (main->versionfile < 245 || main->subversionfile < 11) + { + /* initialize skeleton generation toolsettings */ + for(sce=main->scene.first; sce; sce = sce->id.next) + { + sce->toolsettings->skgen_resolution = 50; + sce->toolsettings->skgen_threshold_internal = 0.01f; + sce->toolsettings->skgen_threshold_external = 0.01f; + sce->toolsettings->skgen_angle_limit = 45.0f; + sce->toolsettings->skgen_length_ratio = 1.3f; + sce->toolsettings->skgen_length_limit = 1.5f; + sce->toolsettings->skgen_correlation_limit = 0.98f; + sce->toolsettings->skgen_symmetry_limit = 0.1f; + sce->toolsettings->skgen_postpro = SKGEN_SMOOTH; + sce->toolsettings->skgen_postpro_passes = 1; + sce->toolsettings->skgen_options = SKGEN_FILTER_INTERNAL|SKGEN_FILTER_EXTERNAL|SKGEN_SUB_CORRELATION; + sce->toolsettings->skgen_subdivisions[0] = SKGEN_SUB_CORRELATION; + sce->toolsettings->skgen_subdivisions[1] = SKGEN_SUB_LENGTH; + sce->toolsettings->skgen_subdivisions[2] = SKGEN_SUB_ANGLE; + } + } } if ((main->versionfile < 245) || (main->versionfile == 245 && main->subversionfile < 2)) { |