16 years agoadding some msvc6 magic to bullet part 1
Jens Ole Wund [Wed, 16 Nov 2005 23:37:02 +0000 (23:37 +0000)]
adding some msvc6 magic to bullet part 1

16 years agoSpecial Orange request; support for SoftBody Goal weights for Lattices.
Ton Roosendaal [Wed, 16 Nov 2005 21:58:49 +0000 (21:58 +0000)]
Special Orange request; support for SoftBody Goal weights for Lattices.
Animating detailed clothes with softbody becomes messy, so now we'll
try it this way. :)

It simply uses the W (weight) value, as already available in each Lattice
Point. Only had to make it editable;

- NKey panel
- or press W in editmode

Further there's a minimalistic W button in the softbody Panel!

16 years agoAdded stepsize option for Pose ghosting draw. Patch provided by Roland
Ton Roosendaal [Wed, 16 Nov 2005 21:03:16 +0000 (21:03 +0000)]
Added stepsize option for Pose ghosting draw. Patch provided by Roland

In a comment on maillist I already mentioned a weird 0.5 in the code,
which I added to ensure correct rounding to integer frame numbers.
With a variable step size however, this won't work properly. You could
see it in the patch, because the ghost steps were animating.... they
should remain frozen, looks much nicer then. So I've added some fmod
voodoo here.

16 years ago-- fix bug in constant_repr() which printed the final key twice
Ken Hughes [Wed, 16 Nov 2005 19:00:47 +0000 (19:00 +0000)]
-- fix bug in constant_repr() which printed the final key twice

16 years agoMirror modifier with "do clipping" set crashed in transform when no
Ton Roosendaal [Wed, 16 Nov 2005 18:40:12 +0000 (18:40 +0000)]
Mirror modifier with "do clipping" set crashed in transform when no
td->loc was set (like for crease).

16 years agoFix for #3409
Ton Roosendaal [Wed, 16 Nov 2005 18:26:56 +0000 (18:26 +0000)]
Fix for #3409

Vertex-parenting a forcefield to a softbody caused eternal loop :)
It is partially because of the timing system (=weak) but actually also
because derivedmesh calls could also not build meshes all the time!

16 years agoError in local constraint option; the rotation correction for it was
Ton Roosendaal [Wed, 16 Nov 2005 17:10:28 +0000 (17:10 +0000)]
Error in local constraint option; the rotation correction for it was
accumulating, so constraint worked on top of previous position, giving
jumping around in cases.

16 years agoAdded a slider to control camera passepartout darkness in camera edit buttons.
Matt Ebb [Wed, 16 Nov 2005 16:03:01 +0000 (16:03 +0000)]
Added a slider to control camera passepartout darkness in camera edit buttons.

16 years agoNew Constraint option for Pose: "Local" Copy Location/Rotation.
Ton Roosendaal [Wed, 16 Nov 2005 14:32:57 +0000 (14:32 +0000)]
New Constraint option for Pose: "Local" Copy Location/Rotation.

The locality is restricted to action or user-transform only. Or as it goes
in the code now: by setting a constraint local, it executes the constraint
before it calculates the influence of Action or user transforms.

ALso note that this works in Evil Eulerians. Meaning that when you only
want to copy the X,Y or Z compenent of a euler, it can give unpredictable
results when the other euler values are set, this because euler axis
rotations work on top of each other.

16 years agoRevision of NLA stride option.
Ton Roosendaal [Tue, 15 Nov 2005 22:39:20 +0000 (22:39 +0000)]
Revision of NLA stride option.

Previously, using the "Stride Bone" tried to get that Bone motionless on
the path by correcting the internal time of the Action. This however caused
too many problems, especially with irregular walks.

The new system also tries to keep the Stride Bone motionless, but this by
moving the entire armature, and not changing the timing of the Action.
Give much nicer results. :)

To make editing Strides easier, I've added a new option in the NLA
panel to disable the path. This way you can quickly switch to editing the
action itself (keying the stride bone) and viewing the result.

16 years ago- point constructor
Joseph Gilbert [Tue, 15 Nov 2005 21:45:05 +0000 (21:45 +0000)]
- point constructor
* added a constructor for the point class to mathutils

16 years ago* update to python docs
Joseph Gilbert [Tue, 15 Nov 2005 21:33:29 +0000 (21:33 +0000)]
* update to python docs
- the softbodies documentation was put in instead of object.object. Hello!

16 years ago* update to python docs
Joseph Gilbert [Tue, 15 Nov 2005 21:14:24 +0000 (21:14 +0000)]
* update to python docs
- update for the old mathutils rewrite
- update for some other methods ive added
- added explaination of wrapped data
- added a .css file for epydoc gives nice blender/python colors :?

