Commit Graph

34110 Commits

Author SHA1 Message Date
a7a6049978 minor edits to previous commit & set VKey to toggle vertex select in weight paint mode. 2011-12-20 02:04:35 +00:00
4d08df734c unit test for mathutils python module from Andrew Hale, runs in CTest too 2011-12-20 01:49:24 +00:00
84a58fd7e9 Patch #27085, Restore old 2.49 TAB behaviour for window splitting, by Andre Oliveira
Now this patch only applies to RMB window splitting not the click and drag as that would cause confusion and big mess
2011-12-20 00:46:55 +00:00
71ce197bbb patch [#28094] New equirectangular world texture mapping option 2011-12-19 23:52:17 +00:00
a7bae8474b calculate weight paint colors once per vertex rather then on every face corner (was doing the same deform vert lookup and color calculation multiple times per vertex),
Quick shows over 2x speedup in my tests, will give bigger speedup with more vertex groups.

If you happen to have vertices with no faces using them - vertex colors will be calculated unnecessarily, but this isnt a common use case for weight paint mode.
2011-12-19 22:55:04 +00:00
b66c87231a * Changes for static win32 png libs. 2011-12-19 19:46:07 +00:00
0ebb1a3f9f * Fix for moving mingw png libs. 2011-12-19 14:46:17 +00:00
27df40f87f Fix #29653: fix wrong cycles depth of field distance when rendering with a
scaled camera.
2011-12-19 14:23:24 +00:00
a64d92eb13 Fix #29655: keyboard shortcuts missing from text editor text menu, and removed
confirmation popup for creating new text datablock.
2011-12-19 14:23:19 +00:00
a0af3f7ffe OS X: add BLENDER_SOFTWAREGL environment variable to force using software OpenGL
renderer, for debugging OpenGL issues.
2011-12-19 14:23:08 +00:00
41c992ce85 Much cleaner and satisfying code in weightvg modifiers' "init": copy only the CD_DEFORMVERT data layer (if it's the org one), and not the whole DerivedMesh!
Quite oddly, for Proximity mod, this increases the performances of the apply func (about 20-25%, e.g. from 0.04 to 0.03 sec), but decreases the global framerate (e.g. in TEST_5 scene of testing file, I lose about 7%, from 4.6 to 4.3fps (open ATI driver)...).
2011-12-19 14:09:36 +00:00
Lukas Toenne
26b3dfa30e Automatically hide unused (=unlinked) node sockets in collapsed ("hidden") nodes. This is to make nodes with many sockets cleaner and simpler, which is the purpose of collapsing nodes in the first place.
The hiding code uses the SOCK_IN_USE flags already present. These were only temporarily set by the shader node code for determining needed texture coordinate types. Now they are used persistently and updated along with the sock->link pointers.
2011-12-19 12:04:05 +00:00
Lukas Toenne
a9f0266448 Display button for hiding unused node sockets in the side bar, as an alternative to the removed node header button. 2011-12-19 11:55:35 +00:00
90ef435145 Fix a bug in CustomData_duplicate_referenced_layer(_named) functions: MEM_dupallocN does not work with complex layers like CD_MDEFORMVERT ones, so rather use copy func when available. 2011-12-19 08:26:53 +00:00
53f88b231a corrections to some comments 2011-12-19 05:23:52 +00:00
0bc83a2f35 - mathutils matrix creation - use memcpy rather than copying every matrix row/col individually.
- creating a new non-square matrix would use uninitialized memory.
2011-12-19 05:14:09 +00:00
c3675c0e90 remove mathutils internal variable for storing pointers to each matrix row, instead use macros to access row/column's.
also add an assert so invalid index access will raise an error in debug mode, without this it was quite easy to access invalid memory without meaning to.

no functional change.
2011-12-19 03:12:10 +00:00
d0aa012b0a change BLI_assert() so it can be included in other defines. 2011-12-19 03:06:44 +00:00
9d3e755b4c Fix for cmake for recent mingw png lib move. 2011-12-18 23:32:24 +00:00
8f0e9c7c09 MinGW png libs
* Moved to gcc/png in the libs dir.
2011-12-18 23:23:09 +00:00
32896bbf59 remove unneeded NULL check in ui_searchbox_create() which confuses static checkers since the values used later. 2011-12-18 22:42:43 +00:00
65f2cbdd0f remove windows only benchmark functions, use PIL_time.h's TIMEIT macros instead. 2011-12-18 22:35:52 +00:00
64567ffb87 Minor tweaking to WeightVGProximity modifier code (not really usefull currently, but mandatory for other future changes…) 2011-12-18 21:46:26 +00:00
Lukas Toenne
24785cc16a Removed buttons in node headers for hiding unused sockets and for hiding the (non-socket) option buttons. These are rarely used buttons that only complicate the UI. Alternatively these operators can still be accessed in the Node menu of the node editor window, "Toggle Hidden Node Sockets" and "Toggle Node Options" respectively. 2011-12-18 17:59:04 +00:00
Lukas Toenne
5f6bd44c82 Generalized node groups for Cycles.
This allows group nodes inside other group nodes in cycles and makes the
code more generic for all possible cases, like direct group
input-to-output links and unused group sockets.

Previous code tried to connect external nodes and internal group sockets
by following links until a "real" node input/output. This quickly
becomes complicated in corner cases as described above and can lead to
unexpected behavior when the group socket is of a different type than
the internal/external sockets, but that conversion is skipped.

