This bug was caused by my recent commit to get bone select -> selection syncing working. The selection flushing was occurring too readily, blocking any selection tools from having any visible effect. Now this syncing is only triggered when appropriate notifiers+flags have been set.
Assignment to KX_GameObject localOrientation and
worldOrientation matrices was assuming row-major matrix
although reading these matrices was returning a column-major
MathUtils object.
The faulty function (PyMatTo) is fixed and all matrices
in python are now assumed column-major.
This function is also used in the following methods:
BL_Shader.setUniformMatrix4()
BL_Shader.setUniformMatrix3()
(No change in scripts if you didn't specify the optional
transpose parameter: the default value is changed so
that column-major matrices are assumed as before.)
KX_Camera.projection_matrix
(assignement to this attribute now requires a column-major
matrix and you must fix your script if you were setting
a value to this attribute.)
- ToolSettings had its id.data set to NULL when taken directly from the context (causing a crash in cases)
- menu for changing vert/edge/face selection now a python menu, removed operator.
- wm.context_set_value(), would really prefer not to have this since it evaluates the value as a python expression however there are no ways to define arrays in PyOperators
* Added function for F-Curves to find the F-Curves in a given list which affect some named data, such as bones, nodes, or sequence strips.
* Added a BezTriple offsetting callback to be used with the F-Curve+Keyframe loopers in use for many of the keyframe editing tools.
for panels it would fail silently but for menu's it meant further references would give errors.
increase the registered class name from 32 to 64 and raise an error if the limit reached.
It's not range_ui, but range itself. if someone think that for some reason it's better to keep the visible range up to 100 (the current one) it could be as well.
From the tracker:
- typo was making the multiplication to transpose resulting matrix
eg
####
from Mathutils import *
from math import radians
cont = GameLogic.getCurrentController()
owner = cont.owner
owner.worldOrientation = RotationMatrix(radians(1), 3, 'z') * owner.worldOrientation
####
Also make the transform operator creation a bit more automagic (I always forget either operator registration or modal keymap registration, this is all automatic now).
This commit brings back the functionality whereby the selection of F-Curves and/or relevant Group(s) is synced with the selection status of the corresponding bones when the bones are selected/deselected.
Mostly the same as the recently added editmode tool with some extras.
* Options to disable filling in the rim between inner and outer surface, since its faster not to detect this in cases where its not needed.
* Option to disable high quality normal calculation, mostly noticable when operating on building walls, not needed for cloth or more organic shapes.
* Option to disable 'even thickness', again, not needed in some cases.
Also options for creasing inner/outer and rim edges, need this for makign Sintels cloths solid since zero crease looks far too soft.
note:
* UVs and VCols etc are copied to the new skin however rim faces dont get the UVs or vcols set from the faces they are created from yet.
* Normals are assumed to be pointing outwards
* used patch from Uncle Entity as a template since it added the DNA and RNA entries but the actual modifier from the patch wasnt used.
The missing region was added to the wrong region base.
Bump the subversion, new code to fix wrong region layouts saved in previous subversion and correct all old files correctly.
introduced one in wmWindow.last_click_time. Moved this to the wmEvent
struct, which now no is in DNA, was needed for RNA wrapping but not
needed anymore.
- Camera to 3D view didnt check for rotation order.
- Fly mode didnt check for rotation order.
added util functions.
- object_apply_mat4(ob, mat4); applies a 4x4 matrix to an objects loc,scale,rot (accounting for rotation modes)
- object_mat3_to_rot(ob, mat3, use_compat); apply a 3x3 matrix to the objects rotation, option to use a euler compatible with the existing euler.