blender.git
14 years agoRemoval of old transform() <sob> part one.
Ton Roosendaal [Sat, 30 Apr 2005 21:19:19 +0000 (21:19 +0000)]
Removal of old transform() <sob> part one.

- added in new transform the (not so useful but yah) old feature that
  does scrollwheel zoom during transform
- had to change transform call arguments for uv-window/sequence/oops to
  match new transform for mouse callback

TODO (for martin?)

- pulldown menu support to call with local axes compliant as for pressing
  it with hotkey
- mirrormenu() still uses old transform stuff...

14 years agoMoved sinclude for user-def.mk
Chris Want [Sat, 30 Apr 2005 21:06:54 +0000 (21:06 +0000)]
Moved sinclude for user-def.mk

14 years agoError in the clipping plane for drawing rotate-widget.
Ton Roosendaal [Sat, 30 Apr 2005 20:18:46 +0000 (20:18 +0000)]
Error in the clipping plane for drawing rotate-widget.
On zoom out or zoom in, this clipping went more narrow or wider... should
be fixed.

14 years agoNew methods for Image module:
Stephen Swaney [Sat, 30 Apr 2005 19:30:35 +0000 (19:30 +0000)]
New methods for Image module:
.getPixel( x, y ) returns float list of [r, g, b, a] for pixel
.getMaxXY()  returns image size as float list [x, y]

Contributed by Austin Benesh (mchs3d).  Thanks!

also ran code thru indent.

14 years agoAllow make to find user-def.mk even when compiling in subdirectories
Chris Want [Sat, 30 Apr 2005 17:33:20 +0000 (17:33 +0000)]
Allow make to find user-def.mk even when compiling in subdirectories
using the 'mke' trick.

14 years agoWeird, make on OS X needs an 'export' for CPPFLAGS to make value
Chris Want [Sat, 30 Apr 2005 17:28:38 +0000 (17:28 +0000)]
Weird, make on OS X needs an 'export' for CPPFLAGS to make value
persist when building subdirectories. I wonder why other platforms
don't need this?

Fixes the openal unresolved symbol issue with NAN_NO_KETSJI.

14 years agoBug #2497
Ton Roosendaal [Sat, 30 Apr 2005 11:29:05 +0000 (11:29 +0000)]
Bug #2497

The CTRL+LeftMouse Lasso option was accidentally also invoked in Image
Window. Wasn't supposed to work anywhere but in 3d window.

14 years ago- file sizes > 4 GB were not correctly displayed in the file window. It
Ton Roosendaal [Sat, 30 Apr 2005 09:57:35 +0000 (09:57 +0000)]
- file sizes > 4 GB were not correctly displayed in the file window. It
  still was using int for calculus... made it using 64 bits ints.

- The "disk free" indicator in the header didn't work for OSX, due to
  a missing #ifdef __APPLE_

14 years agoManipulator with "normal alignment" now aligns to edges too (if no faces
Ton Roosendaal [Sat, 30 Apr 2005 09:55:37 +0000 (09:55 +0000)]
Manipulator with "normal alignment" now aligns to edges too (if no faces
selected) and to vertex normals. Only issue is that vertexnormals are not
updated on each editing command (it's a bit too much overhead...) so use
a TAB+TAB for now to enforce proper vertexnormals.

14 years agoUncommitted fix in NAN_NO_KETSJI compile, which seems to work only for
Ton Roosendaal [Sat, 30 Apr 2005 09:17:10 +0000 (09:17 +0000)]
Uncommitted fix in NAN_NO_KETSJI compile, which seems to work only for
Makefile usage... the linking error might be makefile related then.

14 years agoMore stats-junk stuff!
Ton Roosendaal [Fri, 29 Apr 2005 18:43:17 +0000 (18:43 +0000)]
More stats-junk stuff!

Added in Nkey panel (transform properties) option to show in editmode
at choice the global or local coordinate values.
Same option works for the "Tech draw" options. :)

14 years agoCompile with NAN_NO_KETSJI kept giving me errors with OpenAL.
Ton Roosendaal [Fri, 29 Apr 2005 17:36:30 +0000 (17:36 +0000)]
Compile with NAN_NO_KETSJI kept giving me errors with OpenAL.

   undefined reference to SND_OpenALDevice::SND_OpenALDevice

I hacked c++ code in the dummy function wich worked! Now test it! :)

14 years agoTwo fixes in one commit.
Ton Roosendaal [Fri, 29 Apr 2005 08:18:41 +0000 (08:18 +0000)]
Two fixes in one commit.

- The ortho render recode had a weak method to calculate the Z value of the
  render coordinate (shi.co[2]). Worked OK for normal render, but not in
  unified, giving big errors in Ortho Unfied render.
  Solved with proper math, using face equation a*x+b*y+c*y=d. Dunno why I
  didn't do it in first place. :)

- Bug fix #2493. Edge render gave much different result for Ortho. This
  was due to overflows in the integer math filtering zbuffer values.
  Cleaned it op properly, preventing any integer overflow now.

14 years agoAdditional fix for malloc/MEM_mallocN issues in files code. Previous patch
Ton Roosendaal [Thu, 28 Apr 2005 19:29:54 +0000 (19:29 +0000)]
Additional fix for malloc/MEM_mallocN issues in files code. Previous patch
left out a couple of strings, causing MEM_freeN() errors.

Patch provided by Anrea Weikert

