Commit Graph

7987 Commits

Author SHA1 Message Date
Ton Roosendaal
6283b5523a New: added SHIFT+A "Add Action Strip" menu to NLA editor. This gives a menu
with choices of Actions to be added.
2006-09-14 08:23:38 +00:00
Ton Roosendaal
f0614ad811 New: (partial) Shape Key support for Lattices
- Panel with Shape keys now shows for lattice too
- Supports VGroup weight value for Shapes

NOTE: this doesn't support Shape editing with linked duplicates. The
modifier system for Lattices (as for Curve/Surface) has no local Object
storage, so linked duplicates will all show identical.
2006-09-14 08:13:09 +00:00
Brecht Van Lommel
737458d2f4 Bugfix: texture paint didn't work correct with modifiers. 2006-09-12 16:53:27 +00:00
Ken Hughes
e02e8b0c71 Bugfix #4979: unlinking mesh obdata which has shape keys was not decrementing
the IPO user reference count when the key's reference count reached zero.
2006-09-12 14:05:26 +00:00
Ton Roosendaal
d9ff064cf7 Menu to copy Shapes (Editmode Mesh, CTRL+C) now displays in columns 2006-09-12 10:39:22 +00:00
Ton Roosendaal
5c1e2c4e04 fixed typo collumn -> column 2006-09-12 10:29:04 +00:00
Ton Roosendaal
e8111bd39d Patch 4981 (Tom Musgrave, revised)
New option: "Select Collumn" in Action editor. This selects all 'keys' on
the same time, based on already existing selection. Works for Actions as
well as Shape Keys. Hotkey K.
2006-09-12 08:29:50 +00:00
Ken Hughes
c3b9a550a3 ===Python API===
Internal code clean-up: make M_Object_New use existing code instead of
duplicating the steps of object initialization/creation.
2006-09-11 17:55:52 +00:00
Campbell Barton
5e4728369a made getFromObject() use a dummy mesh, rather then making a copy of the mesh and then replacing its data with the displist mesh.
aside from avoiding unneeded memory alloc/dealloc and bing faster this works around a recently discovered bug with the user count of copied Mesh keys... causing getFromObejct leak memory when used with mesh keys.
It also fixes a bug where getFromObejct with fluid-sim would corrupt memory.
2006-09-11 07:05:29 +00:00
Ton Roosendaal
0a74ce2c5a Bugfix #4927
Render: Flares were not corrected yet for border render.
2006-09-10 10:35:28 +00:00
Ton Roosendaal
1b1204a171 Bugfix #4976
When using the "Load without UI" option, and having a textfile open in the
Text Editor with syntax coloring, Blender crashed. Just a missing NULL
check here.
2006-09-10 09:44:43 +00:00
Ton Roosendaal
e16ec89128 Bugfix #4973
Pose mode; the Nkey "Properties" panel, using TAB to move to next button
assigned wrong values to rotation.
2006-09-10 09:18:33 +00:00
Campbell Barton
cfc9e31f04 fixed error fix in obj import mesh splitting. 2006-09-09 13:44:27 +00:00
Ken Hughes
276e63c3f1 Silence warning messages about ‘struct Scene’ declared inside parameter list. 2006-09-08 21:12:59 +00:00
Ken Hughes
f108325904 ===Python API===
Bugfix for #4971: Scene.unlink() was incorrectly decrementing the datablock
user count whenever an object was removed from a scene, instead of only when
the object's count reached 0.  The Python code was modified to use the
existing free_and_unlink_base() function (with some modifications to allow
specifying a scene).  Also fixed a bug with the undocumented return codes
from the method; it now returns True if the object was found in the scene.
2006-09-08 18:31:09 +00:00
Campbell Barton
1b6cf3e6ee Enabled threads for rendering. 2006-09-08 16:41:35 +00:00
Campbell Barton
c5fe47fc96 Script that bakes procedural textures into an image.
uses TexMesh to get the same values as rendered procedural textures.
2006-09-08 15:28:33 +00:00
Ton Roosendaal
be4e97911d New: vertex-parent support for Lattice.
Works like vertex-parent for Mesh and Curve/Surface. Select one or three
vertices in edit mode, and use CTRL+Select to select another object.
Then press CTRL+P.
2006-09-08 12:05:36 +00:00
Roland Hess
bffe5dd087 Fixes bug #4834. The function was supposed to return a list of vertex
indices that are within the passed group. If one of the indices was not
in the group, it returned an exception, as opposed to just removing it from
the group as the documentation states.
2006-09-08 11:32:01 +00:00
Ken Hughes
67ef2c05d8 Scons update for today's earlier boolean commit. 2006-09-08 02:36:44 +00:00
Ben Batt
824fbff02c Fix to enable copying of the vertex group field for the Curve, Lattice,
Armature and Hook modifiers, and the flag field for the Mirror modifier. These
modifiers should all be copied correctly now.