16 years ago-- Added OB_RECALC_OB to Object_set* methods.
Ken Hughes [Tue, 15 Nov 2005 16:34:25 +0000 (16:34 +0000)]
-- Added OB_RECALC_OB to Object_set* methods.

16 years agoGrabbing a targetless IK bone, and ESC, accidentally didnt clear a flag,
Ton Roosendaal [Tue, 15 Nov 2005 15:54:57 +0000 (15:54 +0000)]
Grabbing a targetless IK bone, and ESC, accidentally didnt clear a flag,
causing targetless IK being executed on all bone moving (looked like as if
a bone couldn't be rotated/moved).

16 years agoSmall fixes;
Ton Roosendaal [Mon, 14 Nov 2005 22:21:56 +0000 (22:21 +0000)]
Small fixes;

- Bone Ghost drawing now skips axes and names
- "Snap to cursor" now works for parent-less bones in PoseMode
- Prevented assigning in buttons of negative zero (was confusing)

16 years agoKeeping CVS working isn't easy! :)
Ton Roosendaal [Mon, 14 Nov 2005 20:07:12 +0000 (20:07 +0000)]
Keeping CVS working isn't easy! :)
Optimize for hair caused transp triangles to be not rendered OK anymore.

16 years agoTwo orange reports;
Ton Roosendaal [Mon, 14 Nov 2005 19:57:51 +0000 (19:57 +0000)]
Two orange reports;

- Copy Location Constraint didn't update Object when it was copying from a
- Deleting bone in editmode, and connecting bones crashed due to evaluation
  of deformation code (only allowed for pose).

16 years agoAnother optimize step for huge quantities of hair renders; now per transp
Ton Roosendaal [Mon, 14 Nov 2005 19:00:13 +0000 (19:00 +0000)]
Another optimize step for huge quantities of hair renders; now per transp
part (64 scanline pixels) it first calculates clipping for faces.
Testfiles - 1 M faces with simple render - show 2 times speedup :)

16 years agoZtransp render has a built-in maximum for amount of faces it can render
Ton Roosendaal [Mon, 14 Nov 2005 18:14:03 +0000 (18:14 +0000)]
Ztransp render has a built-in maximum for amount of faces it can render
on top of each other. Was 100, which gave noise like this in this image;

Made it 200, which solves it for a million hair polygons;

Also note that hair renders go much faster and better if you insert a real
solid head in it, that will prevent hairs on the back to be inserted in the
buffers. ANd don't make the head Ztransp!

16 years agoNew zbuffer; added check for zero sized edges in filling in with new
Ton Roosendaal [Mon, 14 Nov 2005 16:27:48 +0000 (16:27 +0000)]
New zbuffer; added check for zero sized edges in filling in with new
span buffer. caused black stripes in render...

16 years agoStrand render/zbuffering optimize recode
Ton Roosendaal [Mon, 14 Nov 2005 14:27:44 +0000 (14:27 +0000)]
Strand render/zbuffering optimize recode

I've been going over the zbuf.c code, which is indeed very ancient,
with a load of old optimizing and redundant code in use.

Added more 'modern' Span support, which fills per face two arrays
with the scanline information in it. That way you can zbuffer a quad in one
run as well. It was also exactly that code that's copied all over in zbuf.c

For now, to prevent issues for the release, the 'render a quad in 1 run' is
only in use for the strand render. Tests reveil a speedup of about 33%.

Will work on this recode later... which would also result in making zbuf.c

And: bugfix #3398
When using the new 'render emitter' for particles, the orco array for
particles was accidentally used by mesh too.

16 years agoFinished hair strand render project (well, for release), also with a good
Ton Roosendaal [Sat, 12 Nov 2005 16:22:10 +0000 (16:22 +0000)]
Finished hair strand render project (well, for release), also with a good

- added width control for strands
- made tangent (anisotropic) render an option
  (so you can render strands more solid, like metal/wood)

- ALT+A anim playback with static particles made cursor flashing

16 years agoUndo for editfont fixed. Paste functionality crashed the blender
Mika Saari [Sat, 12 Nov 2005 15:40:37 +0000 (15:40 +0000)]
Undo for editfont fixed. Paste functionality crashed the blender
in case the paste buffer+length of text was bigger than MAXTEXT ->
fixed this, also a error is shown to the user now. editfont.c needs
still some cleaning but will discuss about this with kaito and intrr.

16 years agoRemoving an extra semi-colon that caused some grief
Johnny Matthews [Sat, 12 Nov 2005 14:39:14 +0000 (14:39 +0000)]
Removing an extra semi-colon that caused some grief