14 years agoMade "Centre" in mesh editmode listen to the "Around" setting, so it can
Ton Roosendaal [Thu, 28 Apr 2005 18:46:35 +0000 (18:46 +0000)]
Made "Centre" in mesh editmode listen to the "Around" setting, so it can
now use centroid as well (instead of only bounbox-centre)
It doesn't do "cursor" though... it's centering for object center, right?

14 years agoMade circle select listen to the event queue nicely, so it doesn't keep
Ton Roosendaal [Thu, 28 Apr 2005 17:53:14 +0000 (17:53 +0000)]
Made circle select listen to the event queue nicely, so it doesn't keep
selecting after releasing a mouse button.

14 years agoAdded menu in header for orientation of manipulator widgets.
Ton Roosendaal [Thu, 28 Apr 2005 17:04:08 +0000 (17:04 +0000)]
Added menu in header for orientation of manipulator widgets.
Also slightly tweaked threshold for drawing text in menu buttons. The text
was clipped just too quick.

14 years agoTo please the stats-junkies: the "tech stat" drawing now displays all
Ton Roosendaal [Thu, 28 Apr 2005 15:41:09 +0000 (15:41 +0000)]
To please the stats-junkies: the "tech stat" drawing now displays all
values that change during transform().
For the rest drawing sticks to actual selection, making the view quite
less cluttered. Hope this gets approval. :)

14 years agoAdd bracket matching to text editor.
Stephen Swaney [Thu, 28 Apr 2005 15:41:06 +0000 (15:41 +0000)]
Add bracket matching to text editor.
#2437 from the Patch Tracker.
Contributed by Ricki Myers (themyers).  Thanks!

Highlight color is set in UserPref theme colors.

14 years agoAdded idling with BIF_wait_for_statechange() in loop doing 'screen edge'
Ton Roosendaal [Thu, 28 Apr 2005 14:41:43 +0000 (14:41 +0000)]
Added idling with BIF_wait_for_statechange() in loop doing 'screen edge'
moving. Might fix issue reported by Campbell Barton, on low performance.

14 years agoA couple more simple gcc4.X warnings fixed.
Kent Mein [Thu, 28 Apr 2005 14:37:15 +0000 (14:37 +0000)]
A couple more simple gcc4.X warnings fixed.

softbody.c I removed an unused var.
text.c added return values to 2 return statements that didn't have anything.
Makefile added $(FIX_STUBS_WARNINGS) to CFLAGS for the stub.
source/blender/src/editface.c  fixed up int vs unsigned int stuff
source/blender/src/resources.c had two vars declared as unsigned char *
and then inputs to them were cast as char * so updated the casts.

Kent

14 years agoRestored traditional Turntable for view rotation, and without the error
Ton Roosendaal [Thu, 28 Apr 2005 14:09:20 +0000 (14:09 +0000)]
Restored traditional Turntable for view rotation, and without the error
of previous code which slanted after a while.
Patch provided by John Aughey, thanks!

(John will send me the additional diff for a correction when going from
trackball to turntable)

14 years agoima_ibuf_is_nul() now needs a second arg, fixed.
Chris Want [Thu, 28 Apr 2005 13:03:39 +0000 (13:03 +0000)]
ima_ibuf_is_nul() now needs a second arg, fixed.

14 years agoFix for reported (thanks Jens Ole!) error in rendering UV map textures.
Ton Roosendaal [Thu, 28 Apr 2005 09:57:21 +0000 (09:57 +0000)]
Fix for reported (thanks Jens Ole!) error in rendering UV map textures.
Caused by making threadsafe envmap render...

Commit in convertblenderscene.c is just replacing constant with define.

14 years agoBunch of gcc 4.0 warning fixes.
Kent Mein [Wed, 27 Apr 2005 11:52:50 +0000 (11:52 +0000)]
Bunch of gcc 4.0 warning fixes.

source/creator/creator.c
changed ifdef's around fpe_handler to match when its actually used.

intern/SoundSystem/intern/SND_AudioDevice.cpp
Changed: SND_SoundObject* oldobject = oldobject = pIdObject->GetSoundObject();
to: SND_SoundObject* oldobject = pIdObject->GetSoundObject();

intern/SoundSystem/openal/SND_OpenALDevice.cpp
removed unused var.

source/blender/blenkernel/intern/mball.c
initalized a couple of vars that might have been used uninitalized.

The rest were changing types to match, most of them were something like
was short * should have been unsigned short *.

Kent

14 years agoBug fix #2483
Ton Roosendaal [Wed, 27 Apr 2005 10:08:37 +0000 (10:08 +0000)]
Bug fix #2483

Wrong referencing of Materials created when importing DXF caused crashes.
Note for the person who coded it: the use of Blender internals (database)
is quite confusing... most of exotic.c isn't really OK code to reuse
from.

There's also a lot of redundant code there... with many chunks adding
objects or mesh data being copied completely. This can be structured much
better! :)

14 years agoFixed CTRL modifier for rotation widget drawing.
Ton Roosendaal [Wed, 27 Apr 2005 08:52:11 +0000 (08:52 +0000)]
Fixed CTRL modifier for rotation widget drawing.
Also fixes bug #2481

14 years agoFix #2472 for rotate edges. Somewhere along the line edge h flags were being wiped...
Johnny Matthews [Mon, 25 Apr 2005 20:42:50 +0000 (20:42 +0000)]
Fix #2472  for rotate edges. Somewhere along the line edge h flags were being wiped out. This addition now saves those flags and restores them