This fix also means that converting modifiers to mesh with Alt-C now works
correctly (the convertmenu function copies the modifers before applying them,
so it wasn't always giving correct results for the above modifiers before).

The convertmenu function has also been changed to use DM_to_mesh instead of
converting to DispListMesh and using displistmesh_to_mesh, which means that
extra mesh data such as dverts is preserved.
2006-09-08 01:05:57 +00:00
Kent Mein
4b5badf9cb Updated boolop Makefile so that it can find various headers it needs now.
Kent
2006-09-07 18:09:55 +00:00
Ken Hughes
d731945f01 ===Tools===
Experimental boolean tool optimization: for very large meshes a significant
amount of time is spend performing linear searches of edges.  This patch
implements a "hash" table (really more of a bucket table) to narrow the
search space.

If someone should need to disable this, just remove the "#define HASH" at
the beginning of BOP_Mesh.h
2006-09-07 17:22:57 +00:00
Campbell Barton
352d8cd02d removed inverted and normalized from py scripts 2006-09-07 14:15:10 +00:00
Brecht Van Lommel
dc94345512 - Bugfix: fake user button in the texture paint panel toggled the mesh
datablock fake user.
2006-09-07 09:17:06 +00:00
Brecht Van Lommel
ec1854697b Fix for bug #4966:
Texture painting handled non-planar quads incorrectly in some cases.
2006-09-07 08:15:15 +00:00
Ben Batt
e3d1a6ea9b Two bugfixes.
My commit to fix weightpaint display (revision 1.125 of DerivedMesh.c) broke
normal recalculation for meshes which have only deform modifiers applied.
This commit fixes that by adding calls to CDDM_calc_normals in the appropriate
places.

The DM_from_template and DM_init functions checked for numVerts > 0 before
initialising the DerivedMesh's custom data layers. This was something of a
hack intended to allow DerivedMesh creation functions to initialise default
function pointers without initialising custom data layers (by passing a 0 for
the numVerts parameter). It is unneeded now that DM_init_funcs is present, and
causes memory deallocation warnings later on when the number of vertices
really is 0, so it has been removed.
2006-09-07 06:44:25 +00:00
Brecht Van Lommel
e7d6537f1c Added support for threadsafe MEM_mallocN/MEM_freeN in the guardedalloc
module itself, replacing the special MEM_mallocT/MEM_freeT functions.
Mutex locking is only enabled when threads are running.

There was no good reason to have these separate, it just led to ugly
hacks when calling functions with non-threadsafe malloc from threads.
2006-09-06 19:13:23 +00:00
Brecht Van Lommel
d444f25b28 - Fix a display glitch with float image painting and undo.
- Fix a crash with float images texture mapped onto meshes, it didn't
  always do conversion from float to byte before uploading to OpenGL.
2006-09-06 18:54:06 +00:00
Ton Roosendaal
c54e20a86a Fix for new orco-tangent render option: then also 'orco' texture
coordinates should be calculated... it wouldn't work unless you assign
a texture to a Material using 'orco' map.
2006-09-06 17:32:53 +00:00
Campbell Barton
0fa174f03e Added tangent_v and tangent space modes to python material modes.
removed polyfill from Mathutils docs
2006-09-06 13:15:05 +00:00
Ton Roosendaal
02baf30e55 New feature: imporant missing option for use of Libraries: access to to the
file path where library is read from.

In Outliner, choose new view mode "Libraries". A ctrl+click on the library
name then allows to change the file name or path. Note that when you change
the file name, nothing is being re-read or re-linked. Only after saving the
.blend file and reading it back the new library is used.

This feature allows to cleanup library usage. You can make files relative,
or reorganize a project. Just keep in mind that you cannot use this feature
to fix .blend files that link to non-existing other files. That because the
lost data is actually not read at all, so cannot be saved either.

Currently, library errors are only printed in the console... quite
important to keep track of when using Libraries.

Implementation note: this Outliner view mode can become expanded to a full
"Database view", showing something similar as SHIFT+F4 databrowse does now.
2006-09-06 09:51:30 +00:00
Ton Roosendaal
6f47e5fa84 New stuff!
- Tangent vectors now can also be derived from orcos (No UV needed)
- Normalmaps now properly support tangent space as well
  (Patch provided by Alfredo de Greef)

Full log is here:
http://www.blender3d.org/cms/New_Render_features.774.0.html
2006-09-05 13:28:59 +00:00
Ben Batt
d4616b56ec Redesigned the EdgeSplit modifier's splitting algorithm to be better
structured and more maintainable. The old algorithm could leave the mesh in an
inconsistent state during recursive calls, making it quite fragile. The new
algorithm keeps the mesh in a consistent state, and should be more robust.

This commit fixes the issues EdgeSplit was having with non-manifold meshes
(bug #4946, also reported by several other people). EdgeSplit now works
correctly with all the test files I have.

This commit also fixes the BLI_ghash_remove function to correctly decrement
gh->nentries (the number of entries in the hashtable) on a successful removal.
2006-09-05 13:15:55 +00:00
Jiri Hnidek
a0547fb6a0 - bug fix: vertex and polygon layers needn't to exist in some situations 2006-09-05 09:28:46 +00:00
Ton Roosendaal
cf76410cab Alignment of button "Auto tex space" broke with commit for vertex groups. 2006-09-05 08:38:30 +00:00
Nathan Letwory
278b242638 * add missing WITH_BF_VERSE to config files for completeness. Reported by Emanuel Greisen. 2006-09-05 08:36:42 +00:00
Campbell Barton
f17e9a6cb9 resolved invalid bounding box from the object by freeing a new meshes bounding box.
added back bound box constraint to obj import (many OBJs have values outside the defulat clipping range)

BPyRender.py was missing a flag assignment.
2006-09-05 06:45:39 +00:00
Erwin Coumans
ed064df60b fixed bug in contact manifold generation, concave and compound objects require point with deepest penetration. 2006-09-05 04:16:35 +00:00
Tom Musgrove
289105bcd9 ==blender2cal3d update==
unneeded line in the script was keeping it from showing up in the menus
2006-09-04 21:33:02 +00:00
Ton Roosendaal
6f4f4366bc Bug #4949
RVK sliders only worked up to 64 shape keys, above that internal memory
screwed up because it used a static array.
Should really be coded nicer once, until then I've moved the max to 256
and secured code that it doesn't draw sliders beyond 256.
2006-09-04 14:43:31 +00:00
Ton Roosendaal
7a3f95f31d Bug #4958
Ipo Window, Shape keys, the colored 'select buttons' were off 1.
2006-09-04 13:05:20 +00:00
Ton Roosendaal
46f384a263 Bug #4959
Ipo Window: hotkey for "Join" should be Cltr+J, no J.
2006-09-04 12:48:25 +00:00
Campbell Barton
a2b0bca7f7 removing old obj importer 2006-09-04 04:25:24 +00:00
Campbell Barton
ebde667956 rewrite of the obj importer,
The original obj importer was ok but it gradually got slower
as it had to support quirks of rare files.

This importer supports these quirks without bad workarounds and ~250 less lines.

* Moved from NMesh to Mesh
* Import smooth groups as hard edges
* Import Lines from sketchup (Thanks Wavk)
* Uses less memory
* faster (On a 70meg poser test model, benchmarked from 130sec to 41.2sec)

Not yet supported from the old importer-
* Scaling down to a bounding area
* Importing multiple obj's at once
* Using existing materials in the .blend
* Importing as a group instance.
2006-09-04 04:23:55 +00:00
Ton Roosendaal
4603f452c2 Animation department feature request: support for vertex groups in Lattices
In a quick glance: (temp image)
http://www.blender.org/bf/rt.png

Main reason is that Lattices are useful a lot for Armature deformation.
Lattices just provide much more precise and interesting control. However,
with only bone envelopes it's very hard to use.

Working with Lattice vertex groups is nearly identical to Mesh:
- on CTRL+P 'make parent' you can choose the deform option now
- In editmode, the buttons to control vertex groups are available
- In outliner you can select vertexgroups too
- Deforming Lattices with Armatures has all options as for Mesh now.

Note:
- No WeightPaint has been added yet. To compensate, the editmode
  drawing for a Lattice with vertex group shows weight values for the active
  vertex group.
- Lattice editmode doesn't undo/redo weight editing yet.
- Softbody for Lattice still uses own vertex weights

Implementation notes:
- derivedmesh weight_to_rgb() is now exported to drawobject.c
- been doing cleanups in code (order of includes, var declarations, etc)
- weightpaint button handling now is generic

I've checked on Brecht's proposal for Custom Element data;
http://mediawiki.blender.org/index.php/BlenderDev/CustomElementData
It could have been used, but that would mean the existing code for
vertexgroup handling and armature deform couldn't be re-used. I guess this
is really a later todo.
2006-09-03 12:16:14 +00:00
Chris Want
7970da34ed 'Better' cleaning for bullet (trickier to clean than most, since it is two
libraries split among many subdirectories).
2006-09-01 22:00:29 +00:00
Nathan Letwory
5d40740671 * add debug flag so debug symbols are actually created when doing a 'scons BF_DEBUG=1' 2006-09-01 13:04:33 +00:00
Nathan Letwory
ff730aa486 * change Python version from 2.3 to 2.4, since it is a requirement for Blender anyway. Thanks to kalabalik for pointing out. 2006-09-01 07:06:55 +00:00
Brecht Van Lommel
d8b5ddb745 Another struct in struct declartion in SDNA, also causing crashes.
Bug found and solved by Jens, thanks.
2006-08-31 18:03:42 +00:00