Commit Graph

47594 Commits

Author SHA1 Message Date
Bastien Montagne
78e688b71c "Fix" for [#33524] Interaction of "Size" & "Distance" sliders in "Spot Lamp" panel with "3D view"
Simply added a dashed line materializing the center/direction of the spot, and ending at Distance from it (exactly as for the Area lamp). We already had something similar for buffered shadow spots (to materialize start/end clipping), and imho it's also quite useful to see *where* points a spot, when using wide spots!

Very easy to revert anyway.
2012-12-21 20:25:02 +00:00
Bastien Montagne
924179bc00 back to utf-8 encoding! 2012-12-21 19:20:24 +00:00
Ton Roosendaal
c554830862 Bug fix #33648
Node location coordinate was wrapped within 10k limits, now 100k.
Go figure how large these modern node setups get :)
2012-12-21 19:05:52 +00:00
Ton Roosendaal
692aa18b76 Additional fix in glsl shaders: "Darken" was using different formula as render.
"Divide" still differs too for division by zero - cannot find this yet...
2012-12-21 18:10:01 +00:00
Ton Roosendaal
c9b8839237 Bug fix #33647
Particle combing didn't always respond as expected. The combed effect was 
depending on the center of object in view, instead of on the center of 
selected hairs. That made combing in certain close ups impossible.

Same was actually true for transform tools for hairs!

And even worse - there was an optimize break in calculating center
which wasn't true even. Causing centers for transform to fail similar
in other cases.
2012-12-21 17:47:50 +00:00
Ton Roosendaal
4d8f340d3e Bug fix, own collection:
User preference "Zoom Scale" didn't work correct for 2d views.
(was calculating center of region badly).
2012-12-21 16:11:50 +00:00
Bastien Montagne
8b57a67f3e Fix encoding of those files (was iso-8859-15, i.e 8bit, instead of utf-8!). 2012-12-21 15:41:34 +00:00
Campbell Barton
0ae16da000 rename rna prop _parenting -> _parent 2012-12-21 12:17:30 +00:00
Campbell Barton
f25618f29a make Node.links return a tuple, this may you can't do socket.links.append() by mistake.
removed RNAMeta mixin class since you cant register subclasses.

also some minor code cleanup
2012-12-21 12:16:13 +00:00
Ton Roosendaal
915f78af92 Armature bone feature:
New Bone option: "Relative Parenting". 

This makes Child-Objects of Bones transform similar to how deformations 
of bones are calculated. Allows to move bones in editmode to set pivot.

The option is in Bone Panel, with clear label. 
It is ON now by default when you add new bones

Requested by Kjartan, our famous robot designer :) For "hard body rigs" it's
very useful.
2012-12-21 12:07:28 +00:00
Ton Roosendaal
eb219852a8 Bug fix #33639
Material Texture blend modes Screen, Overlay and Multiply didn't respect
the alpha for textures... an error I could trace back to 2004 even.

Obviously the fix should be done, but it might change the appearance of
renders somewhat. Will keep an eye open if this is worth ugly 
version-patching.

Now: image textures with alpha, will only apply the blend modes
respecting the alpha values.
2012-12-21 10:15:12 +00:00
Sergey Sharybin
b28c055508 Fix #33640: Blender crashes when I click on "Connect Hair" in "Particles" pannel
Issue was caused by disabled particle system modifier, now connect hair
will check on that and give an error message if modifier is disabled.
2012-12-21 09:27:39 +00:00
Campbell Barton
99433a3466 minor bmesh improvements
- use 2 omp sections for vert -> (edge, face) selection flushing.
- dont use face-loop iterator for cddm_from_bmesh_ex conversion to give some speedup (some modifiers use this).
- use float(*)[3] for functions that return coords.
2012-12-21 07:28:14 +00:00
Campbell Barton
f576c281ba speedup for face tessellation:
- quads, tris now use direct pointer access rather then iterators.
- for ngons also avoid iterator, just loop over the loops.

