Page 1 of 1

bf-blender / linux (2005/03/18)

Posted: Sat Mar 19, 2005 12:50 am
by gabio
Hi all, new build because I was so excited to see something new. No time for more, gonna do the others later. Now you can see widget in there. for some of you this may be good and maybe not... dunno. The new addition about axe selecting with the little gray line is nice. make sure to test everything out, give it a good try.
OpenEXR has been removed for the moment. Need more work to be commited back in.
Also take note the planar constraint is now enabled by shift now instead of alt.

For more info on new tranform: ... efactoring
Done with Gcc, glibc 2.3.5 and scons!
relevant feature:
-new python stuff.
-bugfixes (2324, 2320)
-divers work on transform, basically get back old feature to work again.
-Made framework for 3d Transform Manipulators (widgets).
**Implemented now: Translation Widget

added getDupliVerts and setDupliVerts methods

Bug fix as reported by Fish-Face/Chris Le Sueur on IRC

After deleting an object, the call free_and_unlink_base() takes care of
NULLifying object pointers. But, with exception of constraints. Silly!!!

So, in the end of a function additionally the test_scene_constraints()
has to be called to prevent crashes. This was missing in join_mesh and

doc about set/getDupliVerts method

NumInput is now applied correctly to constraints and prints correctly in the header.

What that means is that you can grab/resize an object, press Xkey, type 2 (to resize/move by 2 on the x axis) and then press Ykey and the numeric value will be applied to the transformation on the Y axis.

Fixed a small glitch where constraint center wasn't readjusted for edit mode when using MMB (graphical bug only).

Local axis with multiple objects wasn't working for Scaling.

Also, splitted of Translation's applying loop (for eventually macro interface).

Made warp use TransData members instead of G.obedit. Made it work with PET and Objects at the same time.

A little editing on the doc for the newest member of our Bpy module familily: Text3d.


Camera grab from camera mode works, but not the middlemouse-toggle, that
has to become a new "Dolly" constraint coded by Martin P! :)

