diff options
author | Nicholas Bishop <nicholasbishop@gmail.com> | 2011-12-31 01:11:40 +0400 |
---|---|---|
committer | Nicholas Bishop <nicholasbishop@gmail.com> | 2011-12-31 01:11:40 +0400 |
commit | 289c8b575872ab49d7d16b742af0e5f56f7282eb (patch) | |
tree | 67d2bf7b8497a12a9e2f4f4c5de7c565f4c9e423 /source/blenderplayer | |
parent | 792452a7e53aa92361145e415491943bc91d8a6e (diff) |
Add remesh modifier (dual contouring).
This patch adds a new remeshing modifier. The algorithm is based on
the paper "Dual Contouring of Hermite Data", and the implementation
was contributed to Blender by Dr. Tao Ju.
The contributed code is in intern/dualcon, and was modified to compile
under gcc and work on 64-bit systems. Files not needed for Blender
were removed and a small C wrapper was added in order to interface it
with Blender. The rest of the patch is just standard modifier stuff.
Reviewed by Sergey, code review link:
http://codereview.appspot.com/5491053/
The remesh icon was contributed by Zafio:
http://blenderartists.org/forum/showthread.php?240751-Request-for-modifier-icon/page2.
Thanks to everyone in that thread for the icon proposals and
discussion.
Documentation and examples on the Blender wiki:
http://wiki.blender.org/index.php/User:Nicholasbishop/RemeshModifier
In case the history is needed for anything, check the remesh-modifier
branch of this git repository:
https://gitorious.org/~nicholasbishop/blenderprojects/nicholasbishop-blender
Diffstat (limited to 'source/blenderplayer')
-rw-r--r-- | source/blenderplayer/bad_level_call_stubs/stubs.c | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/source/blenderplayer/bad_level_call_stubs/stubs.c b/source/blenderplayer/bad_level_call_stubs/stubs.c index 0ec41c4d1c1..75d1f182189 100644 --- a/source/blenderplayer/bad_level_call_stubs/stubs.c +++ b/source/blenderplayer/bad_level_call_stubs/stubs.c @@ -464,6 +464,17 @@ void BPY_DECREF(void *pyob_ptr) {} void BPY_pyconstraint_exec(struct bPythonConstraint *con, struct bConstraintOb *cob, struct ListBase *targets) {} void macro_wrapper(struct wmOperatorType *ot, void *userdata) {} ; +/* intern/dualcon */ +struct DualConMesh; +struct DualConMesh *dualcon(const struct DualConMesh *input_mesh, + void *create_mesh, + int flags, + int mode, + float threshold, + float hermite_num, + float scale, + int depth) {return 0;} + char blender_path[] = ""; |