Commit Graph

214 Commits

Author SHA1 Message Date
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
40b0de4506 Fixed a compile error under msvc. 2008-05-27 18:40:33 +00:00
2a0a999a71 Added bvh nearest neighbour for nearest surface shrinkwrap 2008-05-27 18:32:23 +00:00
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
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
859a05864c I'm considering using bvhtree for shrinkwrap but the build was considerable slower than kdtree
as so i've made some improvements

So basicly theres no shrinkwrap improvements for now...
2008-05-14 18:25:23 +00:00
53e08925b5 Merge from trunk
svn merge -r 14692:14760 https://svn.blender.org/svnroot/bf-blender/trunk/blender
2008-05-09 11:57:52 +00:00
50acbe29d1 Normal projection:
+added option to remove faces where all vertices got unprojected

Nearest surface point
+15% faster closest point on point-tri function
(archived by projecting the point on tri-plane and solving the problem on 2D)
(its still using bruteforce on triangles.. I'll add the right data structure later)
2008-05-07 12:45:02 +00:00
2b5432e6bb Added control over distance to kept form target mesh
Quad bug was fixed by splitting the quads that are feed to RayTree
2008-05-02 22:09:01 +00:00
9026559ded +normal projection optimized with RayTree (RE_raytrace.h)
+control for normal projection direction (default,inverted,both)

There are some bugs on projection over quads.. it seems to work 100% on fully triangulized meshs
2008-05-02 00:16:48 +00:00
64f5d1bdf3 Nearest-vertex mode optimized with kdtrees
currently uses the kdtree code avaible on blender
2008-05-01 01:00:01 +00:00
29f0f74b05 Changed a bit of code structure to make method optimization easier 2008-04-30 17:55:26 +00:00
928b676b99 Implemented shrink modes are now:
+ Nearest surface point
+ Normal projection
+ Nearest vertex (gives similar results to nearest surface if the target mesh has many vertexs and is a lot faster to calculate)
^^ all bruteforce calculation for now

+ fixed matrix order multiplication
+ request for CD_MDEDEFORMVERT
2008-04-27 19:29:40 +00:00
a0add959ff Shrinkwrap skeleton code
+vertex weights supported
+target object now saves to file: load/save works :)

for now simple moves objects vertexs to the nearest vertexs on target object
(so that I can test if its working correctly with the modifier API)
2008-04-25 18:22:20 +00:00