Commit Graph

5708 Commits

Author SHA1 Message Date
Erwin Coumans
f51d1ef7d6 - fixed Bullet noResponse/ghost mode
- added ccd option (future use, very basic and inefficient)
- some internal Bullet refactoring/improvements
2006-04-28 00:08:18 +00:00
Ken Hughes
139c190605 ===Python API===
Added render.getRenderWinSize() method, to complement render.setRenderWinSize()
2006-04-27 20:24:27 +00:00
Campbell Barton
176a4c8507 Added scalePart to mathutils matrix type object.
and made it so toEuler converts a 4x4 matrix to a 3x3 rather then raising an error.

Its not straight fwd to get an objects worldspace loc/size/rot from its 4x4 matrix.
Example from updated docs.
      import Blender
      scn = Blender.Scene.GetCurrent()
      ob = scn.getActiveObject()
      if ob:
        mat= ob.mat # Same as martixWorld
        print 'Location", mat.translationPart() # 3D Vector
        print 'Size", mat.scalePart() # 3D Vector
        print 'Rotation", mat.toEuler() # Euler object
2006-04-27 12:32:44 +00:00
Erwin Coumans
b18763a265 make Bullet default physics engine. However, it still loads some default .blend that set's sumo default. todo: find out about this.
commented out some code that makes Blender crashing, after leaving the game engine (armature deletes some pose, which deletes constraints, which are still in the dependency graph. Ask Charlie)
2006-04-27 04:37:20 +00:00
Matt Ebb
444f4e894f == interface ==
* Floating panel edge snapping

Floating panels now have a snapping mechanism that sticks them to the edge of a window when you drag them within a small range of it. This not only allows nice easy alignment of panels within a window, but also keeps them stuck to window edges when the window is resized. This means that you no longer get panels that were once on the edge of the window left drifting in the middle of your view if you resize it larger, which was rather annoying before.

Another goodie is that panels snapped to the bottom edge of the screen will minimise down to the bottom when collapsed, and will move back up to be edge aligned when maximised again, preventing collapsed panels down here from hanging around in space.
2006-04-26 14:47:04 +00:00
Campbell Barton
b69db8f090 Made space handelers check that G_DOSCRIPTLINKS is enabled before running.
Its scary to think that a redraw space handeler could run
  import os
  os.system('rm -rf ~/')
removing all user files, Just by opening the blend file!

This means at least you can opt not to run any python scripts you dont want to..
2006-04-26 08:22:39 +00:00
Erwin Coumans
f9597df32d added Bullet rigidbodies that behave like Sumo 'dynamic', without rotations. Done using a special hinge constraint (no translational degrees of freedom removed) 2006-04-26 06:01:46 +00:00
Erwin Coumans
45d0123a59 fixed several internal Bullet rigidbody dynamics bugs:
- broadphase had bugs in removing objects,
- persistent manifold renamed value,
- cylinder penetration depth fixed,
- memory leak for persistent manifold
2006-04-26 03:20:28 +00:00
Matt Ebb
94dd1085e3 Trying a new method for setting the brightness of the mini axis. Let's see how this goes. 2006-04-26 01:42:35 +00:00
Daniel Dunbar
16a816c38d - initialize some globals to 0 explicitly 2006-04-26 00:51:58 +00:00
Ken Hughes
74acf8224d ===Python API===
Fix some small typos in Pose epydocs.
2006-04-25 22:00:18 +00:00
Campbell Barton
ab5c87cbf4 Re arranged how modifiers are used.
All settings through Blender.Modifier.Settings
see the epydocs
Also added some error checking to fix some possible segfaults.
Added more epydocs

Modifiers API should be stable enough to use now, though give it a bit of time for testing.
2006-04-25 13:01:19 +00:00
Matt Ebb
2bbfd3a801 * patch #3876: Rotating view icon
submitted by Davide Vercelli

This replaces (as a user preference) the static icon shown in the bottom-left of the 3D View with a small rotating axis that updates live in all ortho/perspective modes

I made several modifications to the original patch. In the patch, it displayed the axis on top of the 'object info' text since when floating panels are minimised, they sit in the bottom corner and cover the axis up. This annoyance is not limited to the axis, it also covers the frame number and info text, which can be frustrating. Sending them to the bottom is not that useful either, since it's quicker (with esc) and just as much movement to close and re-open them again.

I decided to solve this problem at the cause: Now when using the disclosure triangle on floating panels, they 'minimise in place' rather than going to the bottom.

User preferences are in the 'View & controls' section to:
- Display either the 3D axis or the old icon
- The size of the axis
- the brightness of the axis (colours are taken from grid theme settings)

* patch #3801: Option to show view direction in 3D View
submitted by Daniele Fornaciari

