Commit Graph

12883 Commits

Author SHA1 Message Date
Joshua Leung
5c0a8ca73f Quick test commit - fixing what looks like a typo in a comment 2013-11-02 13:08:48 +00:00
Campbell Barton
df1f21d678 code cleanup: warnings 2013-11-02 04:04:30 +00:00
Bastien Montagne
b375388959 Fix [#37266] Skin modifier can't be copied.
Patch by Martin Felke, many thanks.

When copying that modifier across objects, we also have to ensure that a skin CDLayer is present in dest objects (just as when adding it).
2013-11-01 08:31:36 +00:00
Campbell Barton
f9d5bccb06 code cleanup: spelling 2013-10-31 23:52:44 +00:00
Andrea Weikert
fc0e225a77 FIX: [#37199] .ogg file is not recognized as a movie in File Browser
CHANGE: writing an animation in the ogg movie format now defaults to .ogv (ogg/video) which is recommended by Xiph.org for video
CHANGE: for .ogg files a check is added whether Blender can read it as a movie (is avi or ffmpeg movie), otherwise assume audio
CHANGE: the anim player now filters for the same extensions as the file browser
2013-10-31 21:00:55 +00:00
Campbell Barton
beae4f498d code cleanup: spelling 2013-10-31 14:10:01 +00:00
Sergey Sharybin
bc5218a0f4 Code cleanup: more int->bool conversions mask module 2013-10-29 18:56:21 +00:00
Sergey Sharybin
8f747c4923 Code cleanup: use bool instead of int in mask module 2013-10-29 18:46:45 +00:00
Sergey Sharybin
16d13e0db9 Project Pampa request: FCurves normalized display
Added two options to a header of FCurve editor:

- Normalize which makes it so every individual
  curve is fit into -1..1 space.

- Auto-normalize, which probably is to be called
  "Lock" which "locks" curve normalization scale.
  This is useful to prevent curves from jumping
  around when tweaking it.

It's debatable whether it need to be a button to
normalize curves n purpose only, and it's fully
depends on animator's workflow.

Here during Project Pampa we've got Francesco
who get used to auto-renormalization and Hjalti
who prefers locked behavior.

Docs are to be ready soon by Francesco.
Thanks Brecht for the review!
2013-10-29 18:10:52 +00:00
Lukas Toenne
8bdbbca485 Fix #37192, Rendered preview causes crash when deleting a material node in shader node editor. The 'free' callback for node execution data was accessed from the node->typeinfo, but this pointer can
become invalid because the render database is not immediately freed after the job finishes. To avoid access to dangling node pointers, store the function callback in the exec data itself. The node
pointer must not be accessed in the free function (wasn't used before either), these functions are purely for the execution data.
2013-10-29 17:46:01 +00:00
Lukas Toenne
2cccdd1678 Fix for particle texture influence bug causing undefined (nan) values: When using a texture with "Particles/Strands" coordinates that in turn has a "Lifetime" influence on the particles, the texture eval
accesses the particle lifetime/dietime data before it is actually defined! This is a design flaw, but to avoid corrupted data for now just initialize the lifetime/dietime values for particles in advance
before evaluating the texture.
2013-10-29 14:48:25 +00:00
Sergey Sharybin
e667f12783 Fix #37221: Multilayer EXR inputs generate pink frame/last displayed frame when using an image sequence offset
generally speaking, if multilayer image fails to load for current
frame doesn't mean anything bad. It might be used to make it so
image sequence is being alpha-overed somewhere in the middle of
scene time.

Made it so if the whole file fails to load, image node will
deliver black transparent color, the same what happens for
regular (non-multilayer images).

Also needed to tweak code in load_multilayer_sequwnce to make
sure no cached frames are pointing to a freed memory.
2013-10-28 12:16:17 +00:00
Campbell Barton
3264461598 move bmesh array lookup data and utility functions from editmesh into bmesh,
since enough bmesh operations can also take advantage of direct index lookups on verts/edges/faces.

developers note:
- EDBM_index_arrays_init/ensure/free -> BM_mesh_elem_table_ensure/init/free
- EDBM_vert/edge/face_at_index -> BM_vert/edge/face_at_index
- EDBM_uv_element_map_create/free -> BM_uv_element_map_create/free
- ED_uv_element_get -> BM_uv_element_get
2013-10-28 02:05:33 +00:00
Sergey Sharybin
9f32e83175 Weighted tracks
Added a weight slider to track which defines
how much particular track affects in a final
reconstruction. This weight is for sure
animateable.

Currently it affects on BA step only which in
most cases will work just fine.

The usecase of this slider is to have it set
to 1.0 most of the time where the track is
good, but blend it's weight down to 0 when
tracker looses the track. This will prevent
camera from jump.

Tutorial is to be done by Sebastian.
2013-10-26 13:22:38 +00:00
Campbell Barton
b461cc9cd4 code cleanup: merge doxygen comments into C source. 2013-10-26 03:56:32 +00:00
Campbell Barton
a304b5a988 correct typo 2013-10-25 22:12:05 +00:00
Sergey Sharybin
8bb39a536b Making real need to remove proxies
Otherwise some invalid pointers will be left
which could be harmless if real object stays
local, but crashes when linking them to
another files.

Was discovered here in the studio during
Project Pampa, and the steps to reproduce are:

- Create lib.blend, put armature and cube to it.
  Create a group with them.
- Create scene.blend and link group from lib.blend.
- Make a proxy from armature.
- Make group real.
- Add real objects to a group.
- Create comp.blend and link group from scene.blend.
  This step will creah.
2013-10-22 15:19:37 +00:00
Joshua Leung
df553892c9 Bugfix: Renaming bones now renames the corresponding F-Curves in actions used by
Action Constraints
2013-10-22 11:36:48 +00:00
Campbell Barton
c80c1c6f5c add copy_v4_fl4, replace QUATSET macro. 2013-10-22 03:31:21 +00:00
Campbell Barton
6193963daa style cleanup 2013-10-22 03:03:56 +00:00
Campbell Barton
7c8c49a34a style cleanup 2013-10-21 23:35:08 +00:00
Sergey Sharybin
ce741bc223 Code cleanup: de-duplicate implementation of get_texture_value
Expect to be no functional changes :)
2013-10-20 13:01:07 +00:00
Sergey Sharybin
e9d5e9813c Code cleanup: added generic function copt_m3_m3d 2013-10-20 12:08:51 +00:00
Bastien Montagne
e783611098 Arg! Fix another bug in split normal core algorithm (some flat faces were ignored, depending on the order of evaluation)... :/ 2013-10-19 13:48:51 +00:00
Sergey Sharybin
3887d33374 Remove paranoid check which was marked as unneeded for a while already 2013-10-18 23:41:11 +00:00
Sergey Sharybin
fc8b0ed5e5 Move utility functions from mball to mathutils 2013-10-18 23:38:51 +00:00
Sergey Sharybin
9afddac727 Fix for wrong active render layer after copying hr scene
Also fix crash for files which could have been saved with
wrong active render layer.
2013-10-18 09:45:21 +00:00
Kevin Mackay
4230b8f9c4 Patch [#37115] Surface split and separate operators
Added surface support to recent curve split operator, completing quick hack todo
Updated nurbs separate operator to make use of new split logic, completing tools todo
Added 'Delete segment' option to surfaces and improved surface duplication, used for split/separate
2013-10-17 19:57:14 +00:00
Lukas Toenne
27a662f670 Missing ParticleSystem->parent pointer check in BKE_object_unlink. 2013-10-17 19:31:59 +00:00
Brecht Van Lommel
56373ea271 Fix crash in scenes without camera markers, after recent fix for #37097,
first_camera variable was used uninitialized.
2013-10-17 15:51:12 +00:00
Sergey Sharybin
a0da34871a Fix for GCC bing stupid and not casting float*[3] to const float*[3] without a wanring :S 2013-10-17 14:44:23 +00:00
Sergey Sharybin
eb1b4c3b55 Fix #37097: Setting scene frame does not update active camera
The issue was caused by uncertainty of current camera when
there're no markers to the left of current frame.

Now in this case camera from the top-left marker will be used.
2013-10-17 14:10:03 +00:00
Brecht Van Lommel
abee8a8717 Fix #37109: missing cycles texture display in edit mode.
My previous fix for uninitialized texture coordinates was not working well,
and in fact there was a bigger issue with GLSL drawing and missing attributes
with immediate draw mode. Now it will explicitly pass zero rather than having
it use whatever value was set last.
2013-10-17 14:04:10 +00:00
Campbell Barton
089d0ad8f9 add IDP_FreeFromGroup(), replaces IDP_RemFromGroup(), IDP_FreeProperty(), MEM_freeN(). 2013-10-16 05:29:28 +00:00
Campbell Barton
e7f1e1aed1 edits to r60777 - move ED_object_hook_reset_do into BKE object (if RNA needs to call ED_* functions its a hint they might be better in BKE). 2013-10-15 20:15:45 +00:00
Sergey Sharybin
eb69cb7de3 Get rid of Allow Fallback option
It was rather confusing from the user usage point
of view and didn't get so much improvement after
new bundle adjuster was added.

In the future we might want to switch resection
to PPnP algorithm, which could also might be a
nice alternative to fallback option.
2013-10-15 15:21:41 +00:00
Lukas Toenne
a90b8ebe48 Fix for crash from double-freeing in nodes:
The way node groups check for localized trees in the ntreeFreeTree_ex function does not work. When the main library is freed on exit it also frees genuine node groups trees (which is correct), but then
node groups referencing these trees will not find them in the library and interpret that as a localized group, attempting to free them a second time ... Nicer solution is to just use a special flag on
localized node trees so we can clearly distinguish them from genuine trees in main.
2013-10-14 08:03:55 +00:00
Lukas Toenne
dfea1dd0d7 Fix #37057, Detach (Alt + D) doesn't work in nodes editor / compositor.
The operator exits early when there are no internal links. This prevents it from removing links which have no internal connection.
2013-10-14 08:03:53 +00:00
Campbell Barton
52296b941e code cleanup: remove duplicate assignments 2013-10-14 07:15:59 +00:00
Campbell Barton
78de5efec1 fix for array index use before checking range 2013-10-14 07:10:38 +00:00
Campbell Barton
cbba50a3a1 fix for over-alloc in dyntopo, was allocating the vertex size, not pointer size (~85% wasted space). 2013-10-13 05:13:38 +00:00
Campbell Barton
b6db417ee4 code cleanup: use const's for vector args. 2013-10-12 02:19:37 +00:00
Irie Shinsuke
90cd0a37a9 Fix build scripts related to PSD support. Both CMake and SCons builds were broken. 2013-10-11 23:14:01 +00:00
Dalai Felinto
6549c1bf29 scons file for OIIO (needed for psd)
based on patch by Shinsuke Irie

note: scons is not working for me at the moment so I did not test this
patch. It should work fine though.
2013-10-11 16:38:31 +00:00
Dalai Felinto
029f4b9767 adding WITH_IMAGE_OPENIMAGEIO and removing the PSD build option
As per Brecht van Lommel's suggestion.
2013-10-11 16:38:04 +00:00
Campbell Barton
afab39b9d6 code cleanup: use const's for static arrays 2013-10-10 20:22:17 +00:00
Campbell Barton
e220d3228f add MEM_SIZE_OPTIMAL to avoid memory fragmentation & waste lost to slop-space. 2013-10-10 18:18:13 +00:00
Lukas Toenne
906111cb22 Get rid of the draw_input/draw_output callbacks for nodes. These are pretty useless wrappers around socket draw functions. Only use-case is the File Output node, which draws socket format type instead of
an input value. This is now a special case in the standard socket type drawing, but should eventually become a socket type of its own for the File Output node.
2013-10-10 13:07:09 +00:00
Lukas Toenne
77a0b90cdf Cleanup: Consistent names for draw callbacks in bNodeType.
This aims to establish a common pattern for the various confusing draw callback function pointers in bNodeType:

draw_<purpose>_<nodetype>[_ex]

Currently there are 4 different types of draw callbacks:
* draw_nodetype, draw_nodetype_prepare: Main draw functions, allows specialized node drawing for things like frames and reroute nodes. Not exposed in the API.
* draw_buttons, draw_buttons_ex: Optional non-socket buttons, most commonly used callback. Extended version used in sidebar for verbose buttons that don't fit into a node.
* draw_backdrop: Draw elements in the backdrop (compositor only). Not exposed in the API.
* draw_input, draw_output: Specialized socket drawing for some nodes, only for OutputFile node. Should not be used any further and be removed at some point. Not exposed in the API.
2013-10-10 11:33:20 +00:00
Irie Shinsuke
4be7427346 Weight Paint Tools: Add "Subset" option to "Normalize All"
This option is needed when vertex groups are used for both armature
deformation and the other purpose such as influence of mesh modifier.

Thanks to Campbell for code review!
2013-10-10 06:33:23 +00:00