Age | Commit message (Collapse) | Author |
|
remove unused operator property
|
|
the verts & faces were bening freed.
|
|
* Added a new property to sculpting, ignore_background_click. If this is on, clicks that don't hit the mesh are passed through, so you can set up the keymap to do ZBrush-like rotation with the tablet.
|
|
Now it's a bit more robust, tagging images with profiles when they're loaded,
which then get interpreted later on by conversion functions. Just Linear RGB
and sRGB profiles at the moment, same as before.
This commit fixes Martin's problem with EXRs and Multilayer images loading/
saving too dark, and it also makes the sequence editor work correctly with it too.
Also fixes:
[#19647] gamma correction with color management is reset when resetting Curve
[#19454] 2.5: Dither does not work when Color management is enabled
|
|
Making shell_angle_to_dist use radians was needed for solidify but somehow broke paint. Need to look into further but for now this fixes it.
|
|
edit and snapping, by clipping the view ray.
|
|
also moved brush curve presets code into curvemapping code.
|
|
* Fix #20482: grab brush + size pressure sensitivity don't work
together, disabled the pressure sensitivty for that case now.
* Fix for smooth brush messing up mesh sometimes, smooth factor
is now clamped to reasonable range.
* Fix #20449: smooth brush + mirror modifier could crash.
|
|
paint modes.
The actual value to increment/decrement by can be customised in key maps.
|
|
This changes how textures are accessed from Brushes, with the intention of simplifying
the workflow, and reducing the amount of clicking. Rather than the previous texture slots
(which didn't work as a stack anyway), brushes now have a single texture linked. Rather
than taking time having to set up your slots in advance, you can now select and change
textures directly as you sculpt/paint on the fly. For complex brushes, node textures can
be used, or for fast access, it's easy to make a duplicate of your brush with the texture
you like and assign a hotkey.
Brush textures can now be chosen from a new Textures panel in the brush tool
properties - click on the thumbnail to open a texture selector. This is done using a new
variation on the ID template - the number of rows and columns to display in the popup
can be customised in the UI scripts.
|
|
Now, there are preset brushes made for each tool type (eg. for sculpt mode, Grab,
Draw, Inflate, etc), and the recommended method for changing sculpt tools is to
change between Brushes. The shortcut keys for changing between tools have
now been changed to change between named brushes - the G key in sculpt
mode now changes to any brush named 'Grab'.
The advantages of this are:
* Changing between brushes remembers the strength/size/texture etc settings for
each brush. This means that for example, you can draw with a strong textured
Clay brush, but then switch quickly to a weaker, untextured Smooth brush,
without having to re-do your settings each time.
* You can now add your own custom shortcut keys to your own custom brushes -
just add a keymap entry similar to the existing ones, that references your own
custom brush names.
To bring over these new default brushes to an existing B.blend setup, just
append them in from the new B.blend in svn.
|
|
From 2 triangles and 1 point, the relative position between the point and the first triangle is applied to the second triangle to find the target point.
the barycentric weights are calculated in 2D space with a signed area so values outside the triangle bounds are supported.
wrapped by python:
pt_to = Geometry.BarycentricTransform(pt_from, t1a, t1b, t1c, t2a, t1b, t1c)
NOTE:
- moved some barycentric weight functions out of projection painting into the math lib.
- ended up making some of the math functions use const args.
TODO:
- support exceptional cases. zero area tries and similar.
|
|
every operator in debug mode.
added some more sculpt key shortcuts
* R toggles rake
* Shift+A toggles airbrush
note: last commit added Ctrl+0 to set zero subsurf and multires
|
|
- T was 'Flatten Brush', now Shift+T
- added an option to OBJECT_OT_subdivision_set to set the level relatively (so page up/down works), however RNA lets it set one level higher then the maximum, this seems displays OK in the 3D view so not sure whats going on here (as if there is always an extra hidden multires level).
|
|
|
|
|
|
scaled/translated objects.
|
|
|
|
* Increase epsilon for intersection a bit more, ortho view + small
faces are problematic.
* Fix a redraw issue with one partial redraw too much at the end of
the stroke.
|
|
in some cases, setting active vertex group to invalid value.
|
|
Also fixes:
* Weight paint subsurf drawing.
* Missing pointer endian conversion in paint brushes.
* Use of unitialized variable in screen version patch.
* Multires modifier without mdisps layer crash.
|
|
|
|
yet, at least prevents the crash for now.
|
|
* Added detection if VBO extension is supported.
* Redraw other 3d views after sculpting.
* Fix brush sometimes punching through mesh with very small polygons,
added an extra epsilon to the ray-triangle intersection.
|
|
* Smooth brush works again for multires.
* Optimal Display option for multires modifier, same as subsurf.
|
|
|
|
Subdivision set with Ctrl+1-5 now works for multires as well.
|
|
svn merge https://svn.blender.org/svnroot/bf-blender/trunk/blender -r24889:25180
|
|
* Don't allow adding/removing multires levels in editmode.
* Customdata code for swapping mdisps restored.
* Fix inflate brush crashing with multires.
* Smooth and layer brush don't work yet with multires, but at
least avoids crashing now.
* Fix threading issue with flatten brush.
|
|
* Multithread parts of multires and subsurf. Only loops working on
face grid data and do no memory allocation have been multithreaded,
others would be more complicated.
* Force some CCGSubsurf functions to be inlined, gives a small overall
speedup in subsurf code.
* Fix sculpting not working correct with transformed objects.
* Fix a few cases of "spikes" on lower level multires levels. There's
still cases where it happens, usually on boundary cornders. The
problem is that in such cases the limit surfaces can be very different
from the low res surface, so the tangent space is very different too..
* Fix crash deleting multires higher levels with level set to 0.
* Fix crashes that happened sometimes when adding faces in editmode.
|
|
to keep same behavior)
2. Add action parameter to Select_All_Toggle operators, rename to Select_All.
Options are Toggle (default), Select, Deselect, Invert (same as select swap). This makes it possible to map separate hotkeys for select all and deselect all.
NOTE for Aligorith: I didn't change animation operators for select_all which already had an Invert operator. These should be fixed eventually.
|
|
svn merge https://svn.blender.org/svnroot/bf-blender/trunk/blender -r24483:24889
|
|
* 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.
|
|
* PBVH can now be created contain both from face grids or standard
meshes. The former is much quicker to build for high res meshes.
* Moved some drawing code into pbvh (mostly for the frustum test).
* Moved ray intersection code into pbvh.
* GPU buffers also can be built from either mesh or grids now.
* Updated sculpt code to work with this. The ugly part is that there
is now a macro for iterating over vertices, to handle both cases,
and some duplicated code for e.g. undo.
* Smooth brush does not work yet with grids.
|
|
* Now uses the CCG DerivedMesh also in object mode, used to be edit mode only.
* Create CD_ORIGINDEX layer on demand, to save memory.
* Removed ss_to_cdderivedmesh function, and instead create ccgdm and then
convert that to cddm, to avoid code duplication.
* Added and implement DerivedMesh interface functions to obtain face grids.
* Store edge/face flags more memory efficient.
* Export CCGDerivedMesh struct in BKE_subsurf.h
|
|
Thanks for the patch Jeff Doyle (nfz)
|
|
Fixed grab brush, was creating holes in the mesh due to uninitialized values.
|
|
Corrected the calculation of the center of the flatten effect.
|
|
- the clipping test function was using the rv3d->viewmatob where it needed to use the object matrix.
- added a local clipping member to rv3d, the clipping planes in object-space, avoids many matrix multiplications when testing verts or clipping pixels when projection painting.
|
|
that useful and I suspect it was the cause of a few bugs
* Added tablet pressure support (size/strength) for weight paint and vertex paint
* Added tablet eraser support for weight paint and vertex paint (inverts the effect of the current tool)
* Removed the old 'soft' option, now weight paint and vertex paint use the influence curve
* Made the default brush use a smooth influence curve, rather than sharp
|
|
|
|
|
|
Fix #19438: sculpt anchored + texture did not center texture correctly.
|
|
-r24330:24483
|
|
* Post-conversion commit, fixing some introduced warnings.
|
|
* Convert all code to use new functions.
* Branch maintainers may want to skip this commit, and run this
conversion script instead, if they use a lot of math functions
in new code:
http://www.pasteall.org/9052/python
|
|
needs looking up.
- rna vars arm.bones.active & rna.edit_bones.active
- needed special undo support.
- readfile.c loads.
- duplicate and copy_armature support.
- keep the draw flag, renamed to BONE_DRAW_ACTIVE, only use for openGL drawing.
Note: it may be better to allow active/unselected as with objects.
|
|
* Draw/Inflate/Layer now keep working on the original mesh coordinates and
normals from when the stroke started. This helps avoid the mesh blowing
up, but can still be better. The old behavior is still available as
"Accumulate" in the UI.
* This requires some more memory usage for the BVH, would like to find a
way to avoid that.
* Smooth falloff is now the default.
* Spacing is now enabled by default, with a value of 7.5.
* Anchored now stores normals per node to save some memory.
|
|
* Smooth: vert-face map is now only created when this tool is used, would be
best to also avoid using it here to avoid a sudden increase in memory, but
is not trivial.
* Grab: now no longer uses active verts list and loops over nodes like other
tools.
* Layer: uses original coordinates from undo now to save memory when not
using persistent layer.
* Anchored: this option works again now, though is still quite slow as it
loops over all verts/faces.
Smooth, layer tools and the anchored option could still be improved to use
less memory and/or work faster by only doing things per node.
|
|
that it is able to store changes in the mesh more compact than global undo.
It doesn't integrate well with multires yet, will tackle that when I start
looking into multires, for now still focusing on sculpt on regular meshes.
|