nurbs surface resolution is now per segment rather then being distributed over the whole surface.
This is what 2D do alredy and makes resolution settings more like subsurf level. - This makes it impossible to have a lower resolution output then the nurbs cage, however this dosnt seem a very useful feature. - Using the do-versions from recent curve interpolation fix. Tested with these files. http://digilander.libero.it/pafurijaz/Files/Blender/Libellula.zip http://digilander.libero.it/pafurijaz/Files/Blender/Martello.zip http://digilander.libero.it/pafurijaz/Files/Blender/Punta.zip http://digilander.libero.it/pafurijaz/Files/Blender/Phones.zip http://digilander.libero.it/pafurijaz/Files/Blender/Tubo.zip http://digilander.libero.it/pafurijaz/Files/Blender/Pipe.zip http://digilander.libero.it/pafurijaz/Files/Blender/Tire.zip http://digilander.libero.it/pafurijaz/Files/Blender/Cotton.zip
This commit is contained in:
@@ -7879,6 +7879,15 @@ static void do_versions(FileData *fd, Library *lib, Main *main)
|
||||
for(nu= cu->nurb.first; nu; nu= nu->next) {
|
||||
if (nu) {
|
||||
nu->radius_interp = 3;
|
||||
|
||||
/* resolu and resolv are now used differently for surfaces
|
||||
* rather then using the resolution to define the entire number of divisions,
|
||||
* use it for the number of divisions per segment
|
||||
*/
|
||||
if (nu->pntsv > 1) {
|
||||
nu->resolu = MAX2( 1, (int)(((float)nu->resolu / (float)nu->pntsu)+0.5f) );
|
||||
nu->resolv = MAX2( 1, (int)(((float)nu->resolv / (float)nu->pntsv)+0.5f) );
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user