Commit Graph

35960 Commits

Author SHA1 Message Date
Campbell Barton
75a4832af3 svn merge ^/trunk/blender -r43676:43685 2012-01-24 22:44:48 +00:00
Campbell Barton
1aadbdedc7 found a bug by accident.
- bugfix for setting string defaults in rna functions (incorrect pointer use and would copy past string length).
- Object.dm_info was setting a default when it didnt need to.
2012-01-24 22:15:25 +00:00
Campbell Barton
3f31145d29 define to enable tesselate to quads, this way files from trunk tesselate back into their original geometry with the same face order.
this will be needed for tangents and most likely hair if its to load correctly from trunk.

disabled for now until this is working correctly - hair still needs more work.
2012-01-24 20:58:43 +00:00
Thomas Dinges
fb1fba1454 Node UI:
* Make sure to check on snode_id, raised errors if no world datablock was active.
2012-01-24 20:56:19 +00:00
Campbell Barton
5cf9f8ab90 fix for memory leak when particles have 0 elements. 2012-01-24 20:33:26 +00:00
Thomas Dinges
8169ad0219 Improvement for last commit, only do redraw when actually needed (in world shader type) 2012-01-24 20:19:26 +00:00
Campbell Barton
d3090a32f2 svn merge ^/trunk/blender -r43664:43676 2012-01-24 20:19:09 +00:00
Sergey Sharybin
d888b19d90 Fix compilation error caused by recent changes in file browser stuff 2012-01-24 20:13:44 +00:00
Thomas Dinges
c905415f6b Cycles Node Editor:
* Add Use Nodes button for World shader type
* UI was not redrawing the Node area, when enabling "Use nodes", added check for it to the listener.
2012-01-24 20:10:37 +00:00
Campbell Barton
439e9a39a8 use a struct to pass normals to normal draw derived mesh callbacks (no functional changes) 2012-01-24 19:57:34 +00:00
Antony Riakiotakis
7a628a3967 Enable 16 bit format for float textures by default after discussion with Morten and Sergey on irc. Rationale is that for most cases when people create a float texture they will expect the extra precision in the 3D view.
This shouldn't be a problem on any graphics card since internally a very old texture format (GL 1.1) is used. In the case of any unlikely screams, a revert of this commit can be done.
2012-01-24 19:54:18 +00:00
Campbell Barton
3d01f13c43 fix for 3 issues when applying a deform modifier in editmode.
- drawing face normals was broken (using wrong index).
- drawing flat faces in solid mode would display ugly tesselation normals (as if the model was made of triangles).
- drawing smooth faces in solid mode would show vertex normals based on tesselation (heavily slant in 1 direction).

now the normals are calculated and stored per polygon (will save some memory too for non tri meshes).
2012-01-24 19:37:18 +00:00
Miika Hamalainen
e6e88ff7c1 Dynamic Paint:
* Converted some more functions to use mpolys/mloops instead of tessellated faces.
* Fixed some bmesh related issues.
2012-01-24 18:29:01 +00:00
Campbell Barton
b320e3ee5b remove redundant casts. 2012-01-24 18:24:19 +00:00
Campbell Barton
ab52d677bc simplify editmesh mapping lookups.
this really has no effect since they were not created or used, however if we want to use emDM_getEdge or emDM_getTessFace this will need to be called.
2012-01-24 18:20:33 +00:00
Sergey Sharybin
44850d6946 Fix #29946: Recover Auto Save defaults to "Short List" View -- Cannot determine dates
Added option display_type to WM_operator_properties_filesel which defines which file
display type (short/list/icons/default) should be used for file browser.

All current operators are using FILE_DEFAULTDISPLAY display type which means display
type will still be calculated based on type of opening file and user preferences
settings. Recover Auto Save operator is now using long display type so file date can
easily be checked now.

