The font vectordata is scaled on load, so the character size will fit between the default (1.0) linedist.
Warning: this might change the font size in older blend files. (read: breaks backward compatibility)
yet (R.vn and R.vlr no longer exist, and were needed to get the image mapped
right). Works esp. well with Subsurfs. Sensitive to vertex normal issues
in Simple and Mesh modes.
-Also porting Simple Subdivide. Subdivides mesh at rendertime w/o changing
shape, for smooth displace and Radiosity.
-Removed an unused var from KnifeSubdivide.
----------------------------
Another (major) armature speed up for bones with many constraints.
When tranform()-ing, figure out which bones need to be recalculated
beforehand and only update those bones.
---------------------------
"Delay Deform" option for armatures.
The button is under the X-ray bones button in the edit buttons.
With this armature option selected, manipulations in pose mode
will only deform children after the transformation is finished.
While hardly an optimal solution to the slow armature crisis, this
gives about 4 times speed up on some meshes (ah well, at least lets
me isolate armature vs. displist slowdowns while profiling).
was too small to display the number in it (amount of vertices). Also the
range can be too large to make the slider display useful info.
direct reason: mesh with 1 vertex made the slider draw corrupt.
these buttons should be available outside editmode as well.
- fix: changed order of tools in f9 mesh a bit... it was totally random
- fix: fileselect draw error; text sometimes draws over outer border
cvs: ----------------------------------------------------------------------
- "Crop and Anim" panel had wrong name... now "Anim and Movie"
- this panel didnt draw buttons always, should be for 'anim option' (which
is different from 'movie' option!
- added call to re-align the panels each time a new screen is set (also
after file read) to make sure new panels (or with new name) are properly
initialized
- fixed drawing error in nurbs buttons
ENORMOUS job Matt has done with the menus! :)
- followed as much as possible order and options in pulldowns, but since
toolbox has more categories, it is split up sometimes.
- did some minor changes in pulldowns to make it more consistant
- not yet: armature & text options...
- not yet: toolbox in other window types
(warning; shift+a now is new... eek!)
Armature, Camera, Lattice
- this enables browsing data again. All in F9 menu (editing)
- fixed 'home' in buttonswindow, mixed up 1 and 0 again! :)
(it scaled in the wrong direction...)
- errors in names/hotkeys pulldowns fixed
- full window option in pulldown win caused ortho on/off event
- weight paint now shows vertex color Panel in editbuttons
- adding armature while vpaint mode, didnt end vpaint mode
- cleaned up some buttons design
- leftmouse press-hold for toolbox also moved 3d cursor
correctly for deciding whether its pressed or not
- added 'add new' buttons to material & texture menus
is done by std_lib buttons in headerbuttons.c, now only for this.
doing it for ipowindow, sound, etc. has some weird consequences, save
that for later
- verified usage of 'setting2' color for databuttons only
- subsurd level '0' is possible again.
however; it was changed to '1' because convert-to-mesh crashes. the
subsurf code doesnt give a result when level is '0', causing the convert
routines to either crash, or deliver empty mesh...
I added a warning in the convert routine now, and dont do anything then.
- changed all glFlush() in glFinish() in editobject.c, which seems to be
the right magical call to show frontbuffer drawing.
BTW: text colors don't work everywhere yet... but this state should
be save to store themes in your .B.blend (CTRL+X)
and some fixes:
- leftmouse click now works in NLA and Action window to select a
strip in the left part
- faceselect+vpaint mode didnt show both panels
can be found under the 'SubSurf' button.
Optimal drawing only shows the subdivided original edges. Quite nice!
And; it's a load faster!
- to evaluate: do we want this in editmode too?
- changed the BIF_DrawString() function. it used to work different for
AA fonts as for default fonts. Now it's identical. Setting color for fonts
can just be done with OpenGL, for both font types.
Removed: BIF_DrawStringRGB()
- added theme color options for Buttons
- recoded DefButton, so it automatically chooses the right color.
- had to remove a 1000 uiBlockSetCol() calls for that reason...
- uiBlockSetCol() still works, to override automatic color
- removed entirely the silly old color system (BIFColorID). All color
calls can now be done with a BIF_ThemeColor() call, including fonts and
buttons and opengl stuff
- all buttons in button header have headercolor by default
- recoded drawing icons, it was a really bad & old loop doing manually
colorshading and blending... which was per pixel a load of code!
Now it uses a single OpenGL call to blend or colorize. Quite faster!
- (as test, for review) icons don't colorize anymore with button color,
but have a different alpha to blend in (when not active)
- recoded the entire interface_draw.c file...:
- drawing buttons is separated in three parts:
1. main drawing function for text and icons
2. free definable callback for button itself
3. free definable callback for slider
- removed a load of redundant code for this!
- coded a minimal theme, and adjusted Matt's buttons to match new
callback system
- adding new drawing themes is piece of cake now
- for coders, default 'themes' to be aware of:
UI_EMBOSS : the themable drawing style
UI_EMBOSSP: the pulldown menu system (apart from color not themable)
UI_EMBOSSN: draw nothing, only text and/or icon
UI_EMBOSSM: minimal theme, still in use for Logic and Constraintsa
this can be set with uiBlockSetEmboss(block) or in the uiNewBlock() call.
TODO: make UI API call for button alignment
(plus removed another series of warnings from code...)
Plus: fixed bug in Matts commit: he used a 'short' button for an 'int'
User Info:
Pressing UKey in mesh edit mode now undoes only last step. Undo can save
upto 64 steps of undo info. This is configurable under User Prefs->
Edit Methods. The default is 32. High numbers of undo steps use a
lot of memory, since each step stores a copy of the mesh.
Shift-U redoes the last undone step (Undoes the undo.)
Alt-U brings up a menu of possible steps that can be undone. Selecting
an item on the list undoes that item plus all items before it on the list.
The top selection "Undo All" is identical to the old Ukey. It undoes
all editing since entering Editmode, even if all regular undo steps are
used up.
Undo info is only saved for one object at a time. You can leave and re-
enter editmode for the same object, and all undo steps for that object are
preserved. Undo info for an object is lost once a different object is
edited.
Coder Info:
In order for undo to work, a checkpoint save has to be made. This is
done with a call to undo_push_mesh("name of step"). This should be done
after the last quick abort for a function (typ. the
"if (G.obedit==0) return;", or similar). the undo_push_mesh() does alter some
flags, so don't try to be too tricky and call undo_push_mesh() too late.
The step name is what shows up in the undo_menu. The name "U" is reserved.
include only (use BIF_interface.h instead)
- split up interface.c in two files: NEW: interface_panel.c
- removed the temporal text files
WARN: FIX AUTOMAKE AND MSVC!
- converted sound buttons, part of Scene
- special request Matt: headers of windows 2 pixels higher! (test)
- special request Stefano: icons instead of menu for buttons-header
- 'data browse' buttons now almost all in buttonswindow.
- almost all buttons have been panelized now.
next stage: cleaning up usage of color in Blender, to allow presests!
- cutoff of text in menus and buttons now even better!
- size of pull-up menu buttons is corrected
- pressing at 'menu button' had a delay, fixed
General: the 'outo open' wont become default, it will be removed or
become a user option. I am experimenting with it to get it all OK.
The 'auto open' for secondary levels in pulldowns will remain there
Check the latest state of pull-up menu buttons. for example the mode
selector: you can use such buttons in three ways,
- click on it, it opens and you can select
- click-and-hold-mouse, move, release at item you want to select
- move mouse over button, wait, it opens
The 'auto open' and its time threshold both can be user settings.
First, check on the new files, which are listed below.
The new butspace.h is a local include, only to be used for the buttons
drawn in the buttonswindow.
- editbuts, animbuts, gamebuts, displaybuts, paintbuts, work now
- i quite completely reorganized it, it's now nicely telling you what
context it is in
- sorting error in panel align fixed (tabs were flipping)
- align works correctly automatic when you click around in Blender
- editsca.c renamed to buttons_logic.h
- button names are truncated from the right for allmost all buttons
(except text buttons and number buttons)
- while dragging panels, you cannot move them outside window anymore
And of course fixed loads of little bugs I encountered while testing
it all. This is a version I really need good test & feedback for.
Next step: restoring material/lamp/texture/world