Commit Graph

47594 Commits

Author SHA1 Message Date
Mitchell Stokes
8576a275dc BGE: Fix for [#35320] "Crash When Adding Property without Setting Material" reported by Leon Cheung.
Adding an extra NULL check to draw_mesh_text() to avoid accessing a NULL material array.
2013-05-13 05:37:45 +00:00
Mitchell Stokes
82612ae950 BGE: I had the assert in stubs.c backwards. However, it looks like the Blenderplayer ends up making a bad level call on startup. So, I've added a way to easily turn the asserts on and off (default to off) to allow people to still hunt down bad level calls without interfering with other people's debug builds. 2013-05-13 04:08:16 +00:00
Mitchell Stokes
714f8a4af0 BGE: Adding an assert(true); to every function defined in stubs.c. This should help in hunting down errors caused by code calling into stubs.c, which shouldn't happen while the Blenderplayer is running. Remember, stubs.c is just to help with linking, these calls should never be used! 2013-05-13 02:59:13 +00:00
Mitchell Stokes
e5bbf2441a BGE: Tweaking the linking order of the Blenderplayer (CMake) to avoid needing to put BLI code in stubs.c. This fixes an infinite loop with the Edge Split modifier in the Blenderplayer. SCons still has to be tested. 2013-05-13 02:49:18 +00:00
Campbell Barton
c961c56c64 add missing STACK_INIT, also quiet float <> double conversion warnings. 2013-05-13 02:10:59 +00:00
Campbell Barton
2107620593 fix [#35326] Even edge slide on open edge crashes Blender 2013-05-13 02:01:35 +00:00
Sergey Sharybin
32faec1a53 Remplace bunch of annoying ifdefs in tracking.c with a libmv-capi_stub.cc
Makes code in tracking.cc much easier to understand and modify,
without worring to breck compulation with Libmv disabled.

It is still possible compilation will break due to libmv-capi
changes, but that's not happening so much often.
2013-05-12 22:17:37 +00:00
Sergey Sharybin
33651da150 Fix for keyed marker search not happening correct in some cases
Was an heuristic failure writen for cases when there's no keyframe
in desired direction. Shall all be fine now.
2013-05-12 21:57:57 +00:00
Sergey Sharybin
df74639002 Speedup for rendered viewport for blender internal
Display code was a bottleneck here, so made it so render
result draw follows Image Draw settings.
2013-05-12 19:01:23 +00:00
Sergey Sharybin
87b308fc23 Fix for "no functional changes" commit
Apparently eitehr merge conflict happened, or i had
too much depression in blood, but first camera was
just wrong after reconstruction.
2013-05-12 18:50:39 +00:00
Ton Roosendaal
1ea1f21b63 Viewport Render Internal:
Animated characters were not rendering yet, the render code for it
caused a signal for re-draw and re-render, in eternal loop.

Solved by forcing viewport render to use the same derivedmesh data
as for 3d viewport drawing. Faster too.
2013-05-12 17:16:43 +00:00
Antony Riakiotakis
c3b1f0fa20 Fix build error on MinGW64 2013-05-12 16:52:42 +00:00
Sergey Sharybin
d9ca50ff64 Refine markers position operator
This operator will run a tracker from previous
keyframe to current frame for all selected markers.
Current markers positions are considering initial
position guess which could be updated by a tracker
for better match.

Useful in cases when feature disappears from the
frame and then appears again. Usage in this case
is the following:

- When feature point re-appeared on frame, manully
  place marker on it.
- Use Refine Markers operation (which is in Track
  panel) to allow tracker to find a better match.

Depending on direction of tracking use either
Forwards or Backwards refining. It's easy: if
trackign happens forwards, use Refine Frowards,
otherwise use Refine Backwards :)
2013-05-12 16:04:14 +00:00
Sergey Sharybin
beb73831f6 Documentation for functions inside tracking.c
Additional changes:

- Cleaned up sources to reduce mess in some
  big functions.
- Removed unused function from libmv c-api.
- Made functions naming more consistent.
- Use bool for internal stuff in tracking.c.

Shall be no functional changes :)
2013-05-12 16:04:08 +00:00
Bastien Montagne
bbd533d4ac Fix for [#35238] Blender does not save custom orientations from "view"
Actually more a feature request... Now create orientations operator has an additional option, use_view, when this one is enabled it will use current view instead of active object to create the new space.

Also made some cleanup (made some funcs static).
2013-05-12 15:52:05 +00:00
Campbell Barton
6c28e1d76a fix for crash with new bridge method used with invalid edge-loops. 2013-05-12 15:24:02 +00:00
Sv. Lockal
97d2439077 Fix crash when closing blend files with no line styles 2013-05-12 14:45:15 +00:00
Campbell Barton
4e4eff3937 remove BLI_array allocations from uv/color reverse, rotate. 2013-05-12 14:45:09 +00:00
Brecht Van Lommel
469979f9cb Fix material/lamp drivers not working sometimes when they were used by multiple
objects, found while looking into another bug.
2013-05-12 13:33:20 +00:00
Bastien Montagne
127c39b8a4 Fix for [#35224] Transform Orientation - order inconsistency
Fix turned out to remove as much "manual UI" from 3D view header as possible. Mode selector and all transform manipulators/orientations stuff are now RNA-based UI (leaving basically only edit mesh select modes with custom handlers, as they have some quite specific features).

To achieve this, four main modifications were done:
* enum-operator-generated menus are now MENU (i.e. dropdown lists) in headers too.
* All bit-flag enums expanded in ROW buttons now have a handling consistent with e.g. layers, or what we already have for transform manipulators, i.e. clicking select only one element, shift-click to select multiple ones.
* Consequently, the three RNA booleans manipulators flags are merged into a single bit-flag enum (yes, this is also an API change, though I doubt many scripts use it).
* Now the width of enum-based dropdown lists is computed from longest item name in enum, no more from a dummy place holder string (when no label/name is given).

All this allows to remove some code from 3DView/transform areas, that was actually mostly duplicating RNA/operator one.

Also done a few optimizations here and there (among others, do not pass &numitems to RNA_property_enum_items() when you do not need it, saves at least an iteration over enum items to count them).

Many thanks to Brecht for the reviews!
2013-05-12 13:16:11 +00:00
Ton Roosendaal
5fcf9b1d2f 3D viewport render preview:
- Put it available as a default now (no debug value needed)
- Fixed viewport size error, viewport was badly set
  (visible with border render, property regions)
- Fixed hanging lock in conflict between drawing and initialize
  new renders.
2013-05-12 13:15:41 +00:00
Campbell Barton
40535f5ef3 bmesh recalculate normals - remove BLI_array reallocation, the max size of the array is known.
replace with STACK_* macros (moved to BLI_utildefines.h).
2013-05-12 12:23:44 +00:00
Campbell Barton
85145db47b remove wanton use of array reallocation for mesh smoothing. 2013-05-12 12:06:08 +00:00
Campbell Barton
60f88c94c1 bridge tool: add support for face selection. 2013-05-12 11:41:19 +00:00
Campbell Barton
f87464392c bridge option to bridge loop pairs,
change the operator option to an enum: Connect Loops - open/closed/pairs
because it was getting confusing having all as bools.
2013-05-12 10:00:15 +00:00
Brecht Van Lommel
877e0e1184 Fix #35319: python 2x2 matrix inverse and adjugate were wrong. 2013-05-12 09:26:02 +00:00
Brecht Van Lommel
70eaf2fe44 Image paint: 2D painting now supports texture masks and does masking more
consistent with projection painting.

Also did some refactoring of this code, moving the brush image creation code
out of brush.c and making it consistent with image updating code.
2013-05-12 09:14:13 +00:00
Brecht Van Lommel
698f1b5603 Fix #35317: crash with boolean modifier using an object whose library linked
mesh datablock went missing.
2013-05-12 09:14:07 +00:00
Campbell Barton
cf96fdfc65 Optimize face-select drawing (weight/vertex paint mode face selection)
with bmesh theres no need for edge-hash lookups, replace EdgeHash with BLI_bitmap.
2013-05-12 08:42:24 +00:00
Campbell Barton
0d36225dd1 quiet sign conversion warnings and reduce sign conversion for BLI_string, and BLF. 2013-05-12 06:33:21 +00:00
Campbell Barton
7b707fff56 correct assert for driver evaluation,
also add asserts for listbase functions when the list is NULL, and use noreturn attribute for jpeg_error.
2013-05-12 05:54:33 +00:00
Campbell Barton
b6345616a7 fix for 2 crashes in bridge tool mixing open/closed loops with different vertex counts. 2013-05-12 04:08:45 +00:00
Campbell Barton
9cd0c5f7fb bridge tool: support for bridging loops with different numbers of vertices. 2013-05-12 03:36:41 +00:00
Campbell Barton
dc1a36534d add support for bridging multiple edge loops at once. 2013-05-11 16:20:29 +00:00
Ton Roosendaal
01063faf6f Bug fix, irc submitted
If you have three scenes, current is A, others are B and C.

B uses C as background, and C uses B as a background.
(which is possible via linked libraries)

If you then try to use B or C as background of A, code went to eternal loop.
2013-05-11 16:15:09 +00:00
Ton Roosendaal
cda9407177 Bug fix #35307
Popup menus in nodes, with nodes outside window boundary, were clipped very badly, even
causing it to fill entire window.

Now the clip code nicely translates the menu horizontally to be in view.
2013-05-11 15:29:57 +00:00
Campbell Barton
55f929ab3d - add generic edge-loop utility functions for bmesh.
- rewrite bridge tool to use the new functions (using edge & vertex arrays was quite cumbersome).
2013-05-11 14:40:03 +00:00
Campbell Barton
a19f7899fb utility functions to reverse and rotate linklists. 2013-05-11 12:18:12 +00:00
Mitchell Stokes
18fda6d84c BGE: Fix for [#34044] "Objects with no material don't have their "face image" always working on bge" reported by Dalai Felinto (dfelinto).
NULL materials are no longer cached.
2013-05-11 03:20:19 +00:00
Mitchell Stokes
b0261a446d BGE: Fix for [#34631] "Textures bad in game mode" reported by pablo aaa (p9ablo).
Disabling caching if materials have Face Textures enabled.
2013-05-11 02:43:35 +00:00
Campbell Barton
ce39c806cf only use OSKEY as a replacement for CTRL on Apple (was already the case in many areas). 2013-05-11 01:12:29 +00:00
Campbell Barton
359edc27d3 style cleanup 2013-05-11 01:06:01 +00:00
Brecht Van Lommel
00014949c8 Fix #35262: assiging shortcuts from e.g. delete or selection mode menus did not
work anymore. This was due to a bugfix to show missing shortcut keys for e.g. the
mesh > vertices > separate menu. Both should work now.
2013-05-10 23:41:41 +00:00
Brecht Van Lommel
3e1e76a2c1 Fix #35289: UV layout export to image was extremely slow for large meshes. This
was due to slow implementation of slice operation for things like mesh uv data.
Made that faster now for cases where the internal storage is an array.
2013-05-10 22:05:47 +00:00
Brecht Van Lommel
38391d9a7d Fix #35281: search menu buttons (with an X on the right side to clear) had text
overlapping the X icon if the text was long.
2013-05-10 20:34:35 +00:00
Brecht Van Lommel
50b270ca36 Fix #35292: edge slide slow with big image in image editor. Avoid redrawing the
image editor during slide like other operators, instant feedback can be nice but
is not so important here and we don't have notifiers fine grained enough to avoid
full redraws.
2013-05-10 20:17:18 +00:00
Brecht Van Lommel
5374eb8e1c Fix #35284: outline name edit textbox did not show properly in some cases. Also
fix issues with its size not scaling with DPI.
2013-05-10 19:54:32 +00:00
Miika Hamalainen
c152913217 Couple fixes for my previous commit:
- In some cases smoke flow could have 1 cell clipped off its sides.
- Forgot to re-enable openmp for emission code.
2013-05-10 19:30:08 +00:00
Brecht Van Lommel
6dc23a2712 Fix #35296: particles crash with long object name. 2013-05-10 17:14:07 +00:00
Brecht Van Lommel
8160027ff8 Fix for version patch in recent smoke commit, was using && instead of &. 2013-05-10 16:57:20 +00:00