Commit Graph

28085 Commits

Author SHA1 Message Date
Campbell Barton
89db50a712 patch [#29534] Change Matrix Representation and Access in Python to Conform with Standard Notation
from Andrew Hale

Scripts which access matrix row/columns directly and scripts that create new matrices with elements defined will need updating.


For more info see...

* Guide for updating scripts
  http://wiki.blender.org/index.php/User:TrumanBlending/Matrix_Indexing

* Discussion thread
  http://markmail.org/message/4bpqpxkcvq4wjyfu
2011-12-22 01:05:03 +00:00
Campbell Barton
51016c4dea split >120 length lines (mostly if statements) 2011-12-22 00:03:20 +00:00
Dalai Felinto
5272d76faa patch [#29676] ALPHA OVER: Fix associated alpha over situation to fix [#29675] patch by Troy Sobotka
note: if alpha is negative the code will still produce non-optimal results.
This is a separate issue though, the patch fix the premul assumption that
alpha can be zero and rgb still be valid.
2011-12-21 23:59:57 +00:00
Campbell Barton
26f69488ca Matrix.translation wrapper vector, continent accessing to matrix[3][0:3].
this is a part of patch 29534, being applied separately

from patch [#29534] Change Matrix Representation and Access in Python to Conform with Standard Notation
by Andrew Hale (trumanblending)
2011-12-21 23:12:16 +00:00
Campbell Barton
96bd647c4f split some >120 lines, no functional changes 2011-12-21 22:56:06 +00:00
Nicholas Bishop
d53034d9c9 == Sculpt ==
Reformatted all lines longer than 120 characters in sculpt.c. Should
be no functional changes. Thanks to Campbell for pointing out the
issue.

I wouldn't normally do this, but just for reference, here is a
screenshot that hopefully makes clear why I think this is worth doing:
nicholasbishop.net/random/longlines00.png
2011-12-21 22:23:39 +00:00
Campbell Barton
0772ebc02c fix for use of uninitialized value for ipo conversion. 2011-12-21 21:40:21 +00:00
Campbell Barton
840dfcd56d cleanup and some fixes to mathutils by Andrew Hale
* 1. Resize 4x4, code was ridiculously complex (cleanup only)
* 2. matrix * matrix checking for compatibility wasn't working right (bug in last release)
* 3. fix for result size for matrix * vector if matrix is 4x4 and vector size 3 (bug in recent patch)
* 4. fix for result size vector * matrix if matrix is 4x4 and vector size 3 (bug in recent patch)
2011-12-21 21:21:27 +00:00
Campbell Barton
3b7aa6bb12 patch [#29667] Fix for potential memory corruption in path_util.c
from Andrew Wiggin (ender79)
2011-12-21 20:56:49 +00:00
Guillermo S. Romero
2f90cfd423 SVN maintenance. 2011-12-21 20:32:29 +00:00
Bastien Montagne
fbc8362597 A few small fixes to new UI messages... 2011-12-21 18:18:36 +00:00
Brecht Van Lommel
2777ba097f Fix linux linking issue with md5 commit. 2011-12-21 14:35:48 +00:00
Brecht Van Lommel
99e6e6cc08 Fix #29670: color picker draw issues with RGB values out of soft range. 2011-12-21 13:49:22 +00:00
Brecht Van Lommel
1dd72692cd Code refactoring: move MD5 out of imbuf into blenlib. 2011-12-21 13:48:51 +00:00
Sergey Sharybin
045a91a378 Do not show "Modify" modifiers group for curve objects
This commit prevents adding empty groups to Add Modifier menu making
this menu small and nice for objects which don't support all modifiers
from some group (like Curves don't support Modify modifiers).
2011-12-21 13:31:28 +00:00
Bastien Montagne
04077f4680 Small i18n edits:
* Added serbian_latin locale (sr@latin).
* Changed serbian UI to  "Serbian (Српски)" (as requested by Nikola Radovanovic, serbian translator).
* Reordered languages in menu in alphabetical order!
2011-12-21 11:56:42 +00:00
Campbell Barton
01de7c2979 fix for mathutils mat*vec for non sqyare matrices by Andrew Hale 2011-12-21 11:36:28 +00:00
Sergey Sharybin
8fbff6100d Added Record run no gaps timecode for movie clips.
Also get rid of hardcoded constants in readfile and use constants from ImBuf headers.
2011-12-21 11:01:08 +00:00
Dalai Felinto
056c49e9ec Patch [#29654] New menu option under Object > Game with "Copy All Physics Attributes" by Daniel Macedo
"This is a patch that adds an option under the menu Object > Game to copy all the physics attributes from Game Engine."
2011-12-21 02:41:27 +00:00
Campbell Barton
0e4f1ad43d topo mirror and sync with minor edits made to bmesh, no functional changes 2011-12-20 23:14:29 +00:00
Bastien Montagne
738fdc7b6f New modifier type: eModifierTypeType_NonGeometrical, for modifiers affecting CustomData layers only (e.g. UVProject and WeightVG ones).
Also, allow applying to obdata those modifiers, even with shapekeys, but do not allow applying them *as* shapekey (as shapekeys do not have CD layers).

Fix [#29636] Vertex Weight Mix modifier "apply" button don't work.

Note: applying whit shape keys currently always uses base shape, not current one (for apply to obdata as well as apply to shapekey), but this is another topic...
2011-12-20 14:15:59 +00:00
Brecht Van Lommel
81c635a3bb Fix #25775: crash using border render from external render engines, merging
back the tile used wrong offsets.
2011-12-20 12:25:18 +00:00
Campbell Barton
ea88a0bec5 recent commit missed swapping args for MATRIX_ITEM in mathutils_Vector.c, breaking matrix*vector. 2011-12-20 11:37:55 +00:00
Campbell Barton
b70174cb93 move topology mirror out into its own functions - needed for bmesh branch so we can use then for bmeshes own internal mirror calculations. 2011-12-20 10:05:58 +00:00
Bastien Montagne
2bfad340ff Fix a small typo-bug in UVProject modifier (using v3 instead of v4 to detect tri/quad faces). Seems it was harmless, though... 2011-12-20 09:57:01 +00:00
Sergey Sharybin
2f9925f913 Get rid of hardcoded structure definition in DM drawing callbacks
Structures passing to DM callbacks as userData used to be defined in both callee
and callbacks itself which made it difficult and unsafe to add new properties
to user data.

Added typedefs for this structures and use them in callbacks and callee functions.
2011-12-20 08:47:36 +00:00
Campbell Barton
436295026a patch [#29662] Modifications to Mathutils Vectors for Consistency with Commit 42752
from Andrew Hale
2011-12-20 05:48:35 +00:00
Campbell Barton
a8ed803b66 rename internal matrix struct member vars to avoid confusion
Matrix.contigPtr --> matrix
Matrix.row_size --> num_col
Matrix.col_size --> num_row
2011-12-20 04:11:23 +00:00
Campbell Barton
3d8ee28750 __str__ functions for other mathutils types 2011-12-20 03:37:55 +00:00
Dalai Felinto
32b23b9f74 Cucumber, first batch of merge - UI changes and custom exit key
---------------------------------------------------------------
This was a test drive to see how painful the merge will be.
Next batches are:
- use desktop option for fullscreen
- multisampling option
- bullet collision mask
- python
- storage (vbo, dl, ...)
- lighting

[lighting still needs review]
[python could use review, although it should be straightforward]
[storage should be tested more I think]


Merged /branches/soc-2011-cucumber:r
36991,37059,37157,37416,37497-37499,37501,37522,39036,40593

36991:
==UI==
* Made some options available in Blender Game that were only available in Blender Render (camera resolution, animation fps)
* Created a panel for the embedded player
* Renamed the FPS option for the standalone player to Refresh Rate
* Moved framing options to display
* Made a button to launch the blender player from within blender (only tested on windows for now)

37059:
==UI==
* Added the option to change the exit key for the BGE. The UI currently just sets a number, and this feature most likely does not work for blenderplayer yet. More work on this to come.
* Removed the physics settings from the scene panel for the BGE.
* Added an Add menu in the logic brick header.

37157:
Making the bake options available in Blender Game

37416:
Making the exit key UI element accept key presses instead of numbers. It still does not work for the Blenderplayer, and it does not limit the input to key presses (other events don't work for exiting)

37497:
Some more work on getting the exit key to work in the Blenderplayer.
Input is now restricted to keyboard events only for the exit key UI.
37498:
Some clean up from the last commit.
The exit key setting affects the Blenderplayer now.
37499:
Cleaning up some duplicate code. Now the reverseTranslateTable for converting blender key codes to ketsji key codes is only defined in BL_BlenderDataConverter.
37501:
Centralizing the exit key methods to the keyboard devices. This should make it easier to get exit key control to the python API.

[37517: committed previously]

37522:
Moved control of the exit key away from the keyboard devices, and moved it to ketsjiengine.
Added setExitKey and getExitKey to the python API

39036:
A couple of the doversions were in the wrong spot. This should fix some issues with the exit key not being set.
[not committed entirely, see below]]

40552: space_logic.py (* fixed an error in space_logic.py *)

40593:
launch blenderplayer from ui not working in OSX fix - by Daniel Stokes and me



########################################################
code left behind (to be included in next commit):
########################################################
		{
			/* Initialize default values for collision masks */
			Object *ob;
			for(ob=main->object.first; ob; ob=ob->id.next)
				ob->col_group = ob->col_mask = 1;
		}
2011-12-20 03:11:56 +00:00
Campbell Barton
553cf289a7 patch [#29651] Add a __str__ Method to Matutils Matrices so print(matrix) Shows Columns as Columns
from Andrew Hale

converted from python string formatting to using BLI_dynstr
2011-12-20 02:54:25 +00:00
Campbell Barton
a7a6049978 minor edits to previous commit & set VKey to toggle vertex select in weight paint mode. 2011-12-20 02:04:35 +00:00
Campbell Barton
4d08df734c unit test for mathutils python module from Andrew Hale, runs in CTest too 2011-12-20 01:49:24 +00:00
Michael Fox
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
Campbell Barton
71ce197bbb patch [#28094] New equirectangular world texture mapping option 2011-12-19 23:52:17 +00:00
Campbell Barton
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
Thomas Dinges
b66c87231a * Changes for static win32 png libs. 2011-12-19 19:46:07 +00:00
Brecht Van Lommel
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
Bastien Montagne
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
Bastien Montagne
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
Campbell Barton
53f88b231a corrections to some comments 2011-12-19 05:23:52 +00:00
Campbell Barton
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
Campbell Barton
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
Campbell Barton
d0aa012b0a change BLI_assert() so it can be included in other defines. 2011-12-19 03:06:44 +00:00
Campbell Barton
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
Campbell Barton
65f2cbdd0f remove windows only benchmark functions, use PIL_time.h's TIMEIT macros instead. 2011-12-18 22:35:52 +00:00
Bastien Montagne
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