Simple one, just adds an user pref to show the name of the view's direction as text in the top left corner.
2006-04-25 12:26:46 +00:00
Ken Hughes
5fa5ea352e ===Bugfix===
matrix.resize4x4() was incorrectly allocating a array of pointers using
the wrong cast -- sizeof(float) instead of sizeof(float *).  Worked fine
on 32-bit systems but caused a crash on AMD64.  Discovered by a student
in one of my classes (kudos, Joe).
2006-04-24 23:00:03 +00:00
Joseph Gilbert
26c8d8f983 For some reason the render docs didn't mention the fact that you the RenderData stuct has the 'currentFrame' method for proper frame access. 2006-04-24 16:17:03 +00:00
Joseph Gilbert
87949e5c67 warnings cleanup for the python project on windows 2006-04-24 15:09:07 +00:00
Ken Hughes
94ebee891c Some Ipo getseters calling setter methods; added the necessary wrapper
functions to make this work correctly.
2006-04-24 05:24:58 +00:00
Erwin Coumans
8291024b99 fixes in raycasting 2006-04-24 04:58:37 +00:00
Erwin Coumans
c781a840b2 fixed collision sensor for dynamically created objects using Bullet physics 2006-04-24 02:03:55 +00:00
Erwin Coumans
d1c0a4e6d1 use ContinuousConvexCollision for raycaster, fixes raycast problems 2006-04-23 18:42:17 +00:00
Ken Hughes
a26ef58877 ===Tools===
Patch #4119, submitted by Lukas Steiblys (imbusy1).  Mesh objects (created
through the toolbox) which take user input such as number of verts, are not
created if the user cancels input.  Thanks for the patch!
2006-04-23 18:19:37 +00:00
Ken Hughes
e6db82ec04 ===Python API===
Fix for Cygwin/GCC compile errors: doesn't like PyObject_Del() in the
PyTypeObject declarations :-P
2006-04-23 17:15:20 +00:00
Ken Hughes
6f94c5ef5e ===Python API===
More Modifier API changes:
 * add Blender.Modifier.Settings dict with constants for modifier types
 * add mod.type attribute, which returns type of the Modifier
 * add some internal consistency checks in ModSeq_remove
2006-04-23 17:01:04 +00:00
Ken Hughes
fe1495cf24 Little bit of code clean-up and commenting. 2006-04-23 14:17:14 +00:00
Stephen Swaney
e8b2d0d211 fix compiler warnings.
The 'excess elements in struct initializer' is fatal on some platforms.
2006-04-23 12:56:58 +00:00
Campbell Barton
b3bd7c869a added remove to the modifier seq (when pymodifier->md is NULL then its been removed)
added name to the docs
2006-04-23 08:01:02 +00:00
Ken Hughes
8001a8b409 ===Python API===
Initial commit for new Modifier API.  Probably does about 70-75% of what it
should, but it's a start.
2006-04-23 02:34:50 +00:00
Ken Hughes
1e1e908816 Miscellaneous fixes to documentation. 2006-04-21 20:31:27 +00:00
Ken Hughes
4aa28f13f4 ===Python API===
New Ipo and IpoCurve API.  Ipo and IpoCurve objects support the [] operator,
for accessing the curves of a particular Ipo and for accessing the value
of an IpoCurve at a specific time.  Both modules were also "tp_getset"-ified.
Also, code for an alternative method (Antont wanted this) of accessing curves
via Ipo attributes is included for now, for people to try and see if it's
actually preferable to the Ipo [] operator.

These are all new additions; nothing was intentionally removed from the API.
If you find the something in the existing API has changed, let me know.
2006-04-21 20:27:52 +00:00
Campbell Barton
237030a6ca Error in the header, was still refering to mesh type rather then group, didnt seem to break anything. 2006-04-21 00:00:42 +00:00
Ken Hughes
355486c83d Replaced constant_getAttr() with constant_getAttro(), and added extra
code so that the .keys(), .items() and .values() methods worked.
2006-04-20 17:51:58 +00:00
Campbell Barton
1632a2f888 Added Group to Blender.Types, tested and working.
Added Group Epydocs, with 2 examples.
also added http://en.wikibooks.org/wiki/Blender_3D:_Blending_Into_Python
  to the blender links main page.
2006-04-20 14:26:24 +00:00
Campbell Barton
19345ba9ac CVS: ----------------------------------------------------------------------
ob.DupObjects was working but giving a warning. Fixed the warning and it also works in all test cases.
2006-04-20 12:22:00 +00:00
Ken Hughes
b22ebe667a Bugfix #3889: action.setActive() was not adjusting id.us count correctly when
a new action was set to active.
2006-04-20 02:42:53 +00:00
Campbell Barton
d4cef18e38 Previous commit broke pythons ob.DupObjects.
Though access was incorrect, fixing it made the linked list return a different length.
tested with all dupli types and it works properly now.
2006-04-19 10:38:20 +00:00
Campbell Barton
9bfd86730d bugfix for 4121
a fairly obvious bug- with flipping armature names in armature edit mode.
All Objects names would flip if they had names from the armature, even if they did NOT use use armature. (this could realy mess up a scene)