16 years agoBugfix: when editing a Curve Guide, and deleting all but one control point,
Ton Roosendaal [Sat, 12 Nov 2005 11:58:37 +0000 (11:58 +0000)]
Bugfix: when editing a Curve Guide, and deleting all but one control point,
the path code crashed.

16 years agoHairdresser request;
Ton Roosendaal [Sat, 12 Nov 2005 11:54:58 +0000 (11:54 +0000)]
Hairdresser request;

"Additive" Guides. See also:

This Guide type uses the falloff distance to also define how much the
particle (or hair strand) goes over the path, allowing to create local
extremes, or only local particle generating or hairgrowth. Nice for
spiky haircuts!

16 years agoParticles now are generated from subsurfed coordinates.
Ton Roosendaal [Sat, 12 Nov 2005 10:35:14 +0000 (10:35 +0000)]
Particles now are generated from subsurfed coordinates.

Note that the current default generates particles based on the original
amount of vertices and faces, this for vertex group support (which is not
subdivided with modifiers). That means that particles generated on
subsurfed faces still have minor approximation errors.

Note for DerivedMesh users; I've added a new API call:
float *mesh_get_mapped_verts_nors(Object *ob);
Which returns an array of 2 * 3 * float size, containing the vertices and
normals, deformed and subsurfered, but only the original me->mvert amount.
Works in all non-editmode cases.

Is in use now for vertex/weight paint and particles.

16 years agoBjornmose's fixes for making booleans compile on MSVC 6.
Alexander Ewering [Fri, 11 Nov 2005 23:10:10 +0000 (23:10 +0000)]
Bjornmose's fixes for making booleans compile on MSVC 6.


16 years agoInserted a line just above a variable declaration, causing MSVC to
Ton Roosendaal [Fri, 11 Nov 2005 20:54:08 +0000 (20:54 +0000)]
Inserted a line just above a variable declaration, causing MSVC to
complain :)

16 years agospecial service for msvc6 projects
Jens Ole Wund [Fri, 11 Nov 2005 20:15:16 +0000 (20:15 +0000)]
special service for msvc6 projects
post build step for booleans --> copy boolop.lib to lib folder _foo_/lib/windows..

enabeling bullet for GE
wants to link with _foo_/lib/windows/bullet/lib/bullet3.lib
you have to build it with continuous.dsw in exten/bullet and copy it manually there
since bullet is exten i think no automagic in place here

16 years agoThree particle fixes;
Ton Roosendaal [Fri, 11 Nov 2005 19:41:58 +0000 (19:41 +0000)]
Three particle fixes;

- "Disp" option allows to go back to zero, effectively disabling the entire
  particle generating.
- When parenting guides to an emitter the depgraph sees a cyclic relation,
  which caused not updating the particles correct on loading it.
- Moved creating guide Cache completely outside of the particle loop,
  should make it faster to use with large amounts of particles and objects.

16 years agoBugfix #3372
Ton Roosendaal [Fri, 11 Nov 2005 18:58:45 +0000 (18:58 +0000)]
Bugfix #3372

When using the pulldown menus for exiting weightpaint, it did not free
octree tables for weightpaint, giving an error message on re-entering

16 years ago* Fixed an old, old, old problem where the top camera arrows
Matt Ebb [Fri, 11 Nov 2005 17:26:08 +0000 (17:26 +0000)]
* Fixed an old, old, old problem where the top camera arrows
couldn't be seen in a side on view because they had no wireframe.

16 years ago-- various fixes for Mesh.c:
Ken Hughes [Fri, 11 Nov 2005 16:17:29 +0000 (16:17 +0000)]
-- various fixes for Mesh.c:
   * add some protection against accessing MVerts/MEdges/MFaces which have
   been deleted
   * correct cut-and-paste bug in faces.delete() method
   * correct some compiler warnings

16 years agoFix "Copy Attributes -> Font Settings" to copy the new vars (wordspace,
Alexander Ewering [Fri, 11 Nov 2005 15:19:15 +0000 (15:19 +0000)]
Fix "Copy Attributes -> Font Settings" to copy the new vars (wordspace,
underline stuff) as well.

Attempt at fixing editmode undo, but not successful. I'll create a bug-
report and assign it to Mika, because I only understand "train station"
(German saying :-) when looking at the code.

16 years agoRemoval of ugly_nvidia_hack for OSX Nvidia systems. Apple has fixed this
Ton Roosendaal [Fri, 11 Nov 2005 11:42:54 +0000 (11:42 +0000)]
Removal of ugly_nvidia_hack for OSX Nvidia systems. Apple has fixed this
bug in 10.4.3 now.

16 years agoDeleting Effectors (deflectors or Fields) now update particle systems and
Ton Roosendaal [Fri, 11 Nov 2005 10:46:26 +0000 (10:46 +0000)]
Deleting Effectors (deflectors or Fields) now update particle systems and
softbody. (report #3385)

16 years agoFix #3382
Ton Roosendaal [Fri, 11 Nov 2005 10:23:59 +0000 (10:23 +0000)]
Fix #3382

Alt+D on a Camera or Lattice did not create a linked copy. This was an
ancient convention from the dark ages (1995) still. :)

16 years agoThis is the famous proverbal example of someone trying to get a 4 legged
Ton Roosendaal [Fri, 11 Nov 2005 10:14:27 +0000 (10:14 +0000)]
This is the famous proverbal example of someone trying to get a 4 legged
table stable... you keep correcting leg sizes until no table is left
anymore! :)

