Commit Graph

2444 Commits

Author SHA1 Message Date
Andre Susano Pinto
ac898d39ca Changed the style on shrinkwrapModifier_copyData.
Genscher made me do it the same way that the other 10 modifiers do.
The reason why I initially choosed memcpy was so that if anyone added
parameters on DNA there would be no need to update _copyData, unless
if it was a feature related to memory (eg.: point cache)
2008-06-23 16:23:26 +00:00
Andre Susano Pinto
0f8697b9d2 Fixed bug.. on shrinkwrap_copyModifier 2008-06-23 15:48:03 +00:00
Andre Susano Pinto
e426c7ce29 Added shrinkwrapModifier_isDisabled api function 2008-06-23 14:12:22 +00:00
Andre Susano Pinto
ffbe42129e svn merge -r 15202:15292 https://svn.blender.org/svnroot/bf-blender/trunk/blender 2008-06-20 21:36:15 +00:00
Andre Susano Pinto
824eac5095 Added cut-plane option.
Its now possible to project 2 planes over a model and get a cloth..
Tought it still has a few issues.. related with distance to kept from mesh.
2008-06-20 21:10:16 +00:00
Andre Susano Pinto
91f8ad8398 Added merge option to shrinkwrap when using projection mode (bruteforce for now)
Changed code to remove faces (now quad faces that got one vertice projected are turned on tri)

Merge option is still not very usefull since shrinkwrap does not yet moves unprojected vertices
2008-06-17 19:00:21 +00:00
Andre Susano Pinto
39d35edbe6 Merge from trunk
svn merge -r 15104:15202 https://svn.blender.org/svnroot/bf-blender/trunk/blender
2008-06-11 22:53:52 +00:00
Andre Susano Pinto
7265e9e855 Merge from trunk
svn merge -r 15064:15104 https://svn.blender.org/svnroot/bf-blender/trunk/blender
2008-06-03 19:27:46 +00:00
Daniel Genrich
0c0c43f620 Collision commit code cleanup for nicer compile 2008-06-03 19:06:54 +00:00
Daniel Genrich
c84c0201e1 Collisions: Commit of collision cleanup, put kdop-bvh structure into BLI_kdopbvh (just like kdtree interface now), huge speedup for selfcollisions, also better normal collisions (merge from cloth branch) 2008-06-03 18:48:54 +00:00
Joshua Leung
62ca0e07da A few compiler warning fixes. Those in BME_customdata.c were more serious. 2008-06-03 10:04:42 +00:00
Geoffrey Bantle
8a5f362192 -> More Bmesh Custom Data stuff
Some more Bmesh custom data functions and
structures. This still does not do anything
yet because the various conversion functions
don't bother making use of the new custom data
functions. Hooking them up should be fairly
simple though.

Also note that the custom data code is mostly
copy/pasted from the existing custom data
functions for editmode with a few modifications.
Duplicating code like this isn't nice, but I
felt it was better to keep things for Bmesh
'standalone' for the moment and take only what is
immediatly needed instead of creating
a tangle of interdependant code.
2008-06-02 20:52:40 +00:00
Joshua Leung
86a0afb829 Compiler warning fixes (unused vars).
Notes:
- edgehash.c still has some weirdo code causing warnings on lines 80 and 117
i.e.  if (v1<v0) v0 ^= v1 ^= v0 ^= v1;
- material.c (in pyapi) apparently doesn't seem to be making use of some functions for glossy stuff
2008-06-02 01:02:08 +00:00
Geoffrey Bantle
85e77e53ef -> Fix for last few commits
New memory allocator broke compilation on
GCC/Linux. Fixed
2008-06-01 18:43:22 +00:00
Geoffrey Bantle
33321d13d3 -> Beginning of Custom Data support for BMesh
Now that new allocator is in place, Custom Data
can be effeciently added to BMesh. The plan is to
make all data not directly related to topology
Custom Data and allow callers to decide precisely
what information a mesh should have in order to
make the best tradeoff between memory usage/speed.

Right now not much to look at, just some structure
definitions and commented out code. More to come
soon...
2008-06-01 18:02:29 +00:00
Geoffrey Bantle
07b1608fbe -> New memory allocator for Bmesh
Added a new pooling allocator for Bmesh based upon
the pool allocator availible in the Boost C++ library
as described here:

http://www.boost.org/doc/libs/1_34_0/libs/pool/doc/concepts.html

Each pool allocates elements of a fixed size, so every
element type in a mesh gets its own pool. For instance
verts occupy a different pool than edges. Each pool
is comprised of multiple arrays of a fixed size and allocating
/freeing elements is simple as removing or adding a head 
to a linked list. Since the list of free elements is interleaved
throughout the unused space in the arrays, the overhead
for storing the free list is only 1 pointer total per pool.
	
