Commit Graph

1573 Commits

Author SHA1 Message Date
Campbell Barton
5e4bc5a4f8 patch [#33687] select similar lamp
by Saurabh Wankhade (sauraedron), with some edits.
2012-12-28 11:24:07 +00:00
Campbell Barton
7730ddb3d6 code cleanup:
- free_dverts -> BKE_defvert_array_free
- copy_dverts -> BKE_defvert_array_copy

also move the functions from BKE_mesh into BKE_deform
2012-12-28 09:06:48 +00:00
Ton Roosendaal
bfcb1d4cde Bug fix, own collection.
"Add Group" was excluding linked library objects.
2012-12-27 15:55:37 +00:00
Antony Riakiotakis
b28848063f Fix: after multires baking, gpu textures were not getting invalidated
for images and viewport was not getting refreshed with new baked
textures. Now made sure this happens. The image list is copied to the
job custom data so that the custom data cleanup function can properly
delete them (if gpu image texture deletion does not happen on main
thread, image bindcodes will remain intact for original images)
2012-12-26 20:38:20 +00:00
Ton Roosendaal
cffd10a7c8 Todo item:
- Drop group into 3d window now puts itself at mouse cursor location.
- Drop objects into 3d window now doesn't move the 3d cursor anymore.

Added new function ED_view3d_cursor3d_position() to handle this,
so the temporarily object-drop operator macro also could go away.
(Which was setting 3d cursor)
2012-12-26 16:24:50 +00:00
Bastien Montagne
ba14beb000 Code cleanup: add usual 'BKE_' prefix to 'public' constraint functions from blenkernel... 2012-12-23 11:31:15 +00:00
Ton Roosendaal
3ca00cbf54 Outliner:
Added drag-drop support for Groups. On drop in 3d window it creates an instance.

Todo: it adds this on 3d cursor position still. The existing drop-object-duplicate operator
is a Macro - with warning. For adding on mouse-cursor position we need a better
way (new function call, just use operator option).
2012-12-22 18:34:17 +00:00
Campbell Barton
7dca6dbf0b code cleanup:
make vertex/weight flag names consistent
ME_EDIT_VERT_SEL   --> ME_EDIT_PAINT_VERT_SEL
ME_EDIT_PAINT_MASK --> ME_EDIT_PAINT_FACE_SEL

also remove unused header BLO_soundfile.h
2012-12-22 14:25:34 +00:00
Campbell Barton
2a5cabb039 code cleanup and minor changes
- use DummyRNA_NULL_items to replace empty enums.
- replace calloc with malloc in copy_dverts since its copied over after.
- add wmGesture->userdata, so operators that use gestures have somewhere to store their own data (not used yet).
2012-12-22 01:08:42 +00:00
Sergey Sharybin
cdb6aad54c Multires baker: renamed Number of Rays to Samples after discussion with Brecht 2012-12-19 12:30:39 +00:00
Sergey Sharybin
62988549a1 Multirs baker: support for threaded baking 2012-12-19 08:13:41 +00:00
Sergey Sharybin
460a961975 Multires baker: made octree aware of user-defined resolution in performance panel 2012-12-18 17:46:54 +00:00
Sergey Sharybin
6571713ddb Ambient occlusion baker from multi-resolution mesh
This implements AO baking directly from multi-resolution mesh with much
less memory overhead than regular baker.

Uses rays distribution implementation from Morten Mikkelsen, raycast
is based on RayObject also used by Blender Internal.

Works in single-thread yet, multi-threading would be implemented later.
2012-12-18 17:46:42 +00:00
Sergey Sharybin
6b3e880311 Move multires baker into own file in render/
Currently will only keep object editor a bit clearer, but in
the future will be needed because of using some internal renderer
data structures.
2012-12-18 17:46:26 +00:00
Campbell Barton
899ba3fdb6 style cleanup 2012-12-18 01:46:15 +00:00
Brecht Van Lommel
779375251c Fix #33487: game engine did not convert objects with rotation modes other than
Euler XYZ correctly, was never implemented;
2012-12-17 21:40:28 +00:00
Ton Roosendaal
95225cf110 Bug fix, IRC report.
With 2 windows, 2 scenes, linked objects:
- enter editmode in 1 window.
- the other window allowed to enter editmode too.
- and crash happened on exit editmode.

Since editmode is in Context (scene->obedit) a bad conflict arises.

New function BKE_object_is_in_editmode() returns this info outside of
context. Note I didn't use BMEdit_FromObject() because of the assert().

NOTE: contextual storage of editmode could need rework... five places:
- ob->mode / ob->restore_mode
- scene->object
- CTX_data_edit_object()
- BKE_object_is_in_editmode()
- view3d mode handling menu
2012-12-17 14:51:06 +00:00
Ton Roosendaal
b61958c80d Bugfix 33560
Setup: 2 windows, 2 scenes, shared objects and groups.

Errors:
- editing in 1 window, didn't correctly update shared stuff in the other
  (like child - parent relations)
- deleting group members in 1 scene, could crash the other.

Fixes:
- On load, only a depsgraph was created for the "active" scene. Now it makes
  depsgraphs for all visible scenes.
- "DAG ID flushes" were only working on active scenes too, they now take
  the other visible into account as well.
- Delete object - notifier was only sent to the active scene.

All in all it's a real depsgraph fix (for once!) :) Using multi-window and
multi-scene setups now is more useful.
2012-12-17 12:03:31 +00:00
Bastien Montagne
ab2c273b12 Added GPL header to sconscripts!
Also changed shebang to '#!/usr/bin/env python', this is more portable across unixes...
2012-12-17 08:01:43 +00:00
Campbell Barton
18cb2d208c code cleanup: use 'const float *' when getting the 3d cursor and not editing it. 2012-12-17 05:38:50 +00:00
Ove Murberg Henriksen
635099fdbc Reverting rev 53044 because it broke something and was wrong.
I also added comment to avoid this happening in the future.
2012-12-16 02:29:46 +00:00
Ove Murberg Henriksen
a837d9a896 Fixing name of a function to be consistent with the rest of the code. 2012-12-15 23:52:39 +00:00
Ove Murberg Henriksen
8ec289739e Changed some comments to make more sense. 2012-12-15 22:47:57 +00:00
Ove Murberg Henriksen
0ac1424264 Bugfix: [#33513] Transfer weights mixing up.
Removal of this line fixed the bug. 

But!

I suspect it opens up for an excaption.
I will try to identify the exception and handle it in a different way.
2012-12-15 20:32:32 +00:00
Ove Murberg Henriksen
114459e7f6 Pure style cleanup. 2012-12-15 19:56:25 +00:00
Sv. Lockal
dd2d54bae9 Use own list of actions for Vertex Group Lock operator instead of reusing Select All actions.
Previous actions and descriptions were confusing, e. g. UnLock All used the description of Deselect All.
2012-12-12 10:21:24 +00:00
Campbell Barton
7c699a217a define the size of matrix args for both rows/cols. 2012-12-11 14:29:01 +00:00
Campbell Barton
22505c10f8 fix [#33442] Units
adding meshes were scaling the user input values so the distance on the button didnt relate to the scale of the object added.

Now use an invoke function that scales unset default values.
2012-12-09 10:48:18 +00:00
Campbell Barton
767bfba808 cmake was missing some header files. 2012-12-04 14:43:42 +00:00
Brecht Van Lommel
a2bf2ba7df Fix transfer weight tool enum properties all showing question mark icons,
these should have no icons.
2012-11-30 18:54:56 +00:00
Campbell Barton
9653c929ed skip recalculating tessface when adding objects if 'EnterEdit-mode' is disabled. 2012-11-29 02:37:39 +00:00
Brecht Van Lommel
b43c022373 Move to layer: remove the OK button and make it apply immediately like it did
before, is much nicer workflow. Now only if global undo is disabled will the
OK button show.

This is also a more generic fix for #26891 that solves other operators that
were also broken with global undo disabled.
2012-11-27 16:02:15 +00:00
Brecht Van Lommel
c91562d0ff Fix #33310: unnecessary redraw of outliner when editing materials and textures. 2012-11-26 08:52:07 +00:00
Campbell Barton
ea828fd20e code cleanup: warnings, style 2012-11-25 15:05:17 +00:00
Brecht Van Lommel
748216ad3d Fix #33296: uv editing did unnecessary outliner redraw, giving slowdown. 2012-11-25 06:55:39 +00:00
Brecht Van Lommel
f68b550587 Fix #33241: can't exit edit mode when object gets hidden via animation. 2012-11-21 03:33:34 +00:00
Sergey Sharybin
5c6f6301b0 Image thread safe improvements
This commit makes BKE_image_acquire_ibuf referencing result, which means once
some area requested for image buffer, it'll be guaranteed this buffer wouldn't
be freed by image signal.

To de-reference buffer BKE_image_release_ibuf should now always be used.

To make referencing working correct we can not rely on result of
image_get_ibuf_threadsafe called outside from thread lock. This is so because
we need to guarantee getting image buffer from list of loaded buffers and it's
referencing happens atomic. Without lock here it is possible that between call
of image_get_ibuf_threadsafe and referencing the buffer IMA_SIGNAL_FREE would
be called. Image signal handling too is blocking now to prevent such a
situation.

Threads are locking by spinlock, which are faster than mutexes. There were some
slowdown reports in the past about render slowdown when using OSX on Xeon CPU.
It shouldn't happen with spin locks, but more tests on different hardware would
be really welcome. So far can not see speed regressions on own computers.

This commit also removes BKE_image_get_ibuf, because it was not so intuitive
when get_ibuf and acquire_ibuf should be used.

Thanks to Ton and Brecht for discussion/review :)
2012-11-15 15:59:58 +00:00
Campbell Barton
987f6a7d4f code cleanup: move local math functions into math_geom.c, math_vector.c, no functional changes. 2012-11-15 13:24:14 +00:00
Campbell Barton
f579aea076 code cleanup: use ptrdiff_t when comparing pointers and tag event as an unused arg to move_to_layer_invoke() 2012-11-13 15:46:55 +00:00
Ton Roosendaal
37cc2b4fdc Bugfix #26891
Recoded the move-to-layer popup to wait for execution of operator until you 
press Enter or OK button.
That excludes undo/redo, which makes it faster for many too.

(note the menu is all hotkey driven, so it's MKEY, <number>, Enter)

Also fixed: missing MEM_free in this popup type.
2012-11-13 14:34:36 +00:00
Campbell Barton
d94b2efbb9 disable applying constructive modifiers when in sculpt mode with multi-res data, since this would crash.
also rename modifier_sameTopology -> modifier_isSameTopology(), modifier_nonGeometrical -> modifier_isNonGeometrical()
2012-11-13 14:21:55 +00:00
Campbell Barton
140d382cee fix [#33143] Exporter crash since 2.64 2012-11-13 06:57:07 +00:00
Brecht Van Lommel
863291bc8e Fix #33113: cycles not rendering motion blur correct with dying particles.
There were a bunch of other issues with dupli motion blur and syncing, the problem
being that there was no proper way to detect corresponding duplis between frames
or updates. As a solution, a persistent_id was added to the DupliObject. It's an
extension of the previous index value, with one index for each dupli level. This
can be used to reliably find matching dupli objects between frames. Works with
nested duplis, multiple particle systems, etc.
2012-11-08 16:35:28 +00:00
Ton Roosendaal
5b33146875 Bugfix #32987
"Set origin to cursor" tool failed for parented/rotated objects.
Matrix mashup.

Thanks to Ben Batt for the fix!
2012-11-04 12:33:58 +00:00
Campbell Barton
a31449edad all remove functions now invalidate the RNA objects passed, to help script authors to avoid bugs with accessing removed data. 2012-11-02 09:41:26 +00:00
Campbell Barton
00acdb6292 remove CD_POLYINDEX customdata layer:
reported as [#29376] BMESH_TODO: remove tessface CD_ORIGINDEX layer

for a single mesh there could be 3 origindex mappings stored, one on the polygons and 2 on the tessfaces.
(CD_POLYINDEX and CD_ORIGINDEX).

as Andrew suggests, now tessfaces (which are really a cache of polygons), using origindex to point to polygons on
the same derived mesh, and polygons only store the original index values.
2012-10-30 19:20:17 +00:00
Campbell Barton
aeba4950c3 style cleanup 2012-10-27 10:42:28 +00:00
Bastien Montagne
c9dade4fe0 Big i18n commit: add "reports" from bmesh/readfile/tracking/dynapaint (and a few others), and another bunch of UI messages tweaks/fixes, as well as some BKE_report()<->BKE_reportf()... 2012-10-26 17:32:50 +00:00
Sergey Sharybin
d9f220ed96 Show warning message when multires baking happens for preview level of 0 2012-10-26 11:30:00 +00:00
Campbell Barton
0e494b74c4 style cleanup 2012-10-26 04:14:10 +00:00