This commit restores the displacement direction from 2.37a code, which was
negated 5 months ago to fix a change in renderconverter.c, but somehow is
not needed anymore. The regression displacement file now renders OK again.

16 years agoBugfix #3379
Ton Roosendaal [Fri, 11 Nov 2005 10:04:56 +0000 (10:04 +0000)]
Bugfix #3379

Fixes in WeightPainting accidentally passed on weightpaint values for the
(color) Vertex Paint option. (Opacity for example used weightpaint setting)

16 years agoBugfix #3370
Ton Roosendaal [Fri, 11 Nov 2005 09:50:22 +0000 (09:50 +0000)]
Bugfix #3370

Border select on a Meta strip in Sequencer didn't work. Seems to be a year
zero bug :)

16 years agofixed raysensor, hooked up a few more bullet method: force, torque etc, + 'local...
Erwin Coumans [Fri, 11 Nov 2005 05:02:14 +0000 (05:02 +0000)]
fixed raysensor, hooked up a few more bullet method: force, torque etc, + 'local'. cosmetic change in physics-engine menu.

16 years agoMore hairdressing goodies; in the 'velocity' section of the Particle
Ton Roosendaal [Thu, 10 Nov 2005 21:23:08 +0000 (21:23 +0000)]
More hairdressing goodies; in the 'velocity' section of the Particle
buttons you now can add a vertexgroup to define speed (or strand length).

16 years ago* Fixed a little problem when using both F* keys and header buttons
Matt Ebb [Thu, 10 Nov 2005 20:07:17 +0000 (20:07 +0000)]
* Fixed a little problem when using both F* keys and header buttons
to change buttons tabs wouldn't switch quite right.

16 years agoBug in previous commit today; sound buttons crashed...
Ton Roosendaal [Thu, 10 Nov 2005 19:51:20 +0000 (19:51 +0000)]
Bug in previous commit today; sound buttons crashed...
And: renamed "Num" to "Amount" for particle buttons.

16 years agoFix: editing curves, which are used to guide particles, update particles
Ton Roosendaal [Thu, 10 Nov 2005 19:27:31 +0000 (19:27 +0000)]
Fix: editing curves, which are used to guide particles, update particles

16 years ago- Static particles now draw shaded too!
Ton Roosendaal [Thu, 10 Nov 2005 19:00:10 +0000 (19:00 +0000)]
- Static particles now draw shaded too!
  It uses Material color and specular, like for the solid faces.
- Depgraph Fix for changing object layers, should re-evaluate dependencies
- Fix for setting curves to 3D by default (on adding a Guide field)

16 years agoadded changing the extending / extrapolation type of the IPO curves of selected actio...
Toni Alatalo [Thu, 10 Nov 2005 18:12:53 +0000 (18:12 +0000)]
added changing the extending / extrapolation type of the IPO curves of selected actions in the action editor (to the menu - code to handle hotkey (to rise a popup) is there too but unused & untested now).

16 years agoStatic particles; rotating the emittor caused an error, this due to a
Ton Roosendaal [Thu, 10 Nov 2005 16:55:24 +0000 (16:55 +0000)]
Static particles; rotating the emittor caused an error, this due to a
missing speed vector rotation. :)

16 years agoThe long awaited Particle patch from Janne Karhu
Ton Roosendaal [Thu, 10 Nov 2005 16:01:56 +0000 (16:01 +0000)]
The long awaited Particle patch from Janne Karhu

There's no doubt this patch had a lot of good ideas for features, and I
want to compliment Janne again for getting it all to work even!
A more careful review of the features and code did show however quite some
flaws and bugs... partially because the current particle code was very much
polluted already, but also because of the implementation lacked quality.
However, the patch was too good to reject, so I've fixed and recoded the
parts that needed it most. :)

Here's a list of of most evident changes in the patch;

- Guides support recoded. It was implemented as a true 'force field',
  checking all Curve path points for each particle to find the closest. Was
  just far too slow, and didn't support looping or bends well.
  The new implementation is fast (real time) and treats the paths as actual
  trajectory for the particle.
