Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2011-09-22comment some unused vars / assignments.Campbell Barton
2011-08-29brought back some unused variables removed from previous commit, commented ↵Howard Trickey
out, in case need their values later
2011-08-25Cleaned up unused variablesHoward Trickey
2011-08-24svn merge -r39493:39664 https://svn.blender.org/svnroot/bf-blender/trunk/blenderCampbell Barton
2011-08-23fix [#28344] for this file, the multires smiley has 2 materials, but only 1 ↵Campbell Barton
loads
2011-07-29fix for last mergeCampbell Barton
2011-07-29svn merge -r38718:38804 https://svn.blender.org/svnroot/bf-blender/trunk/blenderCampbell Barton
2011-07-28New option for multires modifier: Subdivide UVsSergey Sharybin
Enabled by default and also enabled for older filesm so there should be no regressions. In some cases it's useful to not use subdivided uvs for multires.
2011-07-24svn merge -r37335:37500 https://svn.blender.org/svnroot/bf-blender/trunk/blenderCampbell Barton
2011-06-14=bmesh=Joseph Eagar
Removed the DerivedMesh face iterators (they sucked). This should make subsurf faster. Also sped up multires a bit (not sure if it's strictly correct, need to look at it later).
2011-06-09svn merge -r37078:37335 https://svn.blender.org/svnroot/bf-blender/trunk/blenderCampbell Barton
2011-06-09replace log() calls with constantsCampbell Barton
2011-06-06Bake from multires meshSergey Sharybin
======================= Added option to baked named "Bake From Multires" which is avaliable for normals baking and displacement baking. If this option is enabled, then no additional hi-res meshes and render structures would be created . This saves plenty of memory and meshes with millions of faces could be successfully baked in few minutes. Baking happens from highest level against viewport subdivision level, so workflow is following: - Set viewport level to level at which texture would be applied during final rendering. - Choose Displacement/Normals baking. - Enable "Bake From Multires" option. - You're ready to bake. Displacement baker had aditional option named "Low Resolution Mesh". This option is used to set if you want texture for realtime (games) usage. Internally it does the following: - If it's disabled, displacement is calculated from subdivided viewport level, so texture looks "smooth" (it's how default baked works). - If it's enabled, dispalcement is calculated against unsubdivided viewport levels. This leads to "scales". This isn;t useful for offline renders much, but very useful for creating game textures. Special thanks to Morten Mikkelsen (aka sparky) for all mathematics and other work he've done fr this patch!
2011-06-02Fix #27539: Sculpt data is lost after editing base meshSergey Sharybin
Face's totdisp was set to correct value, but memory hasn't been allocated for disps. Handle this in multires_topology_changed(), so the whole MDISPS layer wouldn't be totally re-allocated when applying displacement.
2011-05-20svn merge -r36725:36801 https://svn.blender.org/svnroot/bf-blender/trunk/blenderCampbell Barton
2011-05-19Fix crash when accessing mesh from python while a mesh with a subsurf modifierBrecht Van Lommel
is in editmode.
2011-05-13remove unused varsCampbell Barton
2011-04-15=bmesh= merge from trunk at r36153Joseph Eagar
2011-03-31=bmesh= various bugfixesJoseph Eagar
2011-03-30=bmesh=Joseph Eagar
Multires interpolation is now nearly perfect, but has some issues on faces whose angle to each other isn't relatively shallow (probably need to use some sort of fast spatial structure to more accurately project multires points). It also doesn't work super well with bevel (mostly due to a flipped normals bug in bevel I need to get around to fixing). And, for some reason extrude tends to explode the multires geometry (it should just be copying it). Since edge cut doesn't do anything yet with face interpolation, cuts that arn't exactly centered will move the underlying multires geometry around a bit..
2011-03-29=bmesh=Joseph Eagar
Multires interpolation is considerably better now, though it still has a problem with occasionally producing little random tangent spikes. Still, it's far better then it was. Also fixed a bug in dissolve faces.
2011-03-27=bmesh=Joseph Eagar
Multires interpolation. It's quite usable yet; I wanted to avoid subsurfing the multires data and ray tracing original/new topology. The result is kindof like trunk's interpolation. I'll see how much better I can get it. I might have to go with the full-on ray tracing solution. Right now, it's not very good. Also made it so trunk files with multires open correctly.
2011-03-03=bmesh=Joseph Eagar
Fixed view selected code. Made MDisps->disps use the special allocation library I wrote as a temporary fix to MDeformGroup->dw problems. Why was the vgroup solution reused? It's really slow, and its hard to tie in something like mempool or memarena. The hackish allocator I wrote really needs to go, eventually, or be folded into guardedalloc. Also fixed a customdata bug with modifiers.
2011-02-27doxygen: blender/blenkernel tagged.Nathan Letwory
2011-02-27merge with/from trunk at r35190Joseph Eagar
2011-02-13fix for warnings from Sparse static source code checker, mostly BKE/BLI and ↵Campbell Barton
python functions. - use NULL rather then 0 where possible (makes code & function calls more readable IMHO). - set static variables and functions (exposed some unused vars/funcs). - use func(void) rather then func() for definitions.
2011-02-12access past array bounds in layerInterp_mdisps, also make some vars const.Campbell Barton
2011-01-31Todo issue: sculpting on deformed meshSergey Sharybin
Used a crazyspace approach (like in edit mode), but only modifiers with deformMatricies are allowed atm (currently shapekeys and armature modifiers only). All the rest modifiers had an warning message that they aren't applied because of sculpt mode. Deformation of multires is also unsupported. With all this restictions users will always see the actual "layer" (or maybe mesh state would be more correct word) they are sculpting on. Internal changes: - All modifiers could have deformMatricies callback (the same as deformMatriciesEM but for non-edit mode usage) - Added function to build crazyspace for sculpting (sculpt_get_deform_matrices), but it could be generalized for usage in other painting modes (particle edit mode, i.e) Todo: - Implement crazyspace correction to support all kinds of deformation modifiers - Maybe deformation of multires isn't so difficult? - And maybe we could avoid extra bad-level-stub for ED_sculpt_modifiers_changed without code duplicating?
2011-01-30Total displacement levels should be set in multires_topology_changedSergey Sharybin
2011-01-13remove/comment unused varsCampbell Barton
also removed unnecessary NULL checks (where the pointer was used later without checking).
2011-01-11comment/remove unused vars from particle and multires code.Campbell Barton
also remove calls to dm->getFaceDataArray() within a loop for particle grid distribution, instead call this once at the start and reuse the result.
2011-01-08Fix for bug [#21534] Multires modifier strange deformationsNicholas Bishop
This adds the "Apply Base" feature from my gsoc2010 branch. Apply Base partially applies the modifier, in that the mesh is reshaped to more closely match the deformed mesh. The upper-level displacements are recalculated so that the highest multires level appears unchanged. Multires does not currently deal well with too large displacements. An easy-to-reproduce example: create any mesh type, add multires, subdivide a few times, then use the sculpt grab brush to drag the entire mesh over a few units. At the highest level, and at level 0, the mesh looks fine, but all of the intervening levels will have ugly spikes on them. This patch doesn't help with situations where you can't modify the base mesh, but otherwise works around the problem fairly well (albeit with a heuristic, not an exact solution.)
2011-01-07remove references to BKE_utildefines where its not needed.Campbell Barton
- move GS() define into DNA_ID.h - add BLI_utildefines as an automatic include with makesrna generated files.
2011-01-07split BKE_utildefines.h, now it only has blender specific defines like GS() ↵Campbell Barton
MAKE_ID, FILE_MAXDIR, moved the generic defines to BLI_utildefines.h. no functional changes.
2011-01-05Get rid of uninitialized variable and malicios derived mesh relising.Sergey Sharybin
Pointer by llvn analyzer.
2011-01-02Splitting quad into triangles and merging triangles into quad shouldSergey Sharybin
work correct with sculpting data now. Joining two triangles could give incorrect sculpting result for special topologies, but it's that case that can't be nicely handled with our layers architecture.
2011-01-02Multires math function used for layer interpolation moved from customdata.c ↵Sergey Sharybin
to multires.c No functional changes
2010-12-14Initial implementation of mdisps layer interpolationSergey Sharybin
Sculpt data shouldn't be lost when making topology changes without quads<->tris face converison. General idea: - Go through all grid points of each corner and convert per-corner coordiante to per-face cooredinate - Apply weights and convert new point to per-corner coordinate - Use bilinear interpolation to get needed displacement vector Some additional work was necessery: - Two neighbour corners could have different displacements along common boundary. multires_mdisp_smooth_bounds() makes displacement "symmetrical" - Point could change it's corner, so displacement vector should be flipped in some way. In some cases it's not only flipping, because corner could be mapped with some rotation. It's not solved for triangular faces yet, so only z-axis displacement would be interpolated for tris. More limitations: - Interpolation will give incorrect result after quad<->triangle face conversion. - When face normal was fillped displacement would change it's direction too.
2010-12-13Use mdisps layer from edit_mesh when adding/removing multires modifierSergey Sharybin
when object is in edit mode.
2010-11-20== Multires ==Nicholas Bishop
Fixed bug #20620, "VertColors and Flat/Soft imported from 2.49 are wrong (MultiRes)" reported by Manuel R. * Added function to load level-0 vertex colors * Added function to load level-0 face flags * Warning: the 2.5 multires modifier doesn't support multires vertex colors or multires face flags; that data will be lost if you import it into 2.5.
2010-11-10Removed unused code from multires moduleSergey Sharybin
2010-11-08Fixed own mistake from previous commit -- get_levels_from_disps can't be usedSergey Sharybin
when handling topology changes. Added grid size detection based on totdisp and corners count.
2010-11-08Fix crash when creating new faces in edit modeSergey Sharybin
- Do not check corners count if totdisp is set to 0 - Allocate memory for such mdisps to prevent the whole disp layer erasing
2010-11-05Read external mdisp when hamdling topology changesSergey Sharybin
2010-11-05minor c90 compat edits. (no functional changes).Campbell Barton
2010-11-04Fix #24388: multires base meshSergey Sharybin
- MDisp should be re-allocated if face changed amount of vertices - Allocate disps array in layerSwap_mdisps to prevent loosing all highres data
2010-11-02Fix #24485: Applying scale to multires object end up in a blender crashSergey Sharybin
Fixed multires_apply_smat to work properly with different current and total subdivision levels.
2010-10-31initialize structs to zero rather then using memset().Campbell Barton
2010-10-25Fix #24255: Multires object gets modified when joining it to another ↵Sergey Sharybin
multires object. Fix #22018: joining objects with different multires levels loses levesl from the higher multires object - Synchronyze mulires subdivision level when joining objects - Apply scale on MDISP layer when applying scale - Re-calculate MDISP when joining scaled objects
2010-10-21/WX enabled for MSVC in CMake too.Nathan Letwory
Warning fixes.