Made the loop cut confirmation (when finding an edge ring to cut) happen on
mouse press, rather than release.
This has a nice side effect when using the 'release confirm' option, combining
the two steps into one - with this on you can click once to immediately place the
cut in the center, or click+drag to move the cut line where you want it to.
See: http://mke3.net/blender/devel/2.5/loopcut_releaseconfirm.mov
PhysicsConstraints module documented by Jean-François (Ninja Goliath) based on GameKit 2nd ed.
Thanks for the initiative and the great help!
General advice for anyone helping with EpyDocs:
* use :: instead of : to keep the indentation correct,
* use B{} for clarity when needed (e.g. createConstraints)
Adding F13 to F19 to complement Matt's recent commit
* There are other (not so important) functions in PhysicsConstraints module that are not exposed in the documentation right now.
The generated page is temporarily here, if someone want to review it:
http://blenderecia.orgfree.com/blender/tmp/PhysicsConstraints-module.html
Note that this is not the patch by dfelinto on the mailing list, since that fix would cause compiler warnings. Also, the invoke() (with the extra wmEvent* arg) is superfluous here, so there shouldn't be any problems with making this exec() only instead.
Select from last selection. This new setting allows to select all files from the last selected to the current. (Works like SHIFT+SELECT in Windows file browser)
Keymap is LEFTMOUSE+ALT for now since LEFTMOUSE+CTRL is already used for renaming (like in outliner)
would convert from quat to matrix and back if the bone had any constraint,
but did not normalize the quat first as done in other places, giving a
sudden jump when starting transform on some bones with constraints. Two
changes:
* Normalize quaternion first.
* Only do this conversion on bones with limit rotation constraints,
instead of all bones with any constraint.
* new icon for split view (at least temporary)
* icon buttons in header rather than popup menus for better efficiency (can easily be changed in python UI script again)
Bone would get a '.' added even when there was no extension.
(center limit would still be useful)
- name flipping function used sizeof() incorrectly.
- ED_lorem should be extern.
fixing
[#21014] SEQUENCER: Can no longer apply colour balance filter to colour effect strip.
Also: reordered some UI elements so that
geometry, time and color modifications are grouped together.
- collada export would run MEM_freeN on an un-initialized pointer in some cases.
- makesrna was missing a call to close a file.
- text cursor update function was missing a NULL check for st->text.
- possible (unlikely) un-initialized return value for bge python lamp.type, set error instead.
- possible (unlikely) missing NULL terminator with strncpy for ffmpeg.
- BGE Shader.setSampler(name, index): index range check was wrong.
- Compositor check for an invalid channel was incorrect.
- getting the center of selected verts used an uninitalized z axis.
- do_init_render_material() used && rather then & when testing for MA_TRANSP.
- weight paint activate flipped bone used && rather then & for flag checking.
The patch exposes mouse and keyboard read-only properties in the GameLogic module
Also renames bge.keys to bge.events (* Note: name of bge submodules (logic, render, ...) may change before 2.5 final release [right Campbell?]).
"""
This patch adds two new types to the BGE:
SCA_PythonKeyboard
SCA_PythonMouse
These two types allow users to make use of the keyboard and mouse without the need for a keyboard or mouse sensor.
SCA_PythonKeyboard has an events property that acts just like SCA_KeyboardSensor.events.
SCA_PythonMouse also has an events property to check for mouse events. Further more it supports getting and setting normalized cursor position (from 0.0 to 1.0) with SCA_PythonMouse.position. The cursor can be shown/hidden using SCA_PythonMouse.visible.
"""
Its use is similar with current mouse and keyboard controllers. With the exception of mouse position being normalized and writable as well (replacing Rasterizer.setMousePosition).
Code Sample:
######
from bge import logic, events
mouse = logic.mouse
keyboard = logic.keyboard
for key,status in keyboard.events:
if status == logic.KX_INPUT_JUST_ACTIVATED:
if key == events.WKEY:
print(mouse.position)
# move_forward()
mouse.visible = True # turn cursor visible
mouse.position = 0.5,0.5 # centralize mouse - use tuple
######
* Important Note: mouse.position still will not work properly for Letterbox mode.
In order to fix letterboxing I may need to move the set x,y mouse function to inside the canvas code (to avoid duplicated code between mouse sensor and bge.logic.mouse). I'll leave this for another commit though.
Thanks Mitchell for the work on that.
I heard that the actual solution would be to remove #include <pthread.h> from BLI_threads.h
But in the mean time is not fair to CMake/MSVC to be the only system not building ;)