Reviewed by Andrea, thanks!
2012-01-24 18:18:51 +00:00
Miika Hamalainen
8f7762c356 Dynamic Paint:
* Fix: Substep update failed if brush was parented to a canvas vertex. Now substeps are ignored in such case.
* Fix: Wave "open borders" option didn't work for image sequence format.
* Fixed a possible crash after changing surface format to image sequence.
* Some code cleanup.
2012-01-24 17:28:50 +00:00
Campbell Barton
d5c4f030df correct error in recent merge. 2012-01-24 16:54:21 +00:00
Dalai Felinto
335ffb0ff3 Brightness/Contrast Node for Cycles
Contrast helps to adjust IBL (HDR images used for background lighting).
Note: In the UI we are caling it Bright instead of Brightness. This copy what Blender composite is doing.
Note2: the algorithm we are using produces pure black when contrast is 100. I'm not a fan of that, but it's a division by zero. I would like to look at other algorithms (what gimp does for example). But that would be only after 2.62.
2012-01-24 16:32:31 +00:00
Campbell Barton
4af4863baf svn merge ^/trunk/blender -r43639:43664 2012-01-24 16:18:20 +00:00
Campbell Barton
1f9e25ac1a comment unused assignment. 2012-01-24 15:51:44 +00:00
Campbell Barton
58c51bb551 quiet some warnings & (possible/unlikely error) 2012-01-24 15:37:50 +00:00
Bastien Montagne
925234f1e0 New fix for [#29940] Stretch To constraint breaks scaling in Transform constraint, previous one caused bug [#29962] linked objects not correct on r4361, should be fixed now.
Org code was working with isotropic scaling, but when scaling only one axis, it was broken. First fix just disabled completly scale handling. This version only takes into account scaling along local Y axis, as this is the only one affecting that constraint!

Sorry for the mistake, hope this time it will be ok.
2012-01-24 13:17:32 +00:00
Sergey Sharybin
1c33126cf5 Fix #29975: Track Preview color channels not filtering correctly
Typo in checking bitflags
2012-01-24 12:25:03 +00:00
Joshua Leung
b8fe464b62 Bugfix: Circle-select in Pose Mode disregarded layer visibility, selecting
invisible bones too
2012-01-24 08:43:39 +00:00
Sergey Sharybin
9998d1235b Fix #29965: Crash: Memory psys node array: end corrupt
Original indices from right operand were used in boolean result derived mesh
which lead to crash if right operand has got more entities (faces/edges/vertices)
than left operand.
2012-01-24 08:43:17 +00:00
Andrew Hale
e634cb2607 Add the .Identity() classmethod to mathutils matrices. This allows the user
to create an identity matrix of a specific size without having to specify
all the values in the matrix and then use the .identity() method.
2012-01-24 01:56:44 +00:00
Campbell Barton
d7e30369f8 commented smoke collision derived mesh,
was storing its own copy of the collision mesh but never using it.
2012-01-24 01:21:43 +00:00
Campbell Barton
644e44e7b6 remove unneeded re-tessellation converting metaball to mesh. 2012-01-24 00:52:26 +00:00
Campbell Barton
e236fb157a fix leak in mirror modifier. 2012-01-24 00:26:12 +00:00
Campbell Barton
8c6120e5ff fix for crash with mesh undo with shape keys
'undomesh' was also used in confusing way (relied on mesh being first member).
2012-01-23 23:53:21 +00:00
Campbell Barton
7138e6aa9c comment unused code. 2012-01-23 23:39:51 +00:00
Bastien Montagne
ebe01d06bc Misc picky edits to UI messages. 2012-01-23 22:57:46 +00:00
Campbell Barton
12531c5c76 fix for crash applying solidift after subsurf 2012-01-23 21:04:56 +00:00
Campbell Barton
d65a5a92f9 assertion when bvhtree_from_mesh_faces is called and tessfaces dont exist. 2012-01-23 20:46:38 +00:00
Dalai Felinto
5585b3e908 rst bge touch ups: making the title of the examples slightly more noticeable
-  it's still not correct, comparing to the other examples, but at least it looks okish.
-  fixed some small typos
2012-01-23 19:53:23 +00:00
Campbell Barton
99dc4ec691 BLI_array_reserve from bmesh. 2012-01-23 19:42:22 +00:00
Sergey Sharybin
be0be0b1a9 Fix #29970: Crash trying to track disabled marker 2012-01-23 19:32:00 +00:00
Sergey Sharybin
69b7a3a72a Fix compilation error caused by code cleanup 2012-01-23 17:49:56 +00:00
Sergey Sharybin
e079bf8184 Carve booleans: corrected copyright header 2012-01-23 17:44:19 +00:00
Sergey Sharybin
7d22a41a3d Carve booleans: code and style cleanup 2012-01-23 17:44:05 +00:00
Sergey Sharybin
690c77dd7d Fix #29934: New Carve library can't execute boolean operations in some cases
Issue was caused by left boolean operand consist of several intersecting manifolds
which make Carve triangulator confused and which can't be resolved in general case.
Added mesh pre-processing before actual applying boolean operator on it. This
preprocessing applies union operation on intersecting manifolds of the same object
so intersection edge loop with second object wouldn't confuse tesselator and correct
result would be returned.
Detecting of intersecting manifolds is based on AABB intersection check which leads
to some extra union operation called, but it's possible to speed things up from
Carve side so union operation of two not intersecting meshes would work faster.
Additional condition for running union for manifold is this manifolds intersects
AABB of second operand, so mesh topology wouldn't be changed at all in areas
where there's definitely no intersection between operands. It might be improved
so only manifolds which actually intersects second operand would be joined
together, but it'll slow things down a bit and prefer to do it only if it'll
be really a problem.

Additional change is fixed memory leak when boolean operation fails to run -
it was missed "delete" call if exception happens in Carve library.

From side effects of this change might be named boolean operation between
suzanne and another object: suzanne is consist of three intersecting open
manifolds, so this new meshes preprocessing leads to missed eyes in result
because of failure of merging two open manifolds. Don't think making suzanne
work for all setups should really be a goal, it's a bit crappy mesh for CSG
algorithms.
2012-01-23 17:43:41 +00:00
Bastien Montagne
92aa15805d BMesh: Fix for previous own fix (re-enable DynamicPaint previews in Object mode).
In fact, we have to add a CD_WEIGHT_MCOL layer (if not yet present) when updating CD_WEIGHT_MLOOPCOL, else with modifiers modifying the topology (like subsurf), it will sigsev.

That step should probably be done at tesselation time, though…
2012-01-23 17:17:08 +00:00
Campbell Barton
5cc898ada2 svn merge ^/trunk/blender -r43616:43639 2012-01-23 16:46:35 +00:00
Bastien Montagne
6c9438ea8a BMesh: Fix (re-enable) DynamicPaint previews in Object mode.
Also simplifies DM_update_weight_mcol: no need to update CD_WEIGHT_MCOL here, as it is anyway recreated from CD_WEIGHT_MLOOPCOL at tesselation time. Only commented out code for now.
2012-01-23 16:32:11 +00:00
Campbell Barton
76f03a2ee4 use same default as trunk for cylinder depth 2012-01-23 14:03:09 +00:00
Campbell Barton
41c0f0c733 replace BLI_array_growone() with BLI_array_growitems() when the size of the increase is known ahead of time, will reduce reallocs and give some speedup. 2012-01-23 13:51:44 +00:00
Campbell Barton
001a15a721 speedup for mesh -> bmesh conversion
- was looping over all verts/edges/faces to setup the selection store, even when there was no selection store (mselect), since this is fairly common case, add a check.

also use BLI_array_growitems rather then BLI_array_growone to allocate in larger steps.
2012-01-23 13:50:00 +00:00
Campbell Barton
f8d21588b6 fix for leak in bmesh_jekv() when large ngons were being used.
also make BLI_array use more efficient.
2012-01-23 13:44:57 +00:00
Campbell Barton
40a1ecafb0 replace BLI_array_staticdeclare with BLI_array_fixedstack_declare()
This has the advantage that it only does 1 alloc at the beginning if the stack variable is too small.
(rather then constantly check to grow one, which is a really huge macro too).
2012-01-23 13:41:28 +00:00