- Guides didn't integrate in the physics/speed system either, was added as
  exception. Now it's integrated and can be combined with other velocities
  or forces
- Use of Fields was slow code in general, made it use a Cache instead.
- The "even" distribution didn't work for Jittered sample patterns.
- The "even" or "vertexgroup" code in the main loops were badly constructed,
  giving too much cpu for a simple task. Instead of going over all faces
  many times, it now only does it once.
  Same part of the code used a lot of temporal unneeded mallocs.
- Use of DerivedMesh or Mesh was confused, didn't work for Subsurfs in all
- Support for vertex groups was slow, evaluating vertexgroups too often
- When a vertexgroup failed to read, it was wrongly handled (set to zero).
  VertexGroup support now is with a name.
- Split up the too huge build_particle() call in some parts (moving new code)
- The "texture re-timing" option failed for moving Objects. The old code used
  the convention that particles were added with increasing time steps.
  Solved by creating a object Matrix Cache.
  Also: the texture coordinates had to be corrected to become "OrCo".
- The "Disp" option only was used to draw less particles. Changed it to
  actually calculate fewer particles for 3D viewing, but render all still.
  So now it can be used to keep editing realtime.


The "speed threshold" and "Tight" features were not copied over. This
resembled too much to feature overkill. Needs re-evaluation.
Also the "Deform" option was not added, I prefer to first check if the
current particle system really works for the Modifier system.


- Added integration for particle force fields in the dependency graph
- Added TAB completion for vertexgroup names!
- Made the 'wait cursor' only appear when particles take more than 0.5 sec
- The particle jitter table order now is randomized too, giving much
  nicer emitting of particles in large faces.
- Vortex field didn't correctly use speed/forces, so it didn't work for
- Triangle distribution was wrong
- Removed ancient bug that applied in a *very* weird way speed and forces.
  (location changes got the half force, speed the full...???)

So much... might have forgotten some notes! :)

16 years agofixing msvc6 projects to compile again
Jens Ole Wund [Wed, 9 Nov 2005 19:29:04 +0000 (19:29 +0000)]
fixing msvc6 projects to compile again

16 years agoadding msvc6 project to boolops
Jens Ole Wund [Wed, 9 Nov 2005 19:27:25 +0000 (19:27 +0000)]
adding msvc6 project to boolops

16 years ago- replaced values.h by float.h/limits.h as suggested by Hos,GSR,UnNamed
Nils Thuerey [Wed, 9 Nov 2005 16:47:49 +0000 (16:47 +0000)]
- replaced values.h by float.h/limits.h as suggested by Hos,GSR,UnNamed

16 years ago- forgot to enable mac compile fix
Nils Thuerey [Wed, 9 Nov 2005 16:30:05 +0000 (16:30 +0000)]
- forgot to enable mac compile fix

16 years ago- minor fix of snprintf defines for MSVC
Nils Thuerey [Wed, 9 Nov 2005 11:10:15 +0000 (11:10 +0000)]
- minor fix of snprintf defines for MSVC
- fix for 2d domains was part of the previous checking as well, btw. :)

16 years ago- popup menu now aborts by default
Nils Thuerey [Wed, 9 Nov 2005 07:56:26 +0000 (07:56 +0000)]
- popup menu now aborts by default
- changed directory/prefix input (only 1 string instead of two, more similar to render output settings now)
- changed reading/writing of surface files
- slightly enhanced surface smoothness

16 years ago-- When storing a mesh, allow TFaces without defined UV coordinates to use
Ken Hughes [Wed, 9 Nov 2005 00:38:56 +0000 (00:38 +0000)]
-- When storing a mesh, allow TFaces without defined UV coordinates to use
   some default values instead of throwing an exception.  Also use only the
   first four UV coordinates supplied in the list.

16 years agoBugfix: #3377 Epy docs missing links
Stephen Swaney [Tue, 8 Nov 2005 22:11:19 +0000 (22:11 +0000)]
Bugfix: #3377  Epy docs missing links

Link to sys was broken.  need to be  L{sys<Sys>} for name to match.