also minor change, use floorf rather then floor for ED_view3d_project_short_ex, ED_view3d_project_int_ex
2012-12-21 07:24:31 +00:00
Joshua Leung
75e94aba98 Code cleanup
* "ad" -> "adt": use proper var names for AnimData
* Replacing some flattened loops with the cleaner for-loop syntax
2012-12-21 06:17:20 +00:00
Campbell Barton
b249255859 fix own error in bmesh/openmp unhiding, set BM_OMP_LIMIT to 0 so we can spot these cases more easily (will change before release). 2012-12-21 06:06:17 +00:00
Joshua Leung
fcd5bc147c Code cleanup - Replacing 0/1 with boolean constants 2012-12-21 05:57:37 +00:00
Joshua Leung
44dd39ea22 Bugfix [#33623] Missing labels in UI for Expanded Polynomial FModifier
Fix for second issue in the UI for this FModifier, where the "x" would not be
shown for order=1 where DPI >= 88 and Text AA is off, as the label sizes used
were too small.
2012-12-21 05:55:17 +00:00
Campbell Barton
b2c66e268f replace MIN/MAX 3,4 with inline functions 2012-12-21 05:07:26 +00:00
Joshua Leung
e09ddf0d4b Bugfix [#33623] UI for Factored Polynomial Generator FModifiers drawing
incorrectly

* Plus signs were used between factors instead of multiplication. These now use
the times symbol
* Fixed alignment problem for last factor being more spread out
2012-12-21 05:03:47 +00:00
Campbell Barton
c27d22ab71 fix own regression in 2.65 [#33643] Rotation does not work at certain zoom level
caused by not projecting points behind the perspective view,
even though this worked in 2.64 the values were flipped (rotating direction was reversed and the center point was flipped).

added V3D_PROJ_TEST_CLIP_NEAR, when omitted ED_view3d_project_*** will project points from behind a perspective view plane.
2012-12-21 03:49:47 +00:00
Campbell Barton
47a429d161 patches from fedora:
blender-2.64-64bit.patch
blender-2.64a-big-endian.patch
by Jochen@herr-schmitt.de
2012-12-21 03:02:36 +00:00
Mitchell Stokes
b13f4e6999 DDS compressed textures now make use of the anisotropic filtering setting. 2012-12-21 02:49:15 +00:00
Campbell Barton
8f262d0413 correct ed_view3d_project__internal() was unnecessarily casting (float -> short -> float). 2012-12-21 02:36:07 +00:00
Mitchell Stokes
f2f2b6153a BGE: Adding a Python interface for handling joysticks without needing logic bricks. These new SCA_PythonJoystick objects can be accessed using bge.logic.joysticks, which is a list of joysticks. The length of the list is the number of maximum supported joysticks, and indexes that do not have a joystick available are set to None. This means joysticks can be checked for using something like:
if bge.logic.joysticks[0]:
    activate_player_one()

if bge.logic.joysticks[1]:
    activate_player_two()

etc..

The interface exposed by SCA_PythonJoystick is very similar to the joystick logic brick except for one key difference: axis values are normalized to a -1.0 to 1.0 range instead of -32767 to 32767, which is what the logic brick exposed.
2012-12-21 02:28:59 +00:00
Campbell Barton
26752e8b3a minor cleanup to ui_get_but_vectorf / ui_set_but_vectorf, change the vector with one function call if its size 3. 2012-12-21 00:11:45 +00:00
Ton Roosendaal
e7731cbede UI fixes, from the todo:
- Button panel animation didn't work for 3D View properties and similar regions.
- Akey on View3d overlapping panel: was accidentally passed on as event to the main window.
2012-12-20 19:18:46 +00:00
Ton Roosendaal
c5de14ae1e Bugfix, irc collection:
Copy/Paste from and to color swatches now includes alpha.
Buttons without alpha have this value on '1' on copy.
2012-12-20 18:18:09 +00:00
Ton Roosendaal
291f59c339 Restored old hack to open/close panels on A-key.
Notes in code:

- This has to become a decent handler
- Actually "A" should open/close all?

Currently, Enter key does open/close too, but only on headers.
This because Enter on a button gets handled by buttons... that's
why the Akey was proposed :)
2012-12-20 18:04:06 +00:00
Ton Roosendaal
2421ffc85e Small fix in drawing 'selection circle' in outliner. It wasn't circular. 2012-12-20 17:40:30 +00:00
Ton Roosendaal
566d350369 UI todo:
- Recoded soft shadow drawing for menus, giving better predictable results
  (and round off nicer on top side, was looking bad still)
- Brought it under DPI control
- Added Theme setting to control size and strength for it.

Max size 24 pix:
http://wiki.blender.org/index.php/File:MenuShadow.png
2012-12-20 16:50:39 +00:00
Sergey Sharybin
4d3f0cb8c1 Better cursor centering for text editor 2012-12-20 16:37:07 +00:00
Brecht Van Lommel
e7485d46cd Fix #33630: DDS compressed textures were not actually using mipmaps for minification. 2012-12-20 15:49:59 +00:00
Brecht Van Lommel
438b19e94a Fix #33629: DDS DXT5 with alpha not loaded correctly, Y flipping code was wrong. 2012-12-20 15:45:42 +00:00
Ton Roosendaal
532f4b872e Bug fix:
Laptop trackpad scroll was inverted for 3d window.
Now movement is consistent among editors and follows system prefs.
2012-12-20 14:45:56 +00:00
Campbell Barton
0e3d637ad0 Change region drawing callbacks to work much closer to how blender manages them internally.
- yes, this does break scripts, but the api is marked experimental.


ED_region_draw_cb_activate() adds a callback to a region type whereas the api made it look like the callback was being added to the region instance.
Use a class method on bpy.types.Space to manage region drawing, eg.

was:
  self._handle = context.region.callback_add(draw_callback_px, args, 'POST_PIXEL')

is now:
  self._handle = bpy.types.SpaceView3D.draw_handler_add(draw_callback_px, args, 'WINDOW', 'POST_PIXEL')
2012-12-20 13:29:58 +00:00
Ton Roosendaal
4e2bc939c1 Mac Retina fix:
Mouse coordinates were not mapped correctly for code that allows to use
multiple windows efficiently (mouse over not-active windows).

Apple's high-density display mode works a bit strange, requiring some hacks :/

- Desktop coordinate system (mouse pos and for windows) is as usual
  (set by display resolution settings)
- However, the available pixels in a window is always on 'retina' level.
  (full screen - 2880 wide, but window can be 1440 or 1920 wide)

In order to get this to work for opengl and Blender, we use internally the
coordinates on pixel level. That means that window positions and sizes have
to mappend in our code.

Once all issues for retinas have been tackled, I'll check on clean API for 
it, so you can also use it in future for other high density screens.
2012-12-20 11:14:52 +00:00
Lukas Toenne
2f3d2483c3 Make the get_node_type method in Node subtype an actual classmethod by setting the new FUNC_USE_SELF_TYPE flag. 2012-12-20 09:49:15 +00:00
Lukas Toenne
a83cdfe41a Associate Node RNA subtypes with their respective bNodeType on registration. This has to be done in blenkernel, since RNA node types are actually registered before the node types. Future dynamic node types registered using the API will register their own explicit RNA types and don't need this hack. 2012-12-20 09:49:11 +00:00
Lukas Toenne
35c2267aee Support for actual class methods in the RNA/bpy. Previously all functions with FUNC_NO_SELF were treated as static methods, which is not sufficient for getting actual type information if the function can not be generated in advance in makesrna. Now the FUNC_USE_SELF_TYPE flag can be set in addition to FUNC_NO_SELF (if FUNC_NO_SELF is not set, FUNC_USE_SELF_TYPE has no effect). Such functions will be interpreted as class methods and must take a StructRNA pointer argument. This pointer is the same as the type member in PointerRNA, but can be passed without an actual data/id instance. 2012-12-20 09:33:12 +00:00
Tamito Kajiyama
a462d69bbf Another big patch set by Bastien Montagne, thanks a lot!
* Made Freestyle optional (turned on by default).

* Fix for missing bpath.c updates in the previous merge of trunk changes.
2012-12-20 07:57:26 +00:00
Morten Mikkelsen
2fcac424c0 add a comment 2012-12-20 05:07:14 +00:00
Morten Mikkelsen
6ccadbc6d6 must use permutation table 2012-12-20 05:03:00 +00:00
Campbell Barton
e4728bf910 add a test to the addons loaded that tries to load all addons then lists addons that fail. 2012-12-20 03:10:30 +00:00
Campbell Barton
3c9f502049 py api: be more strict with boolean assignment, only accept 0 or 1, True/False. Would allow any nonzero value. 2012-12-20 03:08:27 +00:00
Campbell Barton
3bc3e178b3 style cleanup 2012-12-20 00:29:31 +00:00
Ton Roosendaal
8d4c61a2ab Animation system small fix:
On browsing actions in DopeSheet editor, the animation state didn't update.
2012-12-19 18:36:20 +00:00
Ton Roosendaal
eac2042fc0 Another patch for changes in file format...
- Since 2.50, the .blends have the current file name stored
- In versions up to 2.65.0 this didn't save for files saved from startup
  (i.e. files saved without loading a file)

Code now adds the file name after all, except for recovery loads.
2012-12-19 16:45:47 +00:00
Ton Roosendaal
482630652b Bugfix, in 2.61.1
Overlapping regions now hide automatic when too little space is left.
2012-12-19 16:16:20 +00:00
Ton Roosendaal
9aa6698bd0 UI DPI scaling:
Recoded the (2.65.1 version) region scale, which happened on loading files with 
different saved size windows. Also scaling window itself was affected.

Old method: scaled region widths based on area/editor scaling factors.
That was leading to too small or too large button regions easily.

New method: region width/height now are in DPI control. Much nicer!
- On changing dpi, buttons remain visually same widths.
- On changing window sizes, the button views and zooms stick to exactly same.

Caveat: people who were using Blender with 'extreme' dpi setting, might find
the layouts slightly differ. Not sure if this is worth version patching...

Todo: overlapping regions that overlap together draw badly. Fix underway.
2012-12-19 15:44:47 +00:00