Fixed edit mode armature bug reported by Gabio (transdata conversion wasn't setting data center correctly).

Brought back Shrink/Fatten. Changed the behavior a bit, move the cursor to the right to move toward the normal, to the left to move backward. Please comment.
Only works with meshes, defaults to resize otherwise.

New AFFECTALL flag for numinput
When that flag is set, numbers typed when the cursor is on the first position will affect all positions who do not currently have something typed for them.

Enabled Skey, 2, Enter to quickly double the size of something.

All modesty asside, it's coded rather smartly so it shows the cursor in every position that it will affect and lets you tab in undefined position to type in values there.

Thanks to Samadam for reminding me that the old code permitted that.

Transform: brought back axis constraint default after extruding. When
choosing 'individual faces' it uses the ShrinkFatten option.

Note for Martin: center of axis is still wrong, but you know!
Note for non-testers: unfortunately axis constrainting for old
transform now doesn't work anymore. New code is much nicer, I dont restore

This commit reverses the OpenEXR specific stuff in the OpenEXR commit I
did last friday. A patch will be available in the patches tracker
that will have the current stuff there until everything is working.


Bugfix #2324

Somehow, not proven how, edges can be selected in a mesh, and not faces or
vertices. When entering editmode these selection flags are checked too.

Matrix multiplcations for Multiple Object local constraints for Resize was done backward. Didn't show in my test case because they were too crude. Fixed now. (in essence, resize with multiple selected objects and local constraint was not good)

Bug fix #2320

Silly 2.36 bug! In FaceSelect mode, other solid objects didn't show. Bad!

Additional; when using Halo material, and setting 'X Alpha', and disabling
Halo option, the 'Only Shadow' option turned on... uses same bit...
No time for real fix here, so for now the bit is always cleared after
disabling Halo.

Optimising transformations in PET mode.

Sorting elements in TransData array according to their distance. That means we can always stop loops when it finds the first element that doesn't apply. That makes PET factor calculation and actual transformations faster since it stops at the first element outside of the area.

The Sorting algo is a no swap version of quicksort using the start of each subset as the pivot (random would be better and easy to implement. Need 3 additional lines of code really).

Fixed constraint center calculation. Much smarter to do it when calculating transformation center...

Fixed Extrude constraint. Needed to premul the normal by the object's matrix to but it in global space.

Also, moved the Locking Axis modifier (for constraints) from Alt to Shift. Alt was conflicting with middle mouse button emulation (reported in the test builds forum).

Tilt Transformation.

Trying a little something with the MMB behavior.

Constraint selection is now based on mouse motion (instead of pointer position).

What that means is that if you simply click MMB, it works exactly like it did with old transform (in 90% of the case, the last 10% is when MMB click was unpredictable in old transform because of extreme viewport orientation)

Also, since this means you don't really have a referential on which to base yourself, it draws a dashed line representing the mouse motion, starting at the center of the axis lines.

Please test and discuss, if this is better than before or not.

Ack, typo in previous commit, bugfix for confusing edge selection. Passed
a face pointer to edge function... tsk tsk!

Needed to normalise the axis orientation matrix.
This fixed the scaling bug intrr and LetterRip reported.

fixed example of use the GetScreenInfo

So! Finally a show-off of the *power* of Martin P's work! :)

- Made framework for 3d Transform Manipulators (widgets)
- The Manipulators act like '2d buttons', by default with LeftMouse and with
- Implemented now: Translation Widget, which allows:
- four hotspots for axis grab or view-aligned grab
- center defined by 'around' setting
- SHIFT+LMB gives planar constraint on other 2 axes
- works in Object mode and Edit mode (not posemode yet)

Enable it with (temporal) icon in 3D header. All other 'normal' transforms
then keeps working btw.

On the todo for this widget:
- choice for Global, Local or Normal orientation

The way the widgets are going to work is in review still. Commit is also for
Matt for his proposal/paper on topic.
Some notes regarding this project;

- no life updates (on mouse over) like 3DS, I think that's neurotic
- on click, dominant axis changes to theme defined "Transform" color, other axes disappear, like maya
- manipulater size is fixed preset, independent zoom.
- manipulator follows selection, and is located based on 'around' mode


- in maya, when you select 2 or more objects, the manipulator draws on the 'active' object, also interesting
- what to do with G,R,S hotkeys? It could switch the manipulator "mode"...
- header button/menu for manipulator mode?
a new build is available

Posted: Sat Mar 19, 2005 10:01 am
by OTO
Thank you for the build

I've started to play with ( 10 mn)
The new transform is nice and the widgets work very well and useful
But they're ugly! It's the first time I've the feeling that there's something
"wrong" in the Blender UI :)

Posted: Sat Mar 19, 2005 7:49 pm
by OTO
Hi again

1006 views and 28 posts for the windows version
55 views and 1 ininteressant post ( mine) for the Linux version

Oh well, what a long way yet for Linux

Posted: Sat Mar 19, 2005 8:43 pm
by johannes
You are not alone! I am also a Linux user ;-) . I believe most linux users compile from cvs themselve.

Posted: Sat Mar 19, 2005 9:33 pm
by gabio
Funny i though about the same this morning.
But we aren't alone!
Anyway when i'm lazy enough I start Blender-windows build in cedega now.

Posted: Tue Mar 22, 2005 6:58 pm
by Napoleon
Thanks Gabio for your builds. A question though, why does your linux builds most times lag behind the windows ones? Is windows your prefered platform or something?

I for one don't know how to build from cvs so i always rely on your builds to see whats new.


Posted: Wed Mar 23, 2005 2:45 am
by gabio
Napoleon wrote:Thanks Gabio for your builds. A question though, why does your linux builds most times lag behind the windows ones? Is windows your prefered platform or something?

I for one don't know how to build from cvs so i always rely on your builds to see whats new.

It's because I only have time to do it at night after job. So i start by doing a cvs update in windows, then build while i'm here. then I'm too bored to reboot in linux and go to sleep, thinking of doing it tomorrow. Sorry guys i'm just out of time, i used to build 4 releases straigt, gonna have more time in may.