Blender Git Loki
Git Commits -> Revision fffce6c
Revision fffce6c by Brecht Van Lommel (master) November 25, 2009, 14:07 (GMT) |
Sculpt: Multires * Displacement coordinates are now stored differently, as a grid per face corner. This means there is duplication of coordinates, especially at low subdivision levels, but the simpler implementation justifies it I think. * ToDo: conversion of existing multires files (2.4x or 2.5x), loading them may even crash now. * Editmode preservation/interpolation code also has not been updated yet. * Multires now works on the CCGDerivedMesh grids instead of CDDerivedMesh, which should be more memory efficient. * There are still bad memory peaks (if you're using 32bit) when subdividing or propagating displacements. Though at least there should be no huge memory blocks allocated, which windows is now to have trouble with. * Still found some weird spike artifacts at lower multires levels, some also happening before this commit. Perhaps computation of tangents needs to be tweaked more. * Multires modifier now has viewport, sculpt and render levels. Also the levels have been made consistent with subsurf, previously the same level of subdivision was one less for multires. * Both multires and subsurf modifier now can have their subdivision level set to 0 for no subdivision. |
Commit Details:
Full Hash: fffce6c5545c3072d2dd266dfe5c133b760baebe
SVN Revision: 24886
Parent Commit: 134935a
Lines Changed: +582, -1276
15 Modified Paths:
/source/blender/blenkernel/BKE_modifier.h (+1, -1) (Diff)
/source/blender/blenkernel/BKE_multires.h (+1, -19) (Diff)
/source/blender/blenkernel/intern/cdderivedmesh.c (+0, -212) (Diff)
/source/blender/blenkernel/intern/customdata.c (+8, -0) (Diff)
/source/blender/blenkernel/intern/DerivedMesh.c (+1, -1) (Diff)
/source/blender/blenkernel/intern/displist.c (+3, -3) (Diff)
/source/blender/blenkernel/intern/lattice.c (+1, -1) (Diff)
/source/blender/blenkernel/intern/modifier.c (+50, -45) (Diff)
/source/blender/blenkernel/intern/multires.c (+439, -957) (Diff)
/source/blender/blenloader/intern/readfile.c (+6, -8) (Diff)
/source/blender/blenloader/intern/writefile.c (+0, -6) (Diff)
/source/blender/editors/object/object_modifier.c (+10, -3) (Diff)
/source/blender/editors/sculpt_paint/sculpt.c (+5, -5) (Diff)
/source/blender/makesdna/DNA_modifier_types.h (+2, -6) (Diff)
/source/blender/makesrna/intern/rna_modifier.c (+55, -9) (Diff)
/source/blender/blenkernel/BKE_multires.h (+1, -19) (Diff)
/source/blender/blenkernel/intern/cdderivedmesh.c (+0, -212) (Diff)
/source/blender/blenkernel/intern/customdata.c (+8, -0) (Diff)
/source/blender/blenkernel/intern/DerivedMesh.c (+1, -1) (Diff)
/source/blender/blenkernel/intern/displist.c (+3, -3) (Diff)
/source/blender/blenkernel/intern/lattice.c (+1, -1) (Diff)
/source/blender/blenkernel/intern/modifier.c (+50, -45) (Diff)
/source/blender/blenkernel/intern/multires.c (+439, -957) (Diff)
/source/blender/blenloader/intern/readfile.c (+6, -8) (Diff)
/source/blender/blenloader/intern/writefile.c (+0, -6) (Diff)
/source/blender/editors/object/object_modifier.c (+10, -3) (Diff)
/source/blender/editors/sculpt_paint/sculpt.c (+5, -5) (Diff)
/source/blender/makesdna/DNA_modifier_types.h (+2, -6) (Diff)
/source/blender/makesrna/intern/rna_modifier.c (+55, -9) (Diff)