This makes building/destroying bmesh structures much faster
and saves quite a bit of memory as well.
2008-06-01 17:15:03 +00:00
Campbell Barton
652ee1e31b functionality fix
Originally the only way to run scripts automatically was with scriptlinks, which could be disabled for loading untrusted blend files.
Since then PyDrivers and PyConstraints would run even when G.f&G_DOSCRIPTLINKS was disabled.
Gensher, Theeth and Ianwill agree its acceptable to reuse the flag for other areas python runs automatically.

PyNodes still have no way to be disabled, (todo before 2.46a)
2008-06-01 16:13:04 +00:00
Peter Schlaile
8937989a91 == FFMPEG ==
Shouldn't crash any more in the case that
a) invalid video options were selected
and
b) audio multiplexing was active

[#13311] video_stream NULL when writing ffmpeg

(did'nt crash for me though, but added extra protection :) )
2008-06-01 14:37:09 +00:00
Geoffrey Bantle
26cb5fa0db -Fix for bug #13067
Bevel tool was hanging on certain geometry where the edge
to be beveled was shared by two faces that had more than
one edge in common and caller was not checking return
status of Bmesh eulers. Fixed.
2008-06-01 01:56:35 +00:00
Daniel Genrich
74903b77f4 Merging revisions 15020-15073 of https://svn.blender.org/svnroot/bf-blender/trunk/blender 2008-05-31 21:23:57 +00:00
Andre Susano Pinto
7f3928652e Added culling on normal projection.
Now renderdemon is happy ;)
and now shrinkwrap can be used for bulging :)
2008-05-31 01:25:24 +00:00
Andre Susano Pinto
318606addf Merge from trunk
svn merge  -r 14954:15064 https://svn.blender.org/svnroot/bf-blender/trunk/blender
2008-05-30 20:33:33 +00:00
Daniel Genrich
f1d54f892b -= Collisions =-
Getting some weird results on moving fast edges. This is a backup commit, will try another thing
2008-05-29 14:23:08 +00:00
Brecht Van Lommel
04067c1833 Fix for bug #13224: vertex parenting didn't work correct with
multiple unconnected curves.
2008-05-28 18:11:45 +00:00
Daniel Genrich
6a802f63b6 Merging revisions 14946-15020 of https://svn.blender.org/svnroot/bf-blender/trunk/blender 2008-05-27 23:15:08 +00:00
Daniel Genrich
ed42c9a676 -= Collisions -=
1. Test for fast moving edges
2008-05-27 22:46:57 +00:00
Andre Susano Pinto
07e80dc265 Enabled EditMode on shrinkwrap modifier 2008-05-27 22:39:00 +00:00
Andre Susano Pinto
40b0de4506 Fixed a compile error under msvc. 2008-05-27 18:40:33 +00:00
Andre Susano Pinto
2a0a999a71 Added bvh nearest neighbour for nearest surface shrinkwrap 2008-05-27 18:32:23 +00:00
Brecht Van Lommel
83a7fbf499 Another fix for bug #11140: explode modifier was still using more
memory than needed.
2008-05-27 15:36:36 +00:00
Andre Susano Pinto
4383743ace Fixed some compile erros under msvc (thanks lguillaume)
Fixed object dependency (thanks ZanQdo for pointing it out)
Make some code cleaner
(preparing for adding bvh trees on nearest surface)
2008-05-26 21:57:53 +00:00
Campbell Barton
3b4873250e when cyclic is enabled the knots would always be generated with uniform nurbs but after, cyclic nurbs would be incorrect if the bezier or endpoint u/v was set.
also replaced some numbers with constants.
2008-05-26 12:50:00 +00:00
Daniel Genrich
391c7615d1 -= Collisions =-
1. fix for collisions (were working better with selfcolls enabled, now generally better)
2008-05-26 10:36:14 +00:00
Campbell Barton
0a90a52442 * The displist would be uninitialized when nurbs bezieru/v was set and the order wasnt 3 or 4. add a function that checks nurbs can produce a valid line. check_valid_nurb_u/v
* when check_valid_nurb_u/v fails, no curve is allocated or drawn.
* knotsu/v could be NULL but some functions didn't check for this, make sure this is checked for everywhere.
* The interface didnt change check the order when the bezier u/v flag was set, added functions clamp_nurb_order_u/v that takes into accound the number of points and the bezier u/v flag.
2008-05-26 09:50:46 +00:00
Daniel Genrich
cb378cbceb -= Cloth =-
1. Fix selfcollisions (reported by nudelZ)
2008-05-26 09:39:32 +00:00
Andre Susano Pinto
ad2fecf266 Added BVH nearest neighbour code, for now only works in 6-dop and finds the node with the nearest bounding volume.
I'll work on making it more generic.
So far it querys faster than kdtree, but building the tree is slower.
And bvhtree NN uses an heuristic based on the last match.