14 years agoSmall fix for envmap rendering + threads... not sure if it fixes linux and
Ton Roosendaal [Mon, 25 Apr 2005 20:36:17 +0000 (20:36 +0000)]
Small fix for envmap rendering + threads... not sure if it fixes linux and
windows for it... will be tested!

Fix was that the envmap cube side images (6) were stored in tex->ima, which
is shared data by other thread.

14 years agoBuilt in an escape from sbObjectStep() if transform() is used. Has to be
Ton Roosendaal [Mon, 25 Apr 2005 08:30:49 +0000 (08:30 +0000)]
Built in an escape from sbObjectStep() if transform() is used. Has to be
done for lattices... these keep calling this during transform, causing
the lattice itself and its children (if soft) to remain static on same
position.

Real solution has to be 2-fold:
- store deformed lattice points in Lattice, as a "DispList"
- usage of proper depgraph :)

There's also the idea to keep simulating softbody during a transform, to
give feedback on what softbody does... later.

14 years agoBug fix #2469
Ton Roosendaal [Sun, 24 Apr 2005 21:38:19 +0000 (21:38 +0000)]
Bug fix #2469

Apparently DXF allows layers to be read too... this went wrong in 2 ways;

- object->lay was not equal to base->lay
- if DXF has layer info, but not readable, it set object->lay to 1 instead
  of using 'current layer'.

14 years agocleaned up parameter list for SoftBodyDetectCollision(...)
Jens Ole Wund [Sun, 24 Apr 2005 20:51:47 +0000 (20:51 +0000)]
cleaned up parameter list for SoftBodyDetectCollision(...)
SoftBodyDetectCollision() is handeling the case
'user wants to prevent self intersection by declaring SB object a deflection target'
ahh .. yeah .. i can see the bug reports on that
(me shrugs .. never promised that to work)

14 years agoBug #2467
Ton Roosendaal [Sun, 24 Apr 2005 19:50:07 +0000 (19:50 +0000)]
Bug #2467

For non-uniform scaled + rotated objects, the normal aligned Manipulator
got deformed (on multiple selected faces) or pointed wrong. Needed the
famous Transpose of Inverted Matrix trick here.

14 years ago - EXPP_addScriptLink called wrong error function (I bet the compiler
Daniel Dunbar [Sun, 24 Apr 2005 19:32:04 +0000 (19:32 +0000)]
 - EXPP_addScriptLink called wrong error function (I bet the compiler
   warned about this...)

14 years agofix overlooked compiler warning. sheesh.
Stephen Swaney [Sun, 24 Apr 2005 19:27:14 +0000 (19:27 +0000)]
fix overlooked compiler warning.  sheesh.
update contributor names.

14 years agoSigh! Left in debug print... :)
Ton Roosendaal [Sun, 24 Apr 2005 19:08:14 +0000 (19:08 +0000)]
Sigh! Left in debug print... :)

14 years agoNew IPO methods.
Stephen Swaney [Sun, 24 Apr 2005 19:03:39 +0000 (19:03 +0000)]
New IPO methods.
Ipo.delCurve( curve_name ) deletes named curve from IPO.
Ipocurve.delBezier( int ) deletes point at index from Ipocurve.

Contributed by Ken Hughes (khughes).  Thanks!

14 years agoAdapted Nvidia hack for OSX; it checks for the gl string more narrow, to
Ton Roosendaal [Sun, 24 Apr 2005 18:09:54 +0000 (18:09 +0000)]
Adapted Nvidia hack for OSX; it checks for the gl string more narrow, to
also include othe 6800 card types. (reported in tracker)

Still no real clue if this is OK for release... stupid driver bugs!

14 years agoReflecting the discussions on Transform Manipulators...
Ton Roosendaal [Sun, 24 Apr 2005 13:22:24 +0000 (13:22 +0000)]
Reflecting the discussions on Transform Manipulators...

Here you can see the notes and pictures:
http://www.blender3d.org/cms/Manipulator_Widgets.548.0.html

The alternative rotate widgets are still under rt=2 and rt=3.

Still enough work todo here, but hope it's a good step forward!

14 years agoMake view translation and zooming 'smooth' in the uv editor. Power-of-two
Brecht Van Lommel [Sun, 24 Apr 2005 11:57:23 +0000 (11:57 +0000)]
Make view translation and zooming 'smooth' in the uv editor. Power-of-two
zoom levels can be found in the View > View Navigation menu. Also Ctrl+MMB
zooming was added.

Added the E-key, LSCM unwrap popup back again.