fix was a 1 liner.

replaced
			modob = modifiers_isDeformedByArmature(ob);
			if(modob) {

with


			/* or is there an armature deforming object */
			/* this is a bit sloppy, what if we have more then 1 armature deforming a mesh?
			TODO: Should have a function modifiers_isUsingArmature(ob, arm) - Campbell */
			modob = modifiers_isDeformedByArmature(ob);
			if(modob && modob->data==arm) {

Notice that before it didnt care what armature, just that it had one.

If the maintainer Ton? gives me the OK. Ill make this support multiple armatures by adding modifiers_isUsingArmature.
2006-04-18 23:59:13 +00:00
Campbell Barton
2b46b624f8 Error in accessing the listbase needed to use BLI_countlist(&lb) rather then BLI_countlist(lb)
fixed, thanks jms for the hint.
2006-04-18 15:37:32 +00:00
Campbell Barton
faaa67d6f6 small change to deselectall, just made it so that pressing Akey didnt do anything if there wasnt anything to sel/desel.
notice that if you pressed Akey when no objects in the view it still pushed an undo event, redrew and counted all and change the memory usage in the status.
mainly added not to waist undo slots.
2006-04-18 08:19:28 +00:00
Joseph Gilbert
6d6b36f009 Fixes an error that prevents builds on msvc.
version 1.58 assumes the usage of the BUILD_DATE macro. When this macro is not defined the extern declarations cause the linker to fail.

As a sidenote there is no 'winbuildinfo.c' file that the BUILD_DATE macro assumes is present on win32 systems....
2006-04-17 19:20:02 +00:00
Ton Roosendaal
5768e9a9dd Bugfix #3683
When the 'reference shape key' (drawn yellow) was not the first key, the
channels as drawn in IpoWindow didn't match the actual shape keys.
This was caused by an exception in code that skips drawing the reference
shape when 'relative' was used.

Now I've added a rule that the first shape in a list always becomes the
reference, that way you can also edit it. To keep backwards compatibility,
this is only activated on translating the shape key lines.
2006-04-17 17:35:20 +00:00
Ton Roosendaal
420b6ba5e4 Patch #3675 by Ed Halley
Finally after 5 months! :)

Patch was already approved, but needed testing on existing files & time...

Description is here:
http://mediawiki.blender.org/index.php/BlenderDev/Transmissivity

In short: patch adds filtering based on thickness of material, and support
for internal reflection (resulting in better looking glass).

Thanks!
(Only note; appearance of glass render now differs... is acceptable, but for
the factor to control transmissivity a scaling factor could be added in UI,
the length of a ray is a relative thing...)
2006-04-17 15:01:23 +00:00
Ton Roosendaal
fa5f95efa5 Fix #4111
Objects with a Pose, but which is not an armature, crashes on duplicating.

Now have to find out how it can happen even... only Armatures uses poses.
2006-04-17 14:26:41 +00:00
Erwin Coumans
904a0792f7 Bullet physics: fixed some accuracy problem (square length should be compared to square epsilons), and more collision sensor work + deactivation issues 2006-04-17 06:27:57 +00:00
Erwin Coumans
971ee74c84 added support for 'Ghost' object and collision sensor (preliminary) 2006-04-17 01:33:10 +00:00
Martin Poirier
1c89ae39cc === Animation ===
Patch #4044 patch to change the step when changing frame with up or down arrow keys.

This adds a per Scene setting to specify the number of frames skipped by the up and down arrow.
This setting can be changed in the Timeline header and in the Anim/Playback section of the Scene settings.

Upon loading a file without that setting or creating a new scene, it is set to 10

Also fixed the Start and End frame buttons in the Scene buttons to do a proper refresh.
2006-04-16 16:50:26 +00:00
Stephen Swaney
342bb99a19 a little spring cleaning to remove some compiler warnings for
implicit declarations, redundant redeclarations, missing initializers,
nested externs and other cruft.

Cleaned up includes and moved extern _Type decls from Types.h into
Types.c since that is the only place where they are needed now.

Did not touch Ipo.[ch] since work is on-going there.
2006-04-16 15:28:50 +00:00
Ton Roosendaal
a204ccd287 #bugfix #3682
NLA and Action window sometimes suffered from very weird scaled display,
caused by making the subwindow very small. Was a missing check for small
sizes.

Also in this commit removal of debug print N_T left in for ipos.
2006-04-14 15:29:52 +00:00
Erwin Coumans
187cc0a5fe enabled ipo in combination with physics (no friction effect from kinematic to dynamic transferred yet) 2006-04-14 04:03:56 +00:00
Erwin Coumans
5a26279d63 don't use hull testing code by default 2006-04-14 03:18:17 +00:00
Erwin Coumans
13e0d22d89 a lot of work in a few small changes to improve penetration depth. and some fixes in shaders from Charlie. 2006-04-13 05:11:34 +00:00