Commit Graph

28789 Commits

Author SHA1 Message Date
Nicholas Bishop
82300fabb9 Minor fix for CD_TYPE_AS_MASK macro: shift operator uses the left
operand's type for the result, so cast 1 to CustomDataMask.
2012-01-27 08:15:30 +00:00
Sergey Sharybin
b35446c3fa Fix #30000: Boolean modifier messing up multi material
Issue was caused by resetting face's mat_nr to zero if there's no material
map sent to ConvertCSGDescriptorsToDerivedMesh. In case of boolean modifier
we can't use such map because we can't affect on materials present in object.

So the only way which can give reasonable result is:
- Dot change mat_nr for faces from left operand (they should be fine, because
  materials aren't deleting by modifier)
- For faces from right operand check if needed material exists in left operand
  and if so, use it's index as new mat_nr.
- If there are materials in right operand which doesn't exist in left operand,
  they'll be changed to first material from left operand.
2012-01-27 08:04:03 +00:00
Nathan Letwory
959f2624ca Fix [#29884] Splash screen only displays "r43"
Based on patch by perfection cat

Removed the unnecessary char * juggling.
2012-01-27 07:35:57 +00:00
Joshua Leung
0c7a455c07 Action Constraint GUI - Refinements and Clarification
While looking at a bug report, I found that the current GUI for the Action
Constraint actually didn't make sense, mixing up settings so that it wasn't
clear which settings corresponded to which others. This commit cleans up the
layout into a clearer two-column design to have a "from" -> "to" layout, making
all the
relationships between things clear.

For more details see http://aligorith.blogspot.com/2012/01/action-constraint-
gui-revised.html
2012-01-27 01:30:58 +00:00
Sv. Lockal
4514a4455b Fix orthogonality check for mat3 and mat4 2012-01-26 17:11:43 +00:00
Sergey Sharybin
5d49eff25a Fix #29957: Texture "Generate" mapping work as global with cloth modifier
Make Cloth modifier deformation only so now it applies on orco dm properly.
2012-01-26 17:03:30 +00:00
Sergey Sharybin
bcbe9ca5fc Color channels used for tracking is now a part of default tracking settings and also a part of presets. 2012-01-26 15:33:16 +00:00
Brecht Van Lommel
2e9ae40aaf Fix #29960: fields option should not be used for external engine rendering. 2012-01-26 14:55:46 +00:00
Sergey Sharybin
331c235d93 Movie clip editor: curves view shouldn't jump back to top when click on it
Also it should now re-store position after toggling it.
2012-01-26 13:13:48 +00:00
Sergey Sharybin
4ae93a48d8 Fix #29958: Search Menu keeps hiding first character(s) after long input
- ui_check_but() in ui_textedit_move() is necessary because this function clips
  but->drawstring to fit text entry widget and it confuses cursor movement stuff.
  ui_check_but copies editstring to drawstring, so displaystring would be clipped
  again in correct way.
- If the whole drawstring fits widget, no need to set button's offset.
2012-01-26 12:48:36 +00:00
Sergey Sharybin
83a6b331a7 Fix #29895 Fast Alt-Mousewheel toggling of Mapping Modes scrubs timeline
Issue was caused by changing button state to EXIT, so there's no active button just after
applying Alt-Wheel event. Setting this state is needed to prevent button trigger cancel
callback when mouse is leaving hovered menu button.

Using the same "post activate" trick used by Tab button allows to make prevent canceling
button and makes this button active again after applying all handlers.

There's still issues with Alt-Scroll if changing active element in menu leads to interface
changes (like file format in render buttons) -- in this case button simple doesn't receive
wheel events and it's actually not connected to this issue.
2012-01-26 12:44:31 +00:00
Sergey Sharybin
7892739869 Merging r43501 through r43720 form trunk into soc-2011-tomato 2012-01-26 12:12:20 +00:00
Sergey Sharybin
db57cbac20 More curves view improvements for clip editor:
- Renamed graph_jump_to_current_frame to graph_center_current_frame
  which makes more sense.
- Curve view now can be locked to time cursor (Lock to Time Cursor in
  Display panel or L button in curve view). Not sure if offset from
  locked position will make much sense here.
- Added hotkey for solving -- Shift-S.
2012-01-26 11:49:38 +00:00
Sergey Sharybin
371d5815a7 Fix implicit declaration of guardedalloc functions in avi's endian.c.
Discovered by debian building system.
2012-01-26 10:59:31 +00:00
Sergey Sharybin
969c87b5af Movie clip editor: graph view now can be toggled using Z key 2012-01-26 09:53:58 +00:00
Sergey Sharybin
dc4e37c764 Tracks curves fixes and improvements:
- Use proper poll functions for tracks curve operators.
- Darken frames outside of scene frame range in curves view.
- Implemented view all operator.
- Implemented jump to current frame operator.
2012-01-26 09:29:49 +00:00
Sergey Sharybin
1f996cb95a Replace hard-coded structures in selection callbacks in view3d_select with typedef-ed structures.
Should be no functional changes, but this discovered inconsistency in structures
used for armature circle selection, not sure how harmful this were, but it's not
nice to have such inconsistencies. Anyway, it's resolved now.
2012-01-26 08:12:12 +00:00
Sergey Sharybin
2a3d8a171b Fix for layer toggling always sticking to extend policy.
Reported by Dalai in IRC, thanks for pointing to issue.
2012-01-26 07:33:14 +00:00
Campbell Barton
c3fe3b1baf fix [#29987] scene.frame_set method doesn't take in account camera change done via markers 2012-01-25 22:13:08 +00:00
Campbell Barton
337302b56f hrmf, fix for fix [#29988] Segfault when unwrap default cube with smart project / follow active quads
I think that we need a check here for thick wrapped strings but for now we dont have any thick wrapped strings with default values so comment it.
2012-01-25 22:06:53 +00:00
Sergey Sharybin
6b567963b3 Fix #29989: Ctrl + T to show seconds in timeline, python error
Issue seems to be caused by refactoring from rev43376.
2012-01-25 21:23:34 +00:00
Brecht Van Lommel
f99343d3b8 Cycles: Render Passes
Currently supported passes:
* Combined, Z, Normal, Object Index, Material Index, Emission, Environment,
  Diffuse/Glossy/Transmission x Direct/Indirect/Color

Not supported yet:
* UV, Vector, Mist

Only enabled for CPU devices at the moment, will do GPU tweaks tommorrow,
also for environment importance sampling.

Documentation:
http://wiki.blender.org/index.php/Doc:2.6/Manual/Render/Cycles/Passes
2012-01-25 17:23:52 +00:00
Sergey Sharybin
14f475fcca Fix #29892: Properties of objects in nested custom collections stop being animatable once an object get added to an unrelated custom collection.
Issue was caused by attempting to find rna path in all property collections
which lead to overwritting already found path.
2012-01-25 16:14:24 +00:00
Sergey Sharybin
bce89860f5 Various fixes for camera tracking stuff
- Fixed tooltip displaying for track sequence forwards in clip editor
- Corrected detection of 8 tracks so it wouldn't count tracks disabled
  on keyframes.
- Scale track preview to actual track widget size instead of scaling the
  whole preview image with given zoom ratio, so no extra memory needed to
  store zoomed margin would be used.
- Track's statistics text will fit pattern position instead of search if
  marker is disabled on current frame.
- Fixed toggle selection operator if selected track is hidden due to
  "Hide Disabled" policy.
2012-01-25 13:37:11 +00:00
Sv. Lockal
b8586f4ec3 Fix typo for sharpen graph post-processing so fac1+fac2+fac3 always equals 1.0 2012-01-25 10:10:15 +00:00
Sergey Sharybin
128741a02e Fix typo in camera reconstruction context creation.
Thanks to Lockal to pointing out!
2012-01-25 09:27:18 +00:00
Dalai Felinto
345703fbef Cucumber left over: new scene needs a default ESC key 2012-01-25 01:39:38 +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
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
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
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
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
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
Bastien Montagne
ebe01d06bc Misc picky edits to UI messages. 2012-01-23 22:57:46 +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
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
Andrew Hale
74b4fd26d2 In order to maintain consistency with other uses of .remove(), these functions will be removed and reimplemented after the BMesh merge.
The main issue in an implementation of these functions is the need to constantly edit the vertex array and subsequently update the face and edge arrays.
2012-01-23 13:29:29 +00:00