16 years ago-- changes and bugfixes from Cam:
Ken Hughes [Tue, 8 Nov 2005 21:50:30 +0000 (21:50 +0000)]
-- changes and bugfixes from Cam:
  -- calling mesh.getFromObject(obj) with mesh object now also
     copies material properties
  -- mesh.quadToTriangle() takes a parameter to duplicate both
     Ctrl-TKEY and Shift-Ctrl-TKEY actions
  -- assigning None to mesh.verts "clears" the memory allocated
     to the mesh (equivalent of Mesh.New(), but on an existing
  -- exception handler message for mesh.faces[i].uv = [..] more
     clear (uv attribute only accepts tuple, not list)
  -- fixed bug for meshs with deformed verts when deleting verts
     (deformed verts deleted and repacked correctly now, I think)

16 years ago-- Previous commit using PyDict_Keys left new reference around. Change to use
Ken Hughes [Tue, 8 Nov 2005 18:46:55 +0000 (18:46 +0000)]
-- Previous commit using PyDict_Keys left new reference around.  Change to use
   PyDict_GetItem() instead, and clean up string manipulation.

16 years agouh next time i read properly before commit, and not only from the nice webcvs diff..
Toni Alatalo [Tue, 8 Nov 2005 17:57:04 +0000 (17:57 +0000)]
uh next time i read properly before commit, and not only from the nice webcvs diff..

16 years agoa little tweak to make curve handles always copy the type from the previous handle
Toni Alatalo [Tue, 8 Nov 2005 17:47:57 +0000 (17:47 +0000)]
a little tweak to make curve handles always copy the type from the previous handle

16 years agoBPython docs:
Willian Padovani Germano [Tue, 8 Nov 2005 17:23:20 +0000 (17:23 +0000)]
BPython docs:
  bug #3367 reported by Chris Want (thanks): ob.mat documentation was
wrong (was not updated); that attribute returns the world space matrix,
not the local one.

16 years ago*work around for PyDict_Contains
Joseph Gilbert [Tue, 8 Nov 2005 16:27:58 +0000 (16:27 +0000)]
*work around for PyDict_Contains

16 years agoMake preview line not draw over hidden areas for loopcut
Johnny Matthews [Tue, 8 Nov 2005 15:04:14 +0000 (15:04 +0000)]
Make preview line not draw over hidden areas for loopcut

16 years ago#3375
Johnny Matthews [Tue, 8 Nov 2005 14:52:35 +0000 (14:52 +0000)]

CutEdgeLoop now ignores hidden edges

16 years agoJust have been told fmodf is C99, so I replaced it with fmod and casts...
Alexander Ewering [Tue, 8 Nov 2005 12:56:32 +0000 (12:56 +0000)]
Just have been told fmodf is C99, so I replaced it with fmod and casts...

16 years agoReplaced my noble-prize worthy "float modulo" implementation with fmodf().
Alexander Ewering [Tue, 8 Nov 2005 12:53:36 +0000 (12:53 +0000)]
Replaced my noble-prize worthy "float modulo" implementation with fmodf().

16 years agoChanged my mind and made the "Strobe" value a float - this way you can get
Alexander Ewering [Tue, 8 Nov 2005 00:46:39 +0000 (00:46 +0000)]
Changed my mind and made the "Strobe" value a float - this way you can get
a strobe effect synced exactly to a beat, for example, by using non-integer

Is it just me, or are there recently a lot of crashes in sequencer when
using audio strips?

16 years agoNew 'feature' for image/movie strips: Strobe
Alexander Ewering [Mon, 7 Nov 2005 23:13:00 +0000 (23:13 +0000)]
New 'feature' for image/movie strips: Strobe

In the NKEY flying panel, you can set "Strobe" to something other than 1
for only displaying each nth picture of the strip. You know the effect
from movies :)

(I put this into the NKEY panel rather than as a effect because effects
only affect single frames (?) while this rather has to do with the
timing... like "Reverse")

16 years ago*armature api for python
Joseph Gilbert [Mon, 7 Nov 2005 20:03:32 +0000 (20:03 +0000)]
*armature api for python
- don't get too excited
- allows you to get armatures from a scene
- makeEditable()/saveChanges() puts the armature into out of editmode (pythonically)
- Armature.bones is a dictionary that contains all the bones in the armature and can be iterated
- getters are available for:
roll (dictionary) keys are BONESPACE, ARMATURESPACE
head (dictionary) keys are BONESPACE, ARMATURESPACE
tail (dictionary) keys are BONESPACE, ARMATURESPACE
matrix (dictionary) keys are BONESPACE, ARMATURESPACE
options (list of constants)

Setter work only in editmode. Some are not fully implemented.
Type class is embedded in the module. This means the construct is called as follows:

import Blender.Armature as Armature
arm = Armature.Get('myarm')
for name, bone in arm.bones.items():
...print name, bone, bone.matrix['ARMATURESPACE']

more documentation is forth coming. This is an alpha for this api.

16 years ago*change to the way constants are printed
Joseph Gilbert [Mon, 7 Nov 2005 19:36:50 +0000 (19:36 +0000)]
*change to the way constants are printed

16 years ago- warning fixes
Joseph Gilbert [Mon, 7 Nov 2005 19:34:44 +0000 (19:34 +0000)]
- warning fixes
* various warnings the python api is putting out