14 years agoToying a bit with MMB behavior:
Martin Poirier [Sun, 24 Apr 2005 01:18:13 +0000 (01:18 +0000)]
Toying a bit with MMB behavior:
MMB click with no constraint selects a constraint right away (the axis selector doesn't flash on screen)
MMB click with a constraint removes the constraint
MMB click-drag in both case (with and without a constraint) uses the axis selector.

stopConstraint didn't remove the CON_SELECT flag, so cancelling transform while selecting a constraint and then reentering transform was funny. Fixed

14 years agoMSVC 6.0 Projectfile changes for transform_conversions.c
Martin Poirier [Sat, 23 Apr 2005 22:53:50 +0000 (22:53 +0000)]
MSVC 6.0 Projectfile changes for transform_conversions.c

Didn't get any diff with cvs, had to use an evil switcheroo technique and then it worked.

MSVC 6.0 users should be able to compile out of the box now.

14 years agoReplaced powf to (float)pow in zblur.c. Was giving problems with MSVC (the rest of...
Martin Poirier [Sat, 23 Apr 2005 22:45:34 +0000 (22:45 +0000)]
Replaced powf to (float)pow in zblur.c. Was giving problems with MSVC (the rest of the code base uses pow too).

MSVC 6.0 Projectfile changes for zblur and new files in ketsji.

Also adding BL_src projectfile to the commit, apparently it's not up to date with transform_conversions.c but I have it ok here and don't get any diffs.

14 years agoThe zblur plugin (aka as DoF) integrated in render. Compared to patch
Ton Roosendaal [Sat, 23 Apr 2005 20:49:23 +0000 (20:49 +0000)]
The zblur plugin (aka as DoF) integrated in render. Compared to patch
submitted by Alexander, changes/improvements are:

- Moved to new Panel in Scene buttons "Post Effects". Together with other
  postprocessing options, such as Edge render. It is also not called DoF,
  this because that's a bit pretending too much then. It's a zblur still!
- Made it render Alpha as well
- Made it use and deliver float buffers
- Huge cleanup of zblur.c code, was very messy. It was alling things in render
  code without need even (win matrices, transform faces, etc)
- Fixed errors in using Z values (zbuffer is signed int)
- Removed very weird gamma corrections for front/back half
- Tweaked gaussian table, allow variable 'Sigma' to be set for gauss curve
- Didn't copy 'auto focus' yet. Use of this is very limited, and gives
  false expectations, nor works for rendering anims with deamons well.

Main issue remains: it's not a very advanced feature... I still doubt
very much if this deserves to be released. Spent 2 days on trying to get
the key issues solved, with not much results.

- gauss filter code has weird side effects on large blur size
- having unsharp (blurred) in front also blurs what's around in back.
  only blurred in back with sharp in front works a little bit
- severe aliasing errors... also due the code splitting in 2 halves
- doesnt work with unified yet
- won't work for halos, spot halos or transparant faces

Anyhoo... It was promised to be committed, so now artists can play with it.
Who knows it's useful after all, or some fixes can be implemented. :)

14 years agoAdded the docs & use Python booleans for physics reinstance.
Kester Maddock [Sat, 23 Apr 2005 12:25:21 +0000 (12:25 +0000)]
Added the docs & use Python booleans for physics reinstance.

14 years agoSupport reinstancing the physics mesh from Python.
Kester Maddock [Sat, 23 Apr 2005 12:03:37 +0000 (12:03 +0000)]
Support reinstancing the physics mesh from Python.

14 years agoFix lighting in game engine
Kester Maddock [Sat, 23 Apr 2005 11:54:21 +0000 (11:54 +0000)]
Fix lighting in game engine

14 years agoAdded bone parent relationship.
Kester Maddock [Sat, 23 Apr 2005 11:36:44 +0000 (11:36 +0000)]
Added bone parent relationship.

14 years agoMerging over some uv editor tweaks from tuhopuu:
Brecht Van Lommel [Sat, 23 Apr 2005 01:36:08 +0000 (01:36 +0000)]
Merging over some uv editor tweaks from tuhopuu:

- Moved Weld/Align out of transform code, now it's a menu.
- Removed confirmation popups for LSCM unwrapping in the uv editor, didn't
  make sense anymore now we have undo.
- Extended select linked, to work more like it does in edit mode:
- L: select linked uvs/faces under the mouse
- Shift+L: select/deselect linked uvs/faces under the mouse
(like shift+click for selecting single uvs/faces)
- Ctrl+L: how L worked before
- More accurate uv selection: when selecting one uv from a group of uvs that
  are in the same position, it now selects the uv belonging to the face the
  mouse is over, instead of a random uv.
- 'View Selected' (numpad .-key) for both faceselect mode and the uv editor.

14 years agoCommented out DOF code that did not have a home yet because it broke
Chris Burt [Fri, 22 Apr 2005 21:58:37 +0000 (21:58 +0000)]
Commented out DOF code that did not have a home yet because it broke
compile. Normally it would probably be best just to wait till Ton committed
but its still pretty early and I didn't want people complaining all night.
Hope its no problem!

14 years agoThe do_versions() for new shaders always initialized the values...
Ton Roosendaal [Fri, 22 Apr 2005 21:31:52 +0000 (21:31 +0000)]
The do_versions() for new shaders always initialized the values...

14 years agoAdd "View Selected" (numpad .-key) for faceselect mode and the uv editor.
Brecht Van Lommel [Fri, 22 Apr 2005 20:16:02 +0000 (20:16 +0000)]
Add "View Selected" (numpad .-key) for faceselect mode and the uv editor.
Also includes some 2d vector operations (subtract, dot, normalise).

14 years agoMatched the default value for rkerror limit in bpy
Johnny Matthews [Fri, 22 Apr 2005 18:05:56 +0000 (18:05 +0000)]
Matched the default value for rkerror limit in bpy

14 years agogave softbody runge kutta error limit a nice default value
Jens Ole Wund [Fri, 22 Apr 2005 17:58:39 +0000 (17:58 +0000)]
gave softbody runge kutta error limit a nice default value

14 years agoremoved extra qualifier `SumoPHYCallbackBridge::' that was choking
Stephen Swaney [Fri, 22 Apr 2005 16:17:27 +0000 (16:17 +0000)]
removed extra qualifier `SumoPHYCallbackBridge::' that was choking
gcc in c89 mode.  More potential breakage.

14 years agoFix previous fix by moving some code around to try to please everyone.
Stephen Swaney [Fri, 22 Apr 2005 16:10:46 +0000 (16:10 +0000)]
Fix previous fix by moving some code around to try to please everyone.
or at least their compilers.  let me know what breaks.

14 years agofix compiler error with gcc 4.0. mismatched declarations.
Stephen Swaney [Fri, 22 Apr 2005 02:27:16 +0000 (02:27 +0000)]
fix compiler error with gcc 4.0.  mismatched declarations.

14 years agodoc updates. NMesn.transform( matrix, recalc_normals )
Stephen Swaney [Fri, 22 Apr 2005 02:17:20 +0000 (02:17 +0000)]
doc updates.  NMesn.transform( matrix, recalc_normals )
had description for recalc_normals backward.

14 years agoLocal axis constraints for pose mode. Added
Martin Poirier [Fri, 22 Apr 2005 01:14:15 +0000 (01:14 +0000)]
Local axis constraints for pose mode. Added
Camera rotation fix (was off centered because it used persinv instead of viewinv. Now rotation center is always center screen in camera mode. (Still need to fix the helpline not showing)
Numinput constraint function was no good, didn't check if a constraint was even on... Fixed.
Rotation was missing constraint text in header print. Fixed.

14 years agoBPython:
Willian Padovani Germano [Thu, 21 Apr 2005 19:44:52 +0000 (19:44 +0000)]
BPython:
- based on a request by Campbell (he also provided a patch for scene.Layer) access to layers was improved a little, keeping the old method (ob.Layers is a bitmask) and adding the nicer one (ob.layers is a list of ints).  Done for objects and scenes.  House-cleaning: .Layer was renamed to .Layers (actually just using strncmp instead of strcmp, so both work, same done for Window.ViewLayers).
- finally committing patch by Ken Hughes to let .clearScriptLinks() accept a parameter (list of strings) to clear only specified texts.
- doc updates and fixes (JMS reported a problem in nmesh.transform() example code).

Thanks all who contributed.

14 years agorescaled stregth of wind and forcefield effects by some magnitudes
Jens Ole Wund [Thu, 21 Apr 2005 18:58:15 +0000 (18:58 +0000)]
rescaled stregth of wind and forcefield effects by some magnitudes
wind 250
field 1000
yeah WARNING to all testers:
tighten belts
scale down wind and forcefield settings (IPOs)

14 years agoTesting, 1, 2, 3... (just added enter)
Ton Roosendaal [Thu, 21 Apr 2005 11:24:44 +0000 (11:24 +0000)]
Testing, 1, 2, 3... (just added enter)

14 years agogive some nice defaults for new SB deflectors
Jens Ole Wund [Wed, 20 Apr 2005 19:35:27 +0000 (19:35 +0000)]
give some nice defaults for new SB deflectors

14 years agoSoftbody: added "time" button, to control speed for wriggling. Low values
Ton Roosendaal [Wed, 20 Apr 2005 16:55:04 +0000 (16:55 +0000)]
Softbody: added "time" button, to control speed for wriggling. Low values
make it slower, higher values faster.

Monkey: accidentally got inverted normals for they eye again. :)

14 years ago* Brought over a 'mode' parameter to drawcircball to prevent
Matt Ebb [Wed, 20 Apr 2005 08:26:22 +0000 (08:26 +0000)]
* Brought over a 'mode' parameter to drawcircball to prevent
further loss of Hos' hair during tuhopuu merges.

This doesn't change any user functionality. 'Mode' can be
GL_LINE_LOOP for a circle outline (as it currently is), GL_POLYGON
for a filled circle, or whatever gl mode you like.

14 years agoproviding a minimalistic UI for SB vertex to face collision detection
Jens Ole Wund [Tue, 19 Apr 2005 22:06:12 +0000 (22:06 +0000)]
providing a minimalistic UI for SB vertex to face collision detection
in the particle interaction panel
"D"= "Amount of damping during softbody collision/intrusion"
"I"= "Inner face thickness" good value for unit cube == 0.2
"O"= "Outer face thickness" good value for unit cube == 0.02
still we can easily hide that before releasing

14 years agoremoved my SB hack from particle collision code
Jens Ole Wund [Mon, 18 Apr 2005 21:51:45 +0000 (21:51 +0000)]
removed my SB hack from particle collision code
(which still can't really handle moving targets)
leaving 2 bug fixes
1. multiple objects need a reset on cache variable
2. quads always need to be handled as 2 triangles
(since they don't need to share a plane)

added a collision detecting function in effect.c for SB
( no need to be there, but i did not find a better place )
but should handle 'moving targets' up to 0.2 blender units/frame

well .. important info in this case:
collision
uses 'face normal' to decide if *intrusion* happend
uses 'damping' of collision target to slow down movement
when *intrusion* happend

+some more removing unneeded code in softbody.c

14 years agoFixed several annoyances with halo render + unified render (bug 1989+2382)
Ton Roosendaal [Mon, 18 Apr 2005 19:36:34 +0000 (19:36 +0000)]
Fixed several annoyances with halo render + unified render (bug 1989+2382)

- Maximum faces/halos per pixel was 500, which wasn't correctly applied in
  all cases, causing errors in AA
- Moved maximum up to 1000 now
- made halos become clipped away from filling in buffers when behind a
  solid face. That saves a lot of rendertime!

Unified remains weak with halos...

14 years agoUncommented a line in the FREE_WINDOWS section that appears to control the
Chris Burt [Mon, 18 Apr 2005 19:28:38 +0000 (19:28 +0000)]
Uncommented a line in the FREE_WINDOWS section that appears to control the
detection of changes to dependencies. This should resolve issues with
Cygwin builds using makefiles which have bizarre behavior if 'make clean'
was not used before compile.

14 years agoOn adding monkey primitive, the face centers were not calculated OK.
Ton Roosendaal [Mon, 18 Apr 2005 16:06:37 +0000 (16:06 +0000)]
On adding monkey primitive, the face centers were not calculated OK.

14 years agoBug fix #2458
Ton Roosendaal [Mon, 18 Apr 2005 15:55:52 +0000 (15:55 +0000)]
Bug fix #2458

Without 3d window, using subsurf setting buttons crashed Blender.

14 years agoLittle cleanup of eerie unified code for halos. Still got no clue what
Ton Roosendaal [Mon, 18 Apr 2005 15:30:49 +0000 (15:30 +0000)]
Little cleanup of eerie unified code for halos. Still got no clue what
was original idea of this implementation...
At least it's protected from crashing a bit more.

14 years agoFix crash with Unified Renderer on LMB in renderwindow. Ton needs to
Alexander Ewering [Mon, 18 Apr 2005 15:08:31 +0000 (15:08 +0000)]
Fix crash with Unified Renderer on LMB in renderwindow. Ton needs to
provide Z-Buffer for Unified still :)

14 years agoAdd a "Z:" display when pressing LMB in the renderwindow, which displays
Alexander Ewering [Mon, 18 Apr 2005 13:56:19 +0000 (13:56 +0000)]
Add a "Z:" display when pressing LMB in the renderwindow, which displays
the normalized Z-Buffer value of the corresponding pixel.

Useful for setting ZMin for DOF, see next mail to the list

14 years agoPatch: [ #2439 ] Makes objects react properly to deformations after a mesh replacemen...
Kester Maddock [Mon, 18 Apr 2005 11:44:21 +0000 (11:44 +0000)]
Patch: [ #2439 ] Makes objects react properly to deformations after a mesh replacement call.

from brian hayward (bthayward)

Detailed description:
 Currently, when an armature deformed object's mesh is replaced by the ReplaceMesh actuator, the new mesh fails to deform to the armature's movement.

 My patch fixes this by properly replacing the deform controller along with the mesh (when appropriete).

 For instance, if one had an animated character using any of the standard deformation techniques (armature, ipo, RVK, or AVK), that character's mesh would currently be prevented from changing mid-game. It could be replaced, but the new mesh would lack the controller which tells it how to deform. If one wanted to dynamiclly add a hat on top of the character's head, it would require storing a secondary prebuilt character (mesh, armature, logic, ect...) on another layer FOR EACH HAT the character could possibly wear, then swapping out the whole character when the hat change was desired. So if you had 4 possible hat/character combos, you would have 4 character meshes, 4 armatures, 4 sets of logic, and so on. I find this lack of flexibility to be unresonable.

 With my patch, one could accomplish the same thing mearly by making one version of the character in the main layer, and adding an invisible object atop the character's head (which is parented to the head bone). Then whenever it becomes desirable, one can replace the invisible object's mesh with the desirable hat's mesh, then make it visible. With my patch, the hat object would then continue to deform to the character's head regardless of which hat was currently being worn.

 *note 1*
 for armature/mesh deformations, the new mesh must have properly assigned vertex groups which match one or more of the bones of the target armature before the replaceMesh call is made. Otherwise the vertices won't react to the armature because they won't know how. (not sure if vertices can be scripted to change groups after the game has started)

 *note 2*
 The added processing time involved with replacing the object's deform controller is negligible.

14 years agoReplaced a bunch of malloc() calls with proper MEM_mallocN()
Ton Roosendaal [Sun, 17 Apr 2005 18:00:33 +0000 (18:00 +0000)]
Replaced a bunch of malloc() calls with proper MEM_mallocN()
(and free() and calloc() of course)

Remainder malloc() calls need to be there for realloc().

14 years agoPatch submitted by Jorge Bernal (lordloki) and Jonathan Merritt.
Ton Roosendaal [Sun, 17 Apr 2005 17:43:07 +0000 (17:43 +0000)]
Patch submitted by Jorge Bernal (lordloki) and Jonathan Merritt.

This will add Minneart diffuse and WardIso specular to our shader menu.
Minneart gives nice control over darkness/brightness areas, the wardIso
over 'plastic' style sharp or fuzzy specular.

Webpage is being made with nice samples. Will be in release log.

Jorge: one change is in the do_versions, you inserted it on wrong location.

14 years agoPatch provided by Andrea Weikert (elubie):
Ton Roosendaal [Sun, 17 Apr 2005 15:50:52 +0000 (15:50 +0000)]
Patch provided by Andrea Weikert (elubie):

With a few tests I have discovered that when quitting Blender the filelist
in SpaceFile doesn't get free'd.

storage.c:
I have replaced strdup for the relname member in BLI_builddir with BLI_strdup.
and malloc with MEM_mallocN for the string member in BLI_addstrings().

filesel.c:
Of course also had to replace free with MEM_freeN in freefilelist().

In freespacelist (space.c) I added call to freefilelist for the SPACE_FILE
space type.

14 years agoMore Curve Module features: access to the attributes flagU and flagV
Stephen Swaney [Sun, 17 Apr 2005 14:37:40 +0000 (14:37 +0000)]
More Curve Module features: access to the attributes flagU and flagV
in a  CurNurb object.
Contributed by Gergely Erdelyi (dyce).

14 years agoNew methods for Curve module: getBevOb() and setBevOb()
Stephen Swaney [Sun, 17 Apr 2005 13:48:16 +0000 (13:48 +0000)]
New methods for Curve module:  getBevOb() and setBevOb()
Adds ability to set, clear and get bevel object for a Curve.
Contributed by Gergely Erdelyi (dyce).
Thanks!

14 years agoUpdating build systems: folder release/bpydata/ moved to release/scripts/bpydata/
Willian Padovani Germano [Sat, 16 Apr 2005 18:25:42 +0000 (18:25 +0000)]
Updating build systems: folder release/bpydata/ moved to release/scripts/bpydata/

It seemed trivial enough, so I updated all systems (makefiles, xcode, scons, scons win installer), please complain if something went wrong.  Mostly it was just removing release/bpydata references, since the release/scripts dir is already worked on recursevely, handling dirs inside it.

For the scons nsi file writer script I had to write code for each new dir, but it can be recoded recursively, too (in fact joining all release stuff in a single dir tree with nothing else would be a good idea, making installation code simpler).  Since it's just python and I have a little more time now, I can help scons managers if they still need.

Thanks Campbell Barton for reporting.

14 years agocopy_softbody() didn't check if object actually was softbody!
Alexander Ewering [Sat, 16 Apr 2005 16:56:06 +0000 (16:56 +0000)]
copy_softbody() didn't check if object actually was softbody!

14 years agoLi'll feat request;
Ton Roosendaal [Sat, 16 Apr 2005 15:51:44 +0000 (15:51 +0000)]
Li'll feat request;

When curve objects have no front/back faces, the bevels were only drawn
for the outer part. Now it also makes interior bevels, so yo can
have a curve become a 'solid' ring easily.
Note: only works when you disable filling option "Front" and "Back".

14 years agoThe setup functions for SB and PI now initialize the vars to the defaults that are...
Johnny Matthews [Sat, 16 Apr 2005 15:33:38 +0000 (15:33 +0000)]
The setup functions for SB and PI now initialize the vars to the defaults that are set in the UI when one of the panels are accessed. Current this happens whenever an SB or PI api function is called for the first time.

14 years agoMore SoftBody stuff:
Ton Roosendaal [Sat, 16 Apr 2005 15:06:02 +0000 (15:06 +0000)]
More SoftBody stuff:

- after grab/duplicate the softbody didn't get a reset signal
- added 'copy properties' for softbody settings
- duplicate object didn't copy softbody yet

14 years agoSoftbody:
Ton Roosendaal [Sat, 16 Apr 2005 14:01:49 +0000 (14:01 +0000)]
Softbody:

- Added browsing for vertex group for "Goal" in SoftBody buttons.
- Means the default name "SOFTGOAL" isn't needed anymore
- temporally, on file read, the "SOFTGOAL" vertex group is set, if exists
- removing vertex group possible too
- changed softbody.c code to use this

14 years agoFor the manipulator freaks; rotate widget with 'arcs' now displays the
Ton Roosendaal [Sat, 16 Apr 2005 12:35:42 +0000 (12:35 +0000)]
For the manipulator freaks; rotate widget with 'arcs' now displays the
transparant grey (ghosted) rotation where mouse click started.

14 years agoScripts: missed removing this one (was updated by jms and renamed to unweld.py simply)
Willian Padovani Germano [Sat, 16 Apr 2005 05:42:52 +0000 (05:42 +0000)]
Scripts: missed removing this one (was updated by jms and renamed to unweld.py simply)

14 years agoNote: this commit includes new functionality to save and restore scripts configure...
Willian Padovani Germano [Sat, 16 Apr 2005 05:25:42 +0000 (05:25 +0000)]
Note: this commit includes new functionality to save and restore scripts configure options.  This is ongoing work, scripts still have to be updated to use this feature and more tests are needed, though many have been performed.  The new Scripts Config Editor script is the main part of this.  If anyone wants to check it, only the AC3D importer and exporter have already been updated to use it: simply open them (you can then cancel with ESC) to have the data created, then try the config editor.

Scripts:
- Thanks Jean-Michel Soler (jms) for updated versions of dispaint, fixfromarmature and unweld (also renamed to remove version part).
- Thanks Bart for the upgraded VRML exporter (great doc webpage!).  It is available as VRML 97 and the original VRML 2 is for now still there, to help users testing the new version.  For the next release the old one should be removed, of course.
- New script: Scripts Config Editor (Scripts win -> Scripts -> System).  Scripts with config options (simple data that is to be set according to user needs or preferences) can use this facility instead of providing a gui and writing config files to disk themselves.
- Added new menu: System, available in the Scripts win.
- Updated sys_info.py, help_browse.py and the AC3D importer and exporter.
- Removed use of the Scrollbar and added arrow keys and mouse wheel support instead in Daniel Dunbar's old doc_browser.py. The scrollbar events handling doesn't exist, Ton suggested removing the scrollbar from the API months ago.  For now its ref doc is gone and no bundled script uses it, until we get time to implement it properly.
- Added module BPyRegistry.py with functions to handle reading / writing config files automatically to the scripts/bpydata/config dir.
- Removing dir release/bpydata and its contents (moved earlier to release/scripts/bpydata/)
- Bug #2379: made small changes to bevel_center's ui to fix a problem reported by Alexander Ewering (intrr):
http://projects.blender.org/tracker/?func=detail&atid=125&aid=2379&group_id=9

BPython:
- Thanks Campbell Barton for new functionality: Blender.Get() now can also return all the paths from the user prefs -> file paths win and there is a new function: Blender.sys.expandpath() to transform Blender paths (those starting with '//' and ending with '#') to absolute paths.
- Added function Blender.ShowHelp(), to open the Scripts Help Browser with a given help page -- just a time saver for scripts.
- Improved function Blender.Run() to also work with gui and file select scripts.
- Found a (new?) crash related to NMesh.PutRaw when creating a new object while in edit mode.  Leaving / entering edit mode fixes the problem, so a check for obj created, edit mode and leaving / re-entering it were added to the code for now (gdb didn't help much, no backtrace)
- doc updates, including splitting intro page in two, with bpython related stuff (registering / documenting / configuring scripts and command line mode (thanks Chris Want for "use system variables to pass parameters to scripts" idea).
- Registry: functions have been updated to support writing to / reading from disk, for the config editor -- only simple config data supported, for large amounts coders should write to a file themselves.  This is done with a new parameter: Registry.GetKey(keyname, True) will also search for the key on the config dir, if not already loaded; equiv. for Registry.SetKey(keyname, dict, True).  Data is only written to / read from disk when needed and only scripts already used (assuming they support this functionality) will have config data saved.

14 years agoIn localview the Manipulator didnt center at correct 3d cursor location.
Ton Roosendaal [Fri, 15 Apr 2005 21:39:36 +0000 (21:39 +0000)]
In localview the Manipulator didnt center at correct 3d cursor location.

14 years agoExtrude normal correction part #4!
Ton Roosendaal [Fri, 15 Apr 2005 21:33:41 +0000 (21:33 +0000)]
Extrude normal correction part #4!

It works OK for faces extrude, but with only edges it should work too. :)

14 years agoAnother attempt to make extrude deliver correct normals.
Ton Roosendaal [Fri, 15 Apr 2005 20:29:08 +0000 (20:29 +0000)]
Another attempt to make extrude deliver correct normals.
Rule is flipped when it doesn't extrude a 'volume', in that case normals
point outside based on extruding in direction of original normals.

14 years agoFixes timecode to run frames 0 to (fps-1) rather than 1 to fps
Johnny Matthews [Fri, 15 Apr 2005 13:38:27 +0000 (13:38 +0000)]
Fixes timecode to run frames 0 to (fps-1)  rather than 1 to fps

14 years agoSimilar to last commit, This initializes the pd pointer if it is null for Particle...
Johnny Matthews [Thu, 14 Apr 2005 20:41:02 +0000 (20:41 +0000)]
Similar to last commit, This initializes the pd pointer if it is null for Particle interaction. for all the PI functions

14 years agoThis commit initializes the softbody pointer if it is accessed through python and...
Johnny Matthews [Thu, 14 Apr 2005 20:11:10 +0000 (20:11 +0000)]
This commit initializes the softbody pointer if it is accessed through python and has not yet been set up.

14 years agoAdds getTimeCode() to Rendering Context so that you can get current frame in HH:MM...
Johnny Matthews [Thu, 14 Apr 2005 18:27:11 +0000 (18:27 +0000)]
Adds getTimeCode() to Rendering Context so that you can get current frame in HH:MM:SS:FF string format

14 years agoAdds API for Particle Interaction Settings and Softbody Settings
Johnny Matthews [Thu, 14 Apr 2005 17:56:37 +0000 (17:56 +0000)]
Adds API for Particle Interaction Settings and Softbody Settings
Also adds docs for above API.

My testing cases seem to work fine. Please test to make sure I have not
missed anything!

Stivs, I got ascotan's signoff on thses. But please make any adjustments that
you deem needed.

Johnny

14 years ago - make sure object outline doesn't get drawn in faceselect mode
Daniel Dunbar [Thu, 14 Apr 2005 13:46:49 +0000 (13:46 +0000)]
 - make sure object outline doesn't get drawn in faceselect mode

14 years ago - bug fix, tface flags weren't checked correctly for INVISIBLE
Daniel Dunbar [Thu, 14 Apr 2005 13:46:05 +0000 (13:46 +0000)]
 - bug fix, tface flags weren't checked correctly for INVISIBLE
 - bug fix, tfaces weren't accessed correctly in presence of hidden/invis.

14 years agoHaving come to understand the nature of bug #1576 a little better,
Chris Want [Thu, 14 Apr 2005 03:11:41 +0000 (03:11 +0000)]
Having come to understand the nature of bug #1576 a little better,
I can now say that I declared it fixed erroneously before, and
I hope that when I call it fixed now it can really, truly be laid
to rest.

Sometimes when you escape a transform on an object that is the
target of an IK constraint on an armature bone, the rotations were
not restored correctly on the bones in the IK chain. This commit
fixes this problem in a rather brute force manner.