* Default icons can be selected from a menu
* Option to make a custom icon from a file is present but the UI is disabled because of a mysterious crash
* New startup.blend that has the appropriate icons selected
* First, try to load the file from the given filename. This is either absolute or relative to the current .blend
* If file is found using the given filename directly then look for the file in the datafiles/brushicons directory (local, user, or system).
* Note: This commit does not update the .blend to reference the default icons
* Note: This commit does not make sure that the build system copies the default icons to the 2.52/datafiles/brushicons directory
- Temporary fix for linked libs repathing (didn't work correctly when using relative links).
- autorefresh only for main page (on job page, it's really annoying because it keeps reseting results preview, so until that's fixed, off it is).
These are not animated and are best not change names like this too late in the release.
ActionGroup.selected -> select: boolean Action Group is selected
BezierSplinePoint.hidden -> hide: boolean Visibility status
BezierSplinePoint.selected_control_point -> select_control_point: boolean Control point selection status
BezierSplinePoint.selected_handle1 -> select_left_handle: boolean Handle 1 selection status
BezierSplinePoint.selected_handle2 -> select_right_handle: boolean Handle 2 selection status
Bone.restrict_select -> hide_select: boolean Bone is able to be selected
Bone.selected -> select: boolean
CurveMapPoint.selected -> select: boolean Selection state of the curve point
EditBone.restrict_select -> hide_select: boolean Bone is able to be selected
EditBone.selected -> select: boolean
EditBone.selected_head -> select_head: boolean
EditBone.selected_tail -> select_tail: boolean
EditBone.locked -> lock: boolean Bone is not able to be transformed when in Edit Mode
EditBone.hidden -> hide: boolean Bone is not visible when in Edit Mode
NEGATE * FCurve.disabled -> enabled: boolean F-Curve could not be evaluated in past, so should be skipped when evaluating
FCurve.locked -> lock: boolean F-Curve's settings cannot be edited
FCurve.muted -> mute: boolean F-Curve is not evaluated
FCurve.selected -> select: boolean F-Curve is selected for editing
NEGATE * FCurve.visible -> hide: boolean F-Curve and its keyframes are shown in the Graph Editor graphs
FCurveSample.selected -> select: boolean Selection status
GPencilFrame.selected -> select: boolean Frame is selected for editing in the DopeSheet
GPencilLayer.locked -> lock: boolean Protect layer from further editing and/or frame changes
GPencilLayer.selected -> select: boolean Layer is selected for editing in the DopeSheet
Keyframe.selected -> select: boolean Control point selection status
Keyframe.selected_handle1 -> select_left_handle: boolean Handle 1 selection status
Keyframe.selected_handle2 -> select_right_handle: boolean Handle 2 selection status
MeshEdge.selected -> select: boolean
MeshEdge.hidden -> hide: boolean
MeshFace.hidden -> hide: boolean
MeshFace.selected -> select: boolean
MeshVertex.hidden -> hide: boolean
MeshVertex.selected -> select: boolean
MotionPathVert.selected -> select: boolean Path point is selected for editing
NlaStrip.selected -> select: boolean NLA Strip is selected
NlaTrack.locked -> lock: boolean NLA Track is locked
NlaTrack.muted -> mute: boolean NLA Track is not evaluated
NlaTrack.selected -> select: boolean NLA Track is selected
Object.restrict_render -> hide_render: boolean Restrict renderability
Object.restrict_select -> hide_select: boolean Restrict selection in the viewport
Object.restrict_view -> hide: boolean Restrict visibility in the viewport
Object.selected -> select: boolean Object selection state
ObjectBase.selected -> select: boolean Object base selection state
PoseBone.selected -> select: boolean
Sequence.right_handle_selected -> select_right_handle: boolean
Sequence.selected -> select: boolean
SplinePoint.selected -> select_control_point: boolean Selection status
TimelineMarker.selected -> select: boolean Marker selection state
Sequence.left_handle_selected -> select_left_handle: boolean
ActionGroup.locked -> lock: boolean Action Group is locked
Bone.hidden -> hide: boolean Bone is not visible when it is not in Edit Mode (i.e. in Object or Pose Modes)
SplinePoint.hidden -> hide: boolean Visibility status
FModifier.muted -> mute: boolean F-Curve Modifier will not be evaluated
note: rebaned uv_select to select_uv
when both are off the behavior is unchanged.
This is needed when rendering alpha text so its possible to have a single layer of faces but use the bevel option to make text thicker.
adding a rim on the back when back is disabled also doesnt make much sense IMHO.
minor python edits too.
- made smallcaps use a temp flag so caps can still have the smallcaps flag.
- utility function for getting the char from a font. find_vfont_char(), was inline in ~5 places.
- removed CU_STYLE mix of flags only used in one place, not needed. removed 'style' from rna too.
- fix for some warnings.
- attribute save_keyconfig defaulted to True when unset, not sure why, but .
- use repr() rather then str() so strings are quoted without manually checking. also converts less common chars properly \m \" etc.
- Okey sets the border in the display.
- Okey resets the frame offset in the sequencer timeline.
- ghost icon in the header can enable/disable.
- frame offset can be relative or absolute (lock icon)
Not very happy that this commit adds a call to BKE_animsys_evaluate_animdata(scene, ...) in do_build_seq_array_recursively()
without this the offset frames dont have fcurves applied.
Though we will need something like this for prefetch frames to work too.
This was the old Ctrl + FKEY in object mode, now it's in
edit mode and is part of the Ctrl + FKEY menu (Faces).
I also assing this to the Ctrl + Alt + FKEY, but Matt please
check this and feel free to change (or tell me and I will change).
Still there is no "reverse" function, but I commit now to finish
in my home.
Fairly closely match some mac application colin has called 'Looks', to give better results.
- lift is now applied non linear (was being added to the color)
- change the color wheel to preserve the luminance of the gamma and gain values, this stops the color from being set too dark (option for the color wheel template).
- sub-pixel precission for the color wheel since the white area at the center can make a lot of difference with a very small change.
This change will make existing node and sequencer setups lift render slighly differently however discussed this with Ton and he's ok with it.
- Holding Alt while clocking on the browse button opens a file browser with the containing dir.
- Holding Shift opens the file its self in the default application.
obscure but at least theres a tooltip so its not totally hidden.
* Constraint template now uses 2 rows as well, when the area width is small.
* UI Code could use some code/layout cleanup still, will look into that soon.
- rename 'no_bg' argument to 'emboss' (and negated)
- added 'emboss' option for operator buttons.
- Addon UI Layout slight modifications, changed enable/disable buttons for checkbox, grey out text of disabled addons to make it obvious at a glance whats enabled.
- column expanded enums now align text to the left.
- renamed ui_item_enum_row to ui_item_enum_expand since its used for columns and rows.
displaying lamp properties regardless of type hence causing errors. Now
active object controls what properties to display. Still it's possible to
manage multiple mixed lamps types at once. Also added useful items for
cameras and empties
Layout is now simpler, more easy to scan. This commit also simplifies the Python code and gets rid of hundreds of wasted lines of code, making it much easier to make layout changes.
This started off doing pointcache debugging but it's also very useful for users too.
Previously it was very hard to see the state of the system when you're working caches
such as physics point cache - is it baked? which frames are cached? is it out of date?
Now, for better feedback, cached frames are drawn for the active object at the bottom
of the timeline - a semitransparent area shows the entire cache extents, and more
solid blocks on top show the frames that are cached. Darker versions indicate it's
using a disk cache.
It can be disabled in general in the timeline View -> Caches menu, or by each individual
system that can be shown.
There's still a bit to do on this, behaviour needs to be clarified still eg. deciding what
shows when it's out of date, or when it's been played back but not cached, etc. etc.
Part of this is due to a lack of definition in the point cache system itself, so we should
try and clean up/clarify this behaviour and what it means to users, at the same time.
Also would be interested in extending this to other caches such as fluid cache,
sequencer memory cache etc. in the future, too.
Minipatch to add the Origin button in the Toolshelf in the Transform section.
I missed this because
1) it was called "center" in 2.4 and it's difficult to find just searching if you don't know it's "origin"
2) it was in the the object » transform menu, not very practical to use often
Discussed with Gensher, Campbell and Matt before committing :)
Save and Restore master from disk.
When the "clear on exit" option is off, write a data file (blender_master.data) in the master's path on exit and reads it back on load.
Note: Jobs and Slaves lists are restored, but not balancer settings (problem with the pickle module).
Add Convert operator and button (missing in 2.5)
Fix stroke selection (uneeded separate operator and missing redraw)
Map sketch operators to LEFTMOUSE and RIGHTMOUSE instead of SELECTMOUSE AND ACTIONMOUSE (more in line with other sketching operators, might work better with swapped mouse buttons)
- release/scripts/ui/space_userpref.py
added the change to add a 'warning' field to bl_addon_info
warning icons are used to show 'broken' scripts or warnings
asked permission to campbell and matt in blendercoders to apply this
- source/blender/python/doc/sphinx_doc_gen.py:
small fix in the url
path -> filepath (for rna and operators, as agreed on with elubie)
path -> data_path (for windowmanager context functions, this was alredy used in many places)
a bit arbitrary but with most cases where solidify is used in durian we get UV texture stretching since there is no way to access the newly created size faces this gives us a way to switch out the material on the rim.
- bpy.context wasnt being created from the python bpy.types.Context type defined in bpy_types.py (bpy.context.copy() failed for eg.)
- bpy.context.copy() was returning C defined methods like FloatProperty(), which are not useful in this case, removed.
- added relative option to saving external multires data
- renamed multires external functiosn to have save / pack as suffix.
- added TODO's for file select operators that should support relative paths but dont.
- also disable openmp on linux cross compile, mingw currently isnt linking -lgomp
* Now it displays the last report from the global list, not just from operators
* Rather than disappearing when a new operator is run, it stays until it times
out or a new report is added
* Fun animated transitions ;)
http://mke3.net/blender/devel/2.5/reports_header.mov
Now need to investigate report usage with popups. Ideally we can have most
reports non-blocking, so they're less intrusive, only popping up for dire errors.
Problem is many things in Blender right now are marked as RPT_ERROR
when probably RPT_WARNING is more appropriate. Should probably keep
RPT_ERROR for things that demand immediate attention.
clear properties operator
- now it's not part of the copy properties anymore (Matt's suggestion).
If anyone want to change the menu, please help yourself (renaming, putting in it's own submenu, making it invisible when mode is not Game ..)
there are internal memory problems which can make it crash still.
If you remove all directories in the scripts folder except for 'modules' and 'ui', it runs without crashes.
Request from mindrones :)
* Next to the Wiki URL, it's now possible to have a link to the tracker, for bug reports.
"bl_addon_info" dictionary:
* Renamed 'url' to 'wiki_url'
* Added 'tracker_url'
Current SVN crashes, if we are using hard-cuts on multicam tracks. Changing to soft cuts for now
(since it should be the same for effect strips anyways...)
* Path drawing now works for non hair particles.
* Should fix the following bugs too:
[#21316] Hair weight drawing is wrong
[#21923] Consistent Crash When Rendering Particle Scene.
[#21950] Path rendering option for particles causes crash
- Also made it so sys.stdin isnt overwritten anymore, instead the interactive consoel overwrites while it executes and restores after.
- removed hope folder from sphinx patch path
1) Fixed some weird formatting introduced during math-lib cleanups, and some other inconsistencies
2) Optimised the Maintain Volume constraint by taking the value calculations out
Copy All Constraints Operators:
* Added one for bones too
* These are now included in the menus
* Removed some weird/extra code copying/changing/bleh the actcol/totcol stuff...
This constraint allows an object or bone to have their rotations applied as if their origin/pivot-point was located elsewhere. The most obvious uses include foot-roll, see-saws, but could also include more complicated rolling-box examples.
== Usage Examples ==
=== Foot Roll ===
1. Add 'Pivot' Constraint to the bone without any target.
2. Set the 'Y' value of the offset to the length of the bone. Usually this should be negative (if you rig with feet facing 'forwards' along -Y axis). This gives you a pivot point relative to the bone's (preconstraint) location, which should be at the tip of the bone here. Disabling the 'Use Relative Offset' would make this offset be relative to 0,0,0 instead of to the owner/bone-head.
3. Ensure that the 'Pivot When' setting is set to '-X Rot', (default) which means that the pivot will only used when the rotation on the X-Axis is negative to get tip-toe 'roll'.
=== See Saw ===
1. Add a 'Pivot' constraint too see-saw plank object, this time with a target that you wish to have as the pivot-point. It's possible to do this without too (as before), but is less intuitive.
2. Optionally, if you want the plank slightly raised, set the z-offset value, which should make the pivot-point used to be relative to the target with the z-offset applied.
3. Ensure that 'Pivot When' is set to 'Always', which means that the pivot will always be used, irrespective of the rotation.
== Notes ==
* The 'Pivot When' setting has been integrated in the constraint, since this is something that will often be required for these setups. Having to set up additional drivers to drive the constraint to do this kindof beats the purpose of providing this.
* The 'Offset' functionality is probably not presented as clearly as it could be. We may need to go over this again.
* For foot-roll - if any scaling of the foot is required, simply set up a driver on the y-offset to make this dynamically respond to the "scale" RNA property of the bones (don't use the "Transform Channel" vartype since that won't work correct here). However, this shouldn't be common enough to warrant special treatment.
Now, rather than the bit-too-alarming stop sign, threaded wmJobs
display a progress indicator in the header. This is an optional feature
for each job type and still uses the same hardcoded ui template
(could use further work here...).
Currently implemented for:
Render - parts completed, then nodes comped
Compositor - nodes comped
Fluid Sim - frames simulated
Texture Bake - faces baked
Example: http://mke3.net/blender/devel/2.5/progress.mov
- own mistake in scene help text.
- rename properties to have users as the prefix for better ordering.
- use fixed height for stamp, gives better aligned text.
- #22155: keyframe dots not shown on path for bone keyframes that aren't in a group with a matching name. Since this situation is going to become more common in 2.5, I've added an option which will alternatively just search the entire action to find all F-Curves associated with bones. The old option is still the default though for the general cases.
- When keyframe drawing is enabled, the current frame will also be indicated on the path now as a (bigger) green dot, as requested by William. This makes it easier to see the position on the path on the current frame.
Communicate the existing material displacement feature's strange dependence on both
'normal' and 'displacement' influences better. This will do until the improved displacement
is merged from render branch.
According to Matt the RMB->Copy to selected wouldn't work for logics because the copy we need is for the whole logic (s/c/a). So (at least for the time been), copy logic is possible again.
It work as 2.49 (replacing the existent logic).
Add Logics is a python menu to give quick access to add logics. I have to see how to put that in Add Menu. I should be easy, but I'll leave it for later.
*The narrowui value was hard coded in all ui scripts, made an user preferences option. Basically this value determines on which area width, it should switch between dual/single column layout.
ToDo: The Changes only take effect when reloading scripts/restarting Blender (after saving as default). Will maybe add the "Reload Scripts" operator next to the button in the future.
* Small fix for Fluid Add Button, when in single column mode. Didn't expand like the other "Add" Buttons.
"Select all of the same type" now is binding to Shift + GKEY
Two new function, select next and prev node of the same type.
Select a node and press Shift + [ or Shift + ] go to the
previous and next node of the same type (of the active node).
This is a small request from Venomgfx, select a node
and then press Shift + F to select all the nodes of the
same type (of the active node).
The key binding can be change, we thing in a "Find Next" (that is
way the FKEY) with venomgfx, but no problem with change that.
Also I add the entry in the select menu.
space / uv edit. The code was already there, and the option as a rna
bool, but no ui to set it. Matt figured that the View menu in image
space next to other uv stuff, which only shows when UVs are edited, is
the right place.
Works so that when entering editmode for an object to edit UVs, when
have also other objects selected and this option on, also the UVs of
those other objects are shown in the image view.
Liquidape asked this on IRC, and we thought the feat doesn't exist, so I
looked out of curiosity in the code as was thinking it would be easy to
add. Was surprised to find it there already :)
First time that did anything with 2.5, was sure fun enough to search
thru the code to figure out how things work. Adding this ui thing proved
to be exactly as trivial and nice as it should, and the things under the
hood seemed nice, yay!
- link now brings up a search box so when there are 100's of groups its less annoying.
- utility functions for id-enums so only local objects can be displayed in a search list (used for group_link)
- renamed operator properties from typle to scene, group, action etc.
Added operator (and menu entry) to deinterlace all selected movie strips.
(does also walk into selected meta strips)
Also: small fix for multicam cutting tool (now works also within metas)
Condition for this to work (.blend file must be saved) was poorly communicated
in the UI (printfs are no good for this - ideally should use reports). Tweaked this a bit.
Repath functionality: Edit paths in blend file on slaves to match the transfered files.
Tested with textures and point caches. Fluid should work. Point Caches with the External option might not.
This should fix previous problems when using absolute paths in blend files.
Made Multicam-Editing really work:
* added a panel within N-keys, so that one can start/stop playback
and cut between cameras directly from the panel
* made "active_strip" RNA editable, to make that work correctly
(is usefull anyways :) )
Curve->lastselbp field was renamed to Curve->lastsel and now not last
either BPoint or BezTriple is storing here. It's not easy to determine
type of selected point, but operator which depends on such point reviews
the full nurbs, so this shouldn't be a problem.
Made changes to curve undo stuff to restore last selected point on undo/redo.
Added new theme color for curve last selected point.
- multires cache files and image .tex cache support in dependency list
- Compare md5 of files before using a local copy (not one transfered by netrender). Could be changed to a simpler CRC if speed is an issue. The goal is not to have a strong crypto signature but just to detect outdated local files.
- Reduce slave timeout to 5 minutes (down from 30). Slaves should report at most every 30s, there's no reason for a value to be that high.
- Reorder the presentation tables on the main web page (job list is more important)
- Collapse dependency list by default on job page (only show main file and headers for other files, point cache and fluid cache)
- Slave option (default: True) to also output render log to the console (as well as the usual copy to the master)
* Client connection is made from panel poll functions even if
netrender is disabled
* Network render slave should print when it has connected to server,
now it says "node initiation", I initially thought this meant it was
not connected yet.
* Web interface should auto-refresh, I got confused if job and slaves
were actually found or not.
- mathutils.Color.hsv attribute. eg. material.diffuse_color.hsv = 0.2, 0.8, 0.4
- Vector/Euler/Quaternion/Color now only take a single seq arg.
- internal function for parsing arrays. (cleanup messy internal list/vector/tuple/seq parsing)
- didnt update rigify yet.
'Mask layers' should be visible always, they still work to mask out objects on
layers when zmask isn't on (zmask is slightly different.. a bit confusing)
Icon tweaks too
Made the 'Influence' slider work for Spline IK too, and made that setting visible now that it works.
Note that there is still some popping that can occur when going to/from influence = 0.0. I'm not sure exactly what's causing this yet, but hopefully it won't be too noticeable in practice.
Ton's commits missed the RNA changes needed to make this work (i.e. the search field was un-defined). This has now been added, and the search field has the 'search eyeglass' icon to make its purpose clearer.
I've also taken this opportunity to restore the search matching flags (i.e. case sensitivity and complete vs partial matches), making these separate toggle options instead. The old searching operator stuff can probably be removed now?
after Make Single User
Was an error in UI display of node materials/texture lists, combined with a
very weird node setup.
I will be a very happy person the day we finally get rid of the terribly
confusing materials-inside-materials behaviour.
Made texture/texture slot context a bit less flaky when dealing with active material and
texture nodes inside a node material in the node editor. Now if the active material has
nodes enabled, and there are no active material/texture nodes inside it, nothing will be
shown in the texture properties (similar to 2.49).
that going for the full hotkey translation is actually counter
productive. Now using a more conservative keymap by Michael W that
focuses on general navigation, selection and other details
* 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)
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.
This adds a new presets menu in the splash screen and the Input section of
User Preferences to choose a preset interaction style, consisting of key configurations
and also other user preferences such as select mouse button, view rotation style, etc.
Currently, just 'Blender' and 'Maya' presets are included, hopefully we can have more
presets contributed (and maintained!) by the community.
It's best to keep these presets minimal to avoid too many key conflicts. In the Maya one
I changed the view manipulation key/mouse combos and also the transform
manipulator keys, not much more than that.
To save an interaction preset, open the user preferences Input section, and press the
[ + ] button next to the presets menu. It will save out a .py file containing any edited key
maps and navigation preferences to the presets/interaction folder in your scripts folder.
---
Part of this commit changes the way that key maps are exported/displayed in
preferences - now partial key configs are allowed. Previously it would export/import the
entire key configuration, regardless of whether individual key maps were edited or not
(which would make them more susceptible to conflicts in unexpected areas).
(note, in blender terminology, a key map is a category of key items, such as
'Object Mode' or 'View 2d'.)
Now, the export and the UI display work in a similar way to how key maps are
processed internally - Locally edited key maps (after pressing the 'Edit' button) are
processed first, falling back to other key maps in the current key config, and then falling
back to the default key config. So it's possible for a key config to only include a few
key maps, and the rest just gets pulled from the default key config. The preferences
UI display works like this too behind the scenes in deciding what to show users,
however using it is just like it was before, the complexity is hidden.
* Increasing subframe count increases stability for SPH fluid and Newtonian particles
* Also small tweaks into physics ui panel to better fit new subframes value
* This commit also fixes the moving fluid emitter problem as described by Raul in the mailinglist
the patch exposes a rna property to get the active edit mode face. This is a hack.
However it's a small patch (a.k.a. easy to revert later if needed).
The official plan is to wait for BMesh before tackling it properly. Nevertheless TexFace panel is really important for BGE.
Missing: operators to copy the current parameters to other selected faces.
* note: what I changed from the original patch is the UI script. The pool wasn't defined and it was using tabs.
Made custom proxy files a lot more sensible to select
(upgraded to filepath get/setters)
Changed semantics, since custom files don't make much
sense without custom directories...
Proxy render size settings is now back. (Maybe still in need of some sensible
icons, though...)
Also: waveform color seperation works in N-keys dialog again.
- added new mathutils.Color() type, use with rna so we can do for eg:
material.diffuse_color.r = 1.0
# also has hsv access
material.diffuse_color.s = 0.6
- made Mathutils and Geometry module names lowercase.