The new code uses the concept of "proxy nodes" similar to what the new
compositor does. Each group socket is replaced with a proxy node with a
single input and output, to which other nodes in the same tree and
internal nodes can link to. After all groups have been expanded in the
graph, these proxy nodes are removed again, adding converter nodes if
necessary.
2011-12-18 15:34:06 +00:00
b49463c439 cleanup of weight paint color setting code, no functional changes 2011-12-18 12:54:50 +00:00
Lukas Toenne
a885d8aee6 Fix for toggle buttons in node headers.
The buttons for "hiding" (collapsing) a node, hiding unlinked sockets, additional options, the preview and for opening a node group were all using a custom mouse test function, which was broken. They now use actual buttons instead of just displaying icons. Before executing the respective operators the button's node has to be selected and activated, so the buttons use an intermediate handle function, which selects the node and then calls the operator.
2011-12-18 12:51:50 +00:00
8ed5fdde1d - remove rna access to deprecated sequencer attributes x/y offset & zoom.
- Object.to_mesh was still using deprecated colbits variable (object material wouldnt work for any material after 16)
- dont set colbits when setting material slot anymore.
2011-12-18 09:36:47 +00:00
9c9099a805 formatting edits in py api, no functional changes 2011-12-18 08:50:06 +00:00
414370b8d4 Support for arbitrary sized vectors - (was limited by 2-4 previously)
patch http://codereview.appspot.com/5482043
from Andrew Hale

* Text from the submission *

This patch adds the ability to use arbitrary sized vectors from mathutils.
Currently vectors are only of size 2, 3 or 4 since they are generally restricted
to geometric applications. However, we can use arbitrary sized vectors for
efficient calculations and data manipulation.
2011-12-18 07:27:11 +00:00
Dalai Felinto
bfdaa3b187 bugfix: [#29486] 2D filters make scene disappear when wire material used - patch by Juha Mäki-Kanto
when last drawn material is wire it will not set back to face drawing.
2011-12-17 21:23:02 +00:00
74a1123059 Quite some compiler warnings... 2011-12-17 16:22:08 +00:00
b8e96e70dc better to generate the library string always because it could lead to null pointer dereferences. I don't have a non-shader system to check so skipping the conditional just to be safe 2011-12-17 13:02:31 +00:00
7d2fbfeb9f move GPU_code_generate_glsl_lib to GPU_extensions_init. This makes more sense as we cleanup the library string in GPU_extensions_exit. Thanks to Mitchel Stokes for reporting and proposing this 2011-12-17 12:58:20 +00:00
04fbfc2179 Calculation of the center and normal for sculpting would ignore whether the sculpting tool is using the current vertex positions/normals or the positions/normals from before the current edit. Most of the time this will lead to subtle and hard to predict differences from what a user might expect. There was sum testing and discussion about at the end of last summer and even some screen shots showing the difference. I'm going to go ahead and apply this since I do not think it is controversial. 2011-12-17 03:49:39 +00:00
84236c2502 use 2d copy functions with UV's in more places. 2011-12-17 03:46:38 +00:00
994f4bb3f7 Code cleanup: fix a few warnings (>= 0 and == -1 tests on unsigned types). 2011-12-17 01:13:02 +00:00
ad96dacbc5 style edit only - move parenthesis onto second line of function definition (in keeping with most of blenders code)
also split some long lines in own code.
2011-12-17 00:52:36 +00:00
9276fb479e Automatically update sound animation cache when doing a mixdown. 2011-12-17 00:22:15 +00:00
4d6c34462c Fix #29640: make duplicates release keep hierarchy and parent properties not
working for multiple objects.

ID.newid only worked for one object, now it uses a hash instead.
2011-12-16 23:56:18 +00:00
6f24642a2d Fix #27847: sequencer scene strip rendering crash, due to use of freed
RenderResult.rect. Sergey did all the work to track this down, I'm just
committing a slighty different fix.
2011-12-16 22:45:29 +00:00
c82fdb8e41 Fix use of deprecated im_type member in quicktime export. 2011-12-16 22:33:22 +00:00
5fa014ff02 Fix #29569: region expander widget drawing poorly antialiased. 2011-12-16 22:00:53 +00:00
Dalai Felinto
2a6fdbcccd Cycles Gamma Node
Node specially useful for Texture correction.

This is also a nice example of a simple node made from scratch in case someone wants to create their custom nodes.
Review by Brecht.
2011-12-16 20:35:06 +00:00
3311164b24 Math lib: matrix multiplication order fix for two functions that were
inconsistent with similar functions & math notation:

mul_m4_m4m4(R, B, A) => mult_m4_m4m4(R, A, B)
mul_m3_m3m4(R, B, A) => mult_m3_m3m4(R, A, B)

For branch maintainers, it should be relatively simple to fix things manually,
it's also possible run this script after merging to do automatic replacement:
http://www.pasteall.org/27459/python
2011-12-16 19:53:12 +00:00
Dalai Felinto
3c8ab559a5 Normal Node - Cycles
reviewed by Brecht, with help from Lukas.

Note: dot is reversed compared to Blender.
In Blender Normals point outside, while in Cycles they point inside.
If you use your own custom vector with the Normal Node you will see a difference.
If you feed it with object normals it should work just as good.
2011-12-16 18:15:07 +00:00
ce8f64d9f9 de-duplicate parent loop checking function 2011-12-16 10:39:43 +00:00
68dd398063 remove duplicate if'0'd functions, same versions are in drawarmature.c.
also added note of function to de-duplicate.
2011-12-16 10:30:53 +00:00
e9ab58ad8f Fixed incorrect usage of enum as integer 2011-12-16 10:18:59 +00:00
2253b63c97 static functions for getting power of 2 values were being copied about too much, add to the BLI_math api.
- is_power_of_2_i
- power_of_2_min_i
- power_of_2_max_i
2011-12-16 09:25:07 +00:00