Shrinkwrap (OBCube)24578 over (OBSuzanne)31658
kdtree
build: 30.000000ms
query: 1360.000000ms

bvhtree
build: 140.000000ms
query: 490.000000ms

Shrinkwrap now uses bvhtree (binary tree, 6dop) for nearest vertex.
2008-05-25 15:43:18 +00:00
Andre Susano Pinto
cc98ef4012 Merge from trunk
svn merge -r 14843:14954 https://svn.blender.org/svnroot/bf-blender/trunk/blender
2008-05-25 13:53:58 +00:00
Daniel Genrich
fcea4573dd -== Cloth / kdop ==-
1. Bugfix for crash on enabling cloth on object
2. Correcting kdop nth element sorting function (fix provided by André Pinto)
2008-05-25 13:15:54 +00:00
Daniel Genrich
10dde9b7d7 Merging revisions 14838-14945 of https://svn.blender.org/svnroot/bf-blender/trunk/blender 2008-05-23 20:36:05 +00:00
Daniel Genrich
4bf01e8162 Commit of selfcollisions using new kdop design. Should result in nice speedup. 2008-05-23 20:20:14 +00:00
Campbell Barton
b46bdbcd0f fix for "[#11004] Adding ram sound and alt-U causes ram to look like HD sound and can lead to crash"
Missing call sound_initialize_sounds, cant be added BKE_reset_undo since its in blenderkernel.
2008-05-23 09:58:33 +00:00
Brecht Van Lommel
7bae2af95c Fix for bug #11698: mesh deform modifier not working on extruded curves.
The modifier work on the tesselated result rather than the curve itself.
2008-05-22 17:06:46 +00:00
Brecht Van Lommel
abb247ac35 Fix for bug #11743: incorrect transformation for particle group
visualization DupliGroup option.
2008-05-22 14:08:13 +00:00
Brecht Van Lommel
be1cb6e5e2 Fix for bug #11758: crash cancelling hair softbody bake.
Fix for bug #11966: crash in hair softbody with hair amount 0.
2008-05-22 13:58:16 +00:00
Campbell Barton
c526b1b2df memory corruption error fix when changing orderU/Vs with curves, this could crash blender or make odd display lists.
the problem was that the buttons would use the first nurb if there was no 'lastnu', but the makeknots function only checked for lastnu. this meant the knots would not get re-allocated on 
values would be written outside the array.
2008-05-18 18:44:02 +00:00
Ton Roosendaal
055dc10c14 Last part of the svn release commit. It's now in freeze... unless? 2008-05-18 18:05:55 +00:00
Ton Roosendaal
3effe8060d Fix in mball last May 15th causes a hang (eternal loop) in mball.c,
a division by zero was not handled

(weird though, only shows in OSX PPC. no optimize, debug build.)
2008-05-18 13:57:47 +00:00
Campbell Barton
d3f7fba472 fix for [#11691] No checks in curve code for "Number of points <= Order U"
added checks for a nurbes orderu being larger then pntsu.
This has the same effect as the curve having only 1 point. (its display list is not generated 
but it is still added but a dummy displist with zero points is made)
memcpy was also being used where the memory overlaped (probably worked in most cases but this is incorrect and valgrind complained), use memmove 
instead.
2008-05-17 22:37:34 +00:00
Joshua Leung
bb6c67cc73 Bugfix #11717:
Rendering (Internal/OGL) would crash when StampInfo was on and adding info about the active camera, if there was no camera in the scene.
2008-05-17 00:35:30 +00:00
Willian Padovani Germano
bbe32118ef == Nodes ==
- "Memoryblock free: attempt to free NULL pointer" messages related to the Material node (Add->Input->Material). Deleting it and quitting Blender would bring 2 or 3 of these warnings. Trivial fix (check if NULL) in blenkernel/intern/node.c, though Nodes devs may be interested. Found while testing to fix the following bug:

== PyNodes ==

- Bug #11715 reported by Alexanter Feterman:

http://projects.blender.org/tracker/?func=detail&atid=125&aid=11715&group_id=9

Adding a Dynamic node and setting it to a pynode script would crash Blender if no Material Node (MatNode) was present.

Thanks Alexander for reporting and Brecht for assigning it to me.
2008-05-16 20:57:06 +00:00