16 years agoFirst part of sequencer attack:
Alexander Ewering [Mon, 7 Nov 2005 13:22:23 +0000 (13:22 +0000)]
First part of sequencer attack:

Sequencer image preview finally supports zooming out. Yay!

16 years ago-- Clean-up of Effect and Particle modules; since particle was the only
Ken Hughes [Mon, 7 Nov 2005 00:22:05 +0000 (00:22 +0000)]
-- Clean-up of Effect and Particle modules; since particle was the only
   remaining effect type, it didn't make much sense to leave things
   implemented in two separate files.  Changes include:
   * two bug fixes (the getChild() and getMat() methods were using floats
   instead of shorts)
   * performing clamping on input values
   * implementing attributes using tp_getset
   * merging Effect and Particle functions: the Particle module exists in
   name only, with the Particle.New() and Particle.Get() functions
   remaining for backward compatibility (they are in fact identical to
   Effect.New() and Effect.Get() functions)
   * update of doc/ (including remove all old references to wave
   and build effects)

16 years ago-- Added Object.effects, a read-only attribute which returns a list of the
Ken Hughes [Sun, 6 Nov 2005 22:29:49 +0000 (22:29 +0000)]
-- Added Object.effects, a read-only attribute which returns a list of the
   particle effects belonging to an object (based on patch from jms)

16 years agoBugfix #3358
Ton Roosendaal [Sun, 6 Nov 2005 19:02:14 +0000 (19:02 +0000)]
Bugfix #3358

Deleting a shape key object could crash, when ipowindow open and showing an
active key.

Also: patch from tracker to increase limits of buttons for background image

16 years agominor cleanup. Todo: Does 'testhandles' need to be called after every single ipo_inse...
Erwin Coumans [Sun, 6 Nov 2005 16:50:22 +0000 (16:50 +0000)]
minor cleanup. Todo: Does 'testhandles' need to be called after every single ipo_insert_vert ?

16 years agoSmall fix to allow relative filenames for textfiles.
Andrea Weikert [Sun, 6 Nov 2005 16:32:54 +0000 (16:32 +0000)]
Small fix to allow relative filenames for textfiles.

16 years agoI seem to have problems with the distinction between else and #else today.
Chris Want [Sat, 5 Nov 2005 22:20:40 +0000 (22:20 +0000)]
I seem to have problems with the distinction between else and #else today.

My apologies!

16 years agoModifier fix; new Armature modifier added sets the deform flags on.
Ton Roosendaal [Sat, 5 Nov 2005 21:51:12 +0000 (21:51 +0000)]
Modifier fix; new Armature modifier added sets the deform flags on.

(Note; until 2.40 release, these flags are also still in the Armature
Panel, that will disappear then)

16 years agoAnother typo in ALT+C convert modifiers; it was copying data from the
Ton Roosendaal [Sat, 5 Nov 2005 21:40:35 +0000 (21:40 +0000)]
Another typo in ALT+C convert modifiers; it was copying data from the
wrong object, which worked until a few days ago when I fixed a bug
in add_object(). :)

16 years agoBugfix #3249
Ton Roosendaal [Sat, 5 Nov 2005 21:17:55 +0000 (21:17 +0000)]
Bugfix #3249

Error in BLI_array_randomize(), an unused call in Blender until the
Build Modifier was added. It did a weird modulus I don't really grasp...
somehow that caused the bug (create a corrupt mesh). But why? Dunno...

16 years agoUse limits.h and float.h on *bsd instead of values.h.
Chris Want [Sat, 5 Nov 2005 21:09:47 +0000 (21:09 +0000)]
Use limits.h and float.h on *bsd instead of values.h.

On this subject (and thanks to GSR for research) on debian the
values.h has the following warning:

/* This interface is obsolete.  New programs should use
   <limits.h> and/or <float.h> instead of <values.h>.  */

Should values.h be used at all?

16 years agoBugfix #3342
Ton Roosendaal [Sat, 5 Nov 2005 20:02:04 +0000 (20:02 +0000)]
Bugfix #3342

Target-less IK, with a hinge bone that has an offset to its parent, didn't
get applied correctly after transform.

16 years ago* 3D View menus updates. mainly just adding missing functionality
Matt Ebb [Sat, 5 Nov 2005 18:40:07 +0000 (18:40 +0000)]
* 3D View menus updates. mainly just adding missing functionality
that only had hotkey access before and tweaking organisation of new stuff.

16 years agoBugfix #3237
Ton Roosendaal [Sat, 5 Nov 2005 18:23:26 +0000 (18:23 +0000)]
Bugfix #3237

Selecting Edges in "Cut Away View" (ALT+B) did not work yet for wire view.
Solved it by calculating the closest coordinate for mouse to edge, and
check for that position if it's visible or not.

16 years agoI think I committed something I shouldn't have. Hopefully
Matt Ebb [Sat, 5 Nov 2005 17:19:20 +0000 (17:19 +0000)]
I think I committed something I shouldn't have. Hopefully
this will fix compilation.

16 years agoFix #3256
Ton Roosendaal [Sat, 5 Nov 2005 17:14:55 +0000 (17:14 +0000)]
Fix #3256

DXF: when an error message occurs during read, the main call returned
without clearing the used global vars... causing crash on calling again.

ALso: added warning when trying to assign a taper or bevel using Object
itself. (report from opengl tracker :)

16 years ago* Buttons window tab cycling
Matt Ebb [Sat, 5 Nov 2005 16:35:32 +0000 (16:35 +0000)]
* Buttons window tab cycling
Repeated presses of the F* key to go to a buttons context will
now cycle through the sub-tabs within. For example, when at
a different buttons window context, pressing F7 twice will cycle
through to the Physics buttons tab, pressing F10 three times
will cycle through to the Sound buttons tab, etc.

16 years agoFix #3343
Ton Roosendaal [Sat, 5 Nov 2005 16:32:13 +0000 (16:32 +0000)]
Fix #3343

Right after leaving Armature editmode, and entering posemode, the active
bone was not selected (when only the head or tip was selected). This caused
a confusing display of an active but not selected Bone... and not proper
behaviour of UI (buttons) and inserting keys.

Fix #3348

Mirror Modifier, button "Merge Limit" didn't react on left/right click.

16 years agofix #3357
Ton Roosendaal [Sat, 5 Nov 2005 15:52:32 +0000 (15:52 +0000)]
fix #3357

- Armature editmode, x-axis mirror edit, didn't mirror alt+s scaling of

ALso: found out that alpha drawing for Envelope Bones in editmode wasn't
set properly.

16 years agoBugfix #3355
Ton Roosendaal [Sat, 5 Nov 2005 15:45:26 +0000 (15:45 +0000)]
Bugfix #3355

calling "Apply deform" from toolbox, with no active object, crashed.

16 years agoFix for #3316: do not convert slashes in the relname in BLI_make_file_string
Andrea Weikert [Sat, 5 Nov 2005 13:09:43 +0000 (13:09 +0000)]
Fix for #3316: do not convert slashes in the relname in BLI_make_file_string
Also fixed signature to const char* to indicate which parameters can be changed
to make it a bit safer, because constant strings are passed into this function
and changing them caused a crash.

16 years ago - small optimalisation of Matt's code, Markers are copied in one loop,
Jiri Hnidek [Fri, 4 Nov 2005 21:45:44 +0000 (21:45 +0000)]
 - small optimalisation of Matt's code, Markers are copied in one loop,
   Matt, admire function BLI_addhead() ;-)

16 years ago- JMS's patch which adds GetParticlesLoc() method. I've modified the code
Ken Hughes [Fri, 4 Nov 2005 20:34:38 +0000 (20:34 +0000)]
- JMS's patch which adds GetParticlesLoc() method.  I've modified the code
  so that it resides in the Effects module instead, with the intent of
  soon merging Effect.c and Particle.c into a single file (and somedat
  removing references to the Effects.Particle submodule)

16 years agoScripts: Jean-Michel updated his rvk1 to rvk2 script (thanks); small fix in BPyRegist...
Willian Padovani Germano [Fri, 4 Nov 2005 16:30:38 +0000 (16:30 +0000)]
Scripts: Jean-Michel updated his rvk1 to rvk2 script (thanks); small fix in BPyRegistry module to remove empty config keys instead of causing an error

16 years agoCombined bugreport, bugfix and patch from Vidar Madsen.
Ton Roosendaal [Fri, 4 Nov 2005 12:38:46 +0000 (12:38 +0000)]
Combined bugreport, bugfix and patch from Vidar Madsen.

He noted that static particles don't work with force fields yet, and
added a fix for it. This however didn't work for the depgraph yet, and
didn't correct the static particle's local space to world coordinates for
the fields. Nevertheless, while reviewing this small patch I thought it
would be fun to add now.

So: static particles now update realtime on forcefield relations. Warning
for potential slowdowns! Also note that work on the real particle patch
still has to be done... something I really will do, but in time. To get
particles correctly integrated in the animation system, quite some new
development has to be done still.

16 years agoSmall thing, just filling a gap that we really need here -
Matt Ebb [Fri, 4 Nov 2005 11:23:22 +0000 (11:23 +0000)]
Small thing, just filling a gap that we really need here -
Added duplication of markers in the timeline with Shift D
(in the frame menu too)