bf-blender / Windows (2005/03/28)

User-contributed CVS development builds. Please test and give feedback!

Moderators: jesterKing, stiv

gabio
Posts: 0
Joined: Thu Jan 15, 2004 6:41 am
Location: Canada - Québec - Sherbrooke
Contact:

bf-blender / Windows (2005/03/28)

Post by gabio » Mon Mar 28, 2005 11:47 pm

HUGE addition, look like the long weekend was usefull. I couldn't be there always as i had to go see familly, and it is my birth day today so we did some party each day of this long weekend ;) . Anyway happy easter all!

Note:
-Zuster is doing a lot of cleanup, but most of this isn't apparent to the user. It's more a question of speed, So please test everything around mesh, surbsurf, creasing etc... and the entire transform system everywhere. Ho
and the widget....
-Made with MSVC 7 and scons
----------------------------------
Relevant feature:
-Bug fixes.
-Restored old convention that made using SHIFT+CTRL while using button- sliders go with 0.1 stepsize of CTRL.
-Camera translate and rotate in camera view, with MMB, works again.
-Game engine!:
--Erwin Coumans: Abstract the physics engine
--Charlie C: Joystick fixes
--Me: Moved the ray cast (shadows, mouse sensor & ray sensor)
--Reenable ODE in the physics engine buttons.
-Added Manipulator Combo mode, activated as 4th CTRL hotkey cycle.
-New insertIpoKey() methods for Lamp and World types. (bpython)
-New Bpy method: Camera.insertIpoKey()
-Added in header - if widget in use - three buttons to choose widget type (hold shift for combo widgets)
-Hotkey CTRL+space now switches widgets on/off
-Switch to using DerivedMesh interface for draw_mesh_object.(API work)
-


Commit:
-ton
Log:
Bug fix #2311

File name (40) and dirname (80) were too short in sequence data. Made it
compliant using defines FILE_MAXFILE and FILE_MAXDIR.
Also replaced all strcpy() and strcat() with strncpy/strncat, with the
defines in it.
Oh, also fixed plugin path length for sequence, was just 80!

Bug fix #2366

Restored old convention that made using SHIFT+CTRL while using button-
sliders go with 0.1 stepsize of CTRL.
(noticed too late that Chris Burt assigned to self... sorry!)

Log:
Function std_rmouse_transform() works with function pointer to denote
what todo. With the new Transform(), using different args, it's not
easy to do it with single function pointer.

For the time being, the function pointer isn't used for the 3d window.

Log:
Transform fixes;

- Camera translate in camera view, with MMB, works again. Code needs
verification by Martin... it does it different now too.
- Camera rotate in camera view works again. MMB switches to 'trackball',
as formerly. Isn't consistant with other rotate+MMB though...
- rotate camera in cameraview around cursor doesn't 'feedack' anymore

Martin; I only use the TransInfo->persinv[4][4] now, but I think it's
safe to use viewmat and viewinv too?

Log:
Bug fix 2303

The gamma functions in gammaCorrectionTables.c cannot be used to correct
and correct back with identical results... causing banding in rendering
pictures with halos.

-theeth
Log:
Reworked the camera dolly/parallel axis constraint code a bit. Works pretty much like the Shrink/Fatten code, meaning pull the mouse toward you pulls the camera, push pushes it away.

Also added a T_CAMERA flag for camera grab, which gets set on TransData conversion.

Log:
axisProjection can take care of zero-length vector so we don't need to check anymore. Was giving some problems with cameras looking perfectly down.

Also removed all NEWTRANSFORM defines, using the new code all the time now.

-kester
Log:
Big patches:
Erwin Coumans: Abstract the physics engine
Charlie C: Joystick fixes
Me: Moved the ray cast (shadows, mouse sensor & ray sensor)

Log:
Patch from Erwin Coumans: Abstract the physics engine.

Reenable ODE in the physics engine buttons.

-ton
Log:
A couple of wee transform featurettes;

- center of rotation for camera in cameraview rotate has to remain the
camera center itself, drawing the dashed helpline then doesn't work,
since it's behind the camera clipplane. Just disabled that line.

- made MMB switch for cameraview grab to become quadratic, for a dolly
this feels OK, and makes it possible to move in small and large scenes.

- restored SHIFT modifier for translation and scaling. This based on old
convention that allowed precision editing on top of the transform you
already applied before pressing SHIFT.
Solved it with a new flag (T_SHIFT_MOD), since the G.qual cannot be
used. Transform() innerloop has to detect the SHIFT event itself.
Also coded it with storing the mouseposition while SHIFT event happened.
Hope Martin can approve! :)

- Martin's last commit made Manipulator Translate not work, it passed on
a zero translation to the constrainter, causing NaN's. Nicely catched the
exception.

- Fixed 'Trackball' to accept number input too

-sirdude
Log:
added an #include <stdlib.h> to fix this:
KX_RayCast.h:92: error: `NULL' was not declared in this scope

Kent

-ton
Log:
Transform fix; in PoseMode you now can do multiple chains again.

-zuster
Log:
- removed unused variable

-sirdude
Log:
Small fix for the following warning:
../include/MT_Quaternion.h:62: warning: declaration of 'angle' shadows a member
of 'this'

Kent

-desoto
Log:
Quickly hacked together a fix for game engine compiling. There were two
missing files in Kester's new commits. This commit adds these two files so
that compiling can continue as it is intended to. Emilie M. found a
home for the files rather quickly, Ton recieived the files from Erwin via
email, and we all tested. Works great! Thanks to everyone that helped!

-desoto
Log:
Adjusted tooltips for RGB and Grad buttons on particle settings panel. User
pointed out in bug tracker that these weren't entirely accurate.

-sirdude
Log:
I'll break this commit into two sections in the moto files
I got rid of a few warnings about blah shadows a previous declaration.

In the gameengine files I fix the following:
removed some unused vars
removed dos style line breaks
added newlines to last line in a couple of files to remove warnings.

Kent

-ton
Log:
Added Manipulator Combo mode, with translate/rotate/scale combined. Center
remains translate though. Can be activitated as 4th CTRL hotkey cycle.

Log:
Previous commit error; drawing flags mixup caused centers of scale and
rotate widgets not to draw. :)

-zuster
Log:
- made give_mesh_mvert static

-stiv
Log:
add new file SumoPHYCallbackBridge.cpp to SConscript for SCons build.

-zuster
Log:
- integrated get_mvert_weight and color_temperature
into drawobject.c (just used for calculating weight
map)
- removed two_sided (replace with glLightModeli calls)
- huge rewrite of drawobject.c for meshes, extracting simple
drawing functions and then reworking to bring some order
and clarity back to the code.

A lot was changed here so it is likely I missed a few
things in testing although I tried to be very careful.
Please let me know if you find any changes in drawing.

-stiv
Log:
More Bpy goodness!
New insertIpoKey() methods for Lamp and World types.
Contributed by Johnny Matthews (guitarGeek)

-guitargeek
Log:
Adding some docs for world and lamp insertIpoKey additions

-stiv
Log:
Updated Bpy method Object.getData() now supports new Text3d type.
Contributed by Johnny Matthews.

-zuster
Log:
- remove some unused variables from cleanup
- fix for when mesh has no medge (would draw as points always)

Log:
- shademodel wasn't being set correctly for normal mesh face draw

Log:
- lamp line was drawing in wrong location

-stiv
Log:
New Bpy method: Camera.insertIpoKey()
Contributed by Johnny Matthews (guitarGeek)

-guitargeek
Log:
Adding some docs for camera insertIpoKey additions

-ton
Log:
Transform goodies;

- Added icons for the Widgets to blenderbuttons pic
- Added in header - if widget in use - three buttons to choose widget type
(hold shift for combo widgets)
- Hotkey CTRL+space now switches widgets on/off

I also noticed negative scaling doesn't work satisfying yet;
- for scale widget, using center didn't work correct anymore (fixed)
- negative scaling didn't even get applied! (fixed)
- but; scaling somethig negative now flips back to positive... ????

Last one i need Martin P for! Note that I had to change Mat3ToSize....

-ton
Log:
Two small fixes in transform, committed so Martin can work...

- scale negative draws widget OK (scale widget only now)
- scale negative threshold (for flip) was on vertical Y, now is perpen-
dicular to center of axis.

-zuster
Log:
NOTE: New file to be added to project files

- add new DerivedMesh type, currently just encapsulates drawing

Log:
Scary commit!

- Switch to using DerivedMesh interface for draw_mesh_object.
- Code builds a "fake" DerivedMesh for Mesh/EditMesh which ends
up making code a lot clearer.

Plenty of work to be done - the DerivedMesh is still very specialized
to how the code draws which means it is not a very general interface
and is a little messy. Should work though I hope.

-theeth
Log:
Context parameter for Transform.

For tex space edit, crease (soon) and future use.

Manipulator assumes no context.

-zuster
Log:
- added getNum{Verts,Faces} accessors to DerivedMesh with implementations
- updated edit.c to use DerivedMesh interface

Log:
- added drawMappedEdgeEM function to DerivedMesh with implementations
(draws single mapped edge)
- updated editmesh code to use new interface (-2 DLM uses)

Log:
- added DerivedMesh convertToDispListMesh function with implementations,
this is to ease migration.
- updated particles and STL converter to use DerivedMesh interface. This
is a bit wasteful at the moment, but these are not key performance areas.
Can update once DerivedMesh has accessors for faces and face data.

Log:
- update NMesh.c to use DerivedMesh API

-theeth
Log:
Transform was still prototyped as having only one parameter in transform.h. Caused some warnings and possibly errors since some calls were missing the context.

The rest is proof of concept goody for a CONNECTED limiter for PET.
That is, PET affecting only elements which are connected together.

Only affects Curves right now since that was easier to test connectivity with. Still some polishing to do (falloff is based on distance of effect, not real distance), but it's a proof of concept, so...

Log:
Alright, this hopefully fixes some problems with the last transform commit.

Replaced old transform call when extruding and duplicating. Added a CTX_NOPET context flag for extrude. This is done rather a bit hackishly in Transform right now, better to do it with a on/off pet flag in TransInfo and check that everywhere instead.

Made sure transinfo Ext was initialised at NULL (I'm pretty sure it was in another spot, but LetterRip reported some crash leading me to believe that it might not be all the time. Better be safe than sorry).

Connected PET for curves uses the real distance for the fall off calculations now.

-zuster
Log:
- non-optimal subsurf was drawing regular mesh faces

Log:
- added drawMapped{Verts,Edges,Faces}EMSelect calls to DerivedMesh with
implementations
- updated drawobject selection code to use DerivedMesh (last DispListMesh
usage in drawobject.c that needs to be replaced! Woot!)
- interface could still be a lot cleaner, mostly calculating indices for
the various things to pass to selection color routine is hacky.

Log:
- added getMappedVertCoEM and drawMappedVertEM to DerivedMesh with
implementations (slightly redundant, could implement draw in terms
of first... can be cleaned later)
- switch to use of new APIs... all uses of EditVert->ssco are now
clean (read: ready to die as soon as a proper DerivedMesh implementation
is swapped in with ccgsubsurf)

Log:
- added nors to DispListMesh (for face normals)... this is just to
avoid throwing them on later with addnormalsdisplist which is just
silly and burdensome.
- renamed displist_calc_vert_normals to displist_calc_normals

-ton
Log:
Cleanup of widget code;

- made more general calls with args for drawing types
- made it accept transparency for all modes (used while transform now)
- added argument to detect 'combo' mode, gave offsets to translate/scale
handles in combos.
- added 'pie chart' on view-aligned rotate for widget
- made trackball for rotate widget rt==4 behave compatible
- removed redundant code for 'ghosting'

-aphex
Log:
bug fix for #2096:
- switched strcpy calls to strncpy using FILE_MAXDIR & FILE_MAXFILE to prevent buffer overruns. Non-windows code left untouched. :)

-theeth
Log:
Fix stupid error in connected code.

No more crashes, wheee!

-ton
Log:
Shameless intrusive commit in Daniels beloved project! :)

The dl->mesh pointer was used without checking dl... dunno what this call
exactly does, but it causes crashes here. Fixed with a if(NULL) check.

-zuster
Log:
- switch some code to using BLI_strncpy (with right string lengths!)

Log:
- Bug fix, accidentally broke deform for non subsurfs.

Log:
- renderer currently uses links into tface structures that actually
are owned by mesh (or displistmesh)... this causes problems for
adapting to systems that build tfaces on the fly. Added RE_findTFace
function to allow allocating tfaces inside renderer itself.

Log:
- Funny joke! Blender gave "Can't apply deform to shared mesh" error
and then went ahead and did it anyway. Someone is lying!

Log:
- added mesh_get_derived_render
- cancelled previous commit to add RE_findTFAce, instead just added
a MemArena to render struct... free'd at end of render, can be used
to store other data as well
- switch rendering to using DerivedMesh API... this is slightly more
inefficient now because it is doing some unnecessary copying. Can
be fixed by defining a DerivedMesh function to convert the object
into a render object (on todo list)

Log:
- zero DispListMesh.{editedge,editface} on copy
- calc normals for mesh displistmesh's
--------------------------
A new build is available
Last edited by gabio on Sat Apr 02, 2005 9:03 pm, edited 2 times in total.

Bellorum
Posts: 0
Joined: Wed Jan 21, 2004 3:27 pm

Post by Bellorum » Tue Mar 29, 2005 12:42 am

Thanks, gabio:) No tuhopuu? :wink: Combo widget much better, with separated handles. Still weird drawing error where handles are sometimes drawn in wrong order when overlapping.
There's no such thing as democracy. There's only the tyranny of one, and the tyranny of many.

Pierre-Luc_Auclair
Posts: 0
Joined: Tue Nov 23, 2004 1:57 am
Location: Quebec City, Canada
Contact:

Post by Pierre-Luc_Auclair » Tue Mar 29, 2005 12:59 am

No new view rotation mode ? I've been thinking about this all week. :(

Everything seems rock solid here. I still don't like the widgets implementation but I don't really care since I don't use it.. Visual highlight feedback would be a nice addition.

gabio
Posts: 0
Joined: Thu Jan 15, 2004 6:41 am
Location: Canada - Québec - Sherbrooke
Contact:

Post by gabio » Tue Mar 29, 2005 1:06 am

Bellorum wrote:Thanks, gabio:) No tuhopuu? :wink: Combo widget much better, with separated handles. Still weird drawing error where handles are sometimes drawn in wrong order when overlapping.
Working on it. the hemesh of joeedh give me some pb though.

Bellorum
Posts: 0
Joined: Wed Jan 21, 2004 3:27 pm

Post by Bellorum » Tue Mar 29, 2005 1:12 am

Working on it. the hemesh of joeedh give me some pb though.
That explains it. Tried to build myself with Cygwin earlier, but got a lot of errors, that I'm too ungeeky to know what to do about :wink:
There's no such thing as democracy. There's only the tyranny of one, and the tyranny of many.

thoro
Posts: 15
Joined: Thu Oct 17, 2002 10:20 am
Location: Berlin, Germany
Contact:

Post by thoro » Tue Mar 29, 2005 2:18 am

Thank you, gabio - and happy birthday!

Hey, icons for the widget modes - cool. These widgets are so useful in Pose Mode!

oyster
Posts: 0
Joined: Sat Mar 29, 2003 4:41 pm
Contact:

Post by oyster » Tue Mar 29, 2005 3:47 am

Happy birthday :)
and thanx for the build

Delta
Posts: 0
Joined: Fri Jan 14, 2005 3:59 am

Post by Delta » Tue Mar 29, 2005 4:32 am

aww.. still the [ctrl] widget cycle?

i much prefer the old g/r/s change...

but, if this [ctrl] cycle is here to stay (please say it isn't...), could the [ctrl]-[tab] selection mode also change to cycle for consistency?

although the widget icons are rather nice.

Regards,
~Delta

p.s.: happy birthday Gabio!

Sutabi
Posts: 53
Joined: Fri Oct 18, 2002 1:35 am
Location: Oceanside, California
Contact:

Post by Sutabi » Tue Mar 29, 2005 6:09 am

is it me or did the lighting function in blender GE stop working

gabio
Posts: 0
Joined: Thu Jan 15, 2004 6:41 am
Location: Canada - Québec - Sherbrooke
Contact:

Post by gabio » Tue Mar 29, 2005 6:40 am

Sutabi wrote:is it me or did the lighting function in blender GE stop working
you'r not the first one to notice. But I really don't know when or why it would had stop.

poutsa
Posts: 0
Joined: Sat Jan 03, 2004 4:49 pm
Location: Munich (Germany)

Post by poutsa » Tue Mar 29, 2005 1:20 pm

Happy birthday Gabio and thanks for the new build

dmao wrote:
The new middle mouse button constraints for rotation are also awful . Completely unintuitive- just try posing an armature with it. Please return it to MMB = Trackball !!!

I agree!


Ciao

Vassilios Boucer

ElBarto
Posts: 0
Joined: Fri Jun 11, 2004 3:24 pm
Location: Berlin
Contact:

Post by ElBarto » Tue Mar 29, 2005 2:34 pm

Happy birthday to you Gabio! Will check out the new built. Thanks!
Karamba!
Bart.

http://www.area42.de/

Blender Feature Proposal:
http://www.neeneenee.de/blender/features/

leander
Posts: 0
Joined: Wed Oct 13, 2004 11:18 am

Post by leander » Tue Mar 29, 2005 2:54 pm

Happy birthday and thanks for the build gabio!

For widgets, what about...

CTRL+left mouse button activates move widgets.
CTRL+midde mouse button for rotations
CTRL+right mouse button for scaling

¿what do you think?

-efbie-
Posts: 0
Joined: Wed Oct 27, 2004 9:47 pm

Post by -efbie- » Tue Mar 29, 2005 3:03 pm

thoses shortcuts are already used to more useful things.

lucky3
Posts: 12
Joined: Thu Oct 17, 2002 6:08 pm

Post by lucky3 » Tue Mar 29, 2005 6:06 pm

thanks gabio, and happy birthday to you!

Post Reply