Commit Graph

713 Commits

Author SHA1 Message Date
Campbell Barton
828eba4842 Loop in parents cant happen anymore, better dealing with segments with more then 4 children. print timing stats. 2007-11-11 21:14:44 +00:00
Campbell Barton
3a90b35db8 Undoing 'undo' fix 12365, it didn't work the same on mac's, Ton would like to fix the bug himself.
Tree From Curve,
- report error when nurbs or poly curves are used.
- don't throw errors when >4 branch's per segment are used. also try deal with this better. though no nice solution exists.
- default speed is 10x slower then before.
2007-11-11 15:18:53 +00:00
Campbell Barton
b7d3a8786a Rewrote the part that converted blenders curves into branches,
Was converting into a mesh and then doing location checks, to figure out what the radius should be and then interpolating. this was the slowest part of the script and it made a mesh every time.

Now use blenders bezier interpolation function and calculate points like blender does.

fixed a driver syntax error for the Z axis (typo)
2007-11-10 20:00:15 +00:00
Campbell Barton
250d473180 better segment collapsing (check for radius/angle difference)
remove vert groups from existing mesh when its being reused
2007-11-09 23:06:31 +00:00
Campbell Barton
57edc9f480 branch cap ends, UV scale options, Automatic update option added. as well as some bugs fixed. 2007-11-09 16:51:24 +00:00
Campbell Barton
42a2b662d3 saving and loading of settings per tree, also added a way to get unique animation using object locations in drivers 2007-11-09 12:19:10 +00:00
Campbell Barton
ddf2336084 curve2tree - animation settings - speed and magnitude
Python api - texture.evaluate can now accept tuples of numbers as well as vectors
2007-11-09 10:29:19 +00:00
Campbell Barton
95661081f9 tree branch bones can now animate using drivers that reference textures, so animation can be controlled from clouds, noise settings after being created. still need to add user preferences for animation speed and magnitude. 2007-11-09 01:35:00 +00:00
Campbell Barton
8e377cfe75 Branch's now have weights assigned to the mesh and an armature modifier applied so the bones effect the tree. 2007-11-09 00:05:15 +00:00
Campbell Barton
0da704af0d automatic armature generation follows branch's 2007-11-08 22:13:40 +00:00
Campbell Barton
3c3256c6f1 bug fix with trimming intersecting branches, added setting for branch joint smoothing. some speedups 2007-11-08 20:25:56 +00:00
Campbell Barton
4482f3b2e8 user interface added for 'Tree from curves' tool.
renamed Filter to Blur to Filter for #define as well
2007-11-08 15:41:11 +00:00
Campbell Barton
3275821759 (work in progress commit) - tree wizard, makes a subsurfed skin from curves. also adds UV's (and soon bones)
needs a user interface.
2007-11-07 21:39:23 +00:00
Campbell Barton
f25629932a ==Unfolder python script update==
Patch from Matthew Chadwick (celeriac) [#7603] fix for bug#7520
Replaced overlap detection code with code using Geometry.LineIntersect2D
2007-10-24 09:02:58 +00:00
Joshua Leung
6422a740c2 == Constraints System - Recode 2 ==
Once again, I've recoded the constraints system. This time, the goals were:
* To make it more future-proof by 'modernising' the coding style. The long functions filled with switch statements, have given way to function-pointers with smaller functions for specific purposes.
* To make it support constraints which use multiple targets more readily that it did. In the past, it was assumed that constraints could only have at most one target.

As a result, a lot of code has been shuffled around, and modified. Also, the subversion number has been bumped up.

Known issues:
* PyConstraints, which were the main motivation for supporting multiple-targets, are currently broken. There are some bimport() error that keeps causing problems. I've also temporarily removed the doDriver support, although it may return in another form soon. 
* Constraints BPy-API is currently has a few features which currently don't work yet
* Outliner currently only displays the names of the constraints instead of the fancy subtarget/target/constraint-name display it used to do. What gets displayed here needs further investigation, as the old way was certainly not that great (and is not compatible with the new system too)
2007-10-21 23:00:29 +00:00
Campbell Barton
8bcfafa3d9 changed default nan_definitions.mk to use python 2.5 for linux (ai64 default was py 2.2 which probably wont even compile anymore)
pose.c - left a print here
export obj would ask about file overwriting twice.
2007-10-21 17:38:17 +00:00
Campbell Barton
d7fa5ab168 python console, removed word wrap - was far too slow
when console_autoexec.py wasnt present, the standard blender import wasnt executed.
2007-10-20 19:47:19 +00:00
Campbell Barton
e9c2aa691e updated pyconstraint template from nathan (cessen) which exposed some
bugs with pyconstraints, also added a missing decref from python (wasnt freeing the return value from the settings 
button).
2007-10-15 15:28:09 +00:00
Campbell Barton
1fde6d4570 Made the remaining UV py scripts work with editmesh now.
DrawShadow option didnt check the final derived mesh had CD_MTFACE's can would crash when enabled with mirror modifier.
2007-09-24 09:40:09 +00:00
Campbell Barton
aee06ac0d0 added an active face for the mesh editmode and normal mesh - this is needed because the TFace flag was not always easy to access from editmode.
using the last selected face was almost good enough however when selecting verts and edges the last selected face would become inactive and the space image would flicker about too much.
The active face is used for getting the space image at the moment and keeps scripts that use this flag working also.

This has 2 commands to get and set, so the variable is not accessed directly.

all "UV Calculate" scripts work now

last commit crashed when in solid draw mode, it seems subsurf modifier is ignoring the displayMask since MTFACE is available. just made it do a null check for now.

uvcalc_follow_active_coords.py - should be done inC and put in the snap menu.
2007-09-22 17:54:13 +00:00
Campbell Barton
2f46df39b4 meshes with no faces would raise an eror when setting their .faceUV to true. 2007-09-19 09:15:16 +00:00
Campbell Barton
722fe627bc udates from stable 2007-09-11 10:22:00 +00:00
Campbell Barton
64019f709b update from stable 2007-09-08 12:09:51 +00:00
Campbell Barton
d18d0aaabb fbx update from stable (parent/child hierarchy isnt flattened anymore) 2007-09-08 08:49:56 +00:00
Campbell Barton
40c0b37a2a update from mingus 2007-09-07 23:33:30 +00:00
Campbell Barton
f85cd06873 When Optimize keyframes was enabled, the comma's wernt written in the right place, oddly enough this still loaded in the FBX SDK. 2007-09-07 00:36:56 +00:00
Campbell Barton
9eb46e47fc constant name was wrong. possibly changed between blender versions 2007-09-05 01:02:03 +00:00
Campbell Barton
6c0893947b * dupli-objects were not exporting (animated dipli's and armatures that are dupli's still dont work)
* added support for exporting blenders groups (will export groups that any of the selected objects are apart of)
2007-08-30 17:16:09 +00:00
Campbell Barton
f386120411 sync with stable 2007-08-29 19:53:49 +00:00
Campbell Barton
c96cde42bd Objects can now be animated (camera paths, lamps etc)
However meshes that use an armature cant use object animation.

faster exporting for non modifier applied, armature meshes (transform all verts using wrapped C func)
2007-08-29 09:50:08 +00:00
Campbell Barton
1d43cae37b * added a bindpose (3ds max was complaining)
* export materials emit value
2007-08-29 05:42:39 +00:00
Campbell Barton
99493ef6d9 * added some missing tooltips
* made name string cleaning function allow chars ,.()[]{} in fbx model names
* clamped export lamp intensity to 200
* each mesh only links to the image-textures it uses. (before it linked to ALL textures)
* added support for AllSame mapping, this means when a material or texture only uses one, a single mapping index can be given rather then a big list with the same value in it.
* improved material and texture mapping method
2007-08-29 03:56:22 +00:00
Campbell Barton
18478d1e62 scaling the model by 10 by default didnt work for some people, scaling 1.0 by default for now. 2007-08-29 00:10:23 +00:00
Kent Mein
4e2143f639 This commit fixes up a bunch of svn properties to hopefully make things a little nicer for everyone.
Patch provied by gsrb3d

bug tracker #7061

Kent
2007-08-28 10:07:08 +00:00
Campbell Barton
2b8a8b0508 left in test, should not be working when tired. 2007-08-28 08:54:29 +00:00
Campbell Barton
3049b89e36 thaught Id run the colbits test but that part wasnt running, tested and error fixed now. 2007-08-28 08:30:37 +00:00
Campbell Barton
a20071a195 * texture indicies were exported incorrectly
* copy textures didnt work
* Export blenders ClampX/Y settings
* removed unneeded imports
2007-08-28 05:32:00 +00:00
Campbell Barton
13ad2de90a Fixes
* material indicies were incorrectly exported
* export object materials using colbits
* scaled armatures would scale bones twice
* scenes with no world would raise an error

Additions
* added options for global scaling and rotating, defaults will load correctly in MotionBuilder
* modifiers can be applied to skinned meshes, the armatures are set to their rest positions for python to get the un-deformed mesh. This makes exporting a mesh with subsurf and armature applied work as expected.
* meshes with parent bones are exported as weighted meshes.
* use lamp modes for cast light and cast shadow FBX settings.
* batch exporter, scenes or groups can be exporter to a file each.
* help button to load the wiki exporter page.
2007-08-28 02:11:49 +00:00
Campbell Barton
ba6f02fb29 cleanup and fixed more problems with namespace collisions (should be all solved by name) 2007-08-26 01:35:03 +00:00
Campbell Barton
0cfe5527b0 fix from stable - if modules cant be imported- popup an error rather then nasty python message 2007-08-24 21:52:56 +00:00
Campbell Barton
a28bd3adb1 armature animation is not messed up when the mesh and armature objects have transformation.
python 2.4+ without any modules should work.
python 2.3 should work now also (need to import the sets module).
2007-08-24 12:13:34 +00:00
Campbell Barton
bba7506598 own dumb mistake missing a return 2007-08-24 11:57:26 +00:00
Campbell Barton
45cbafe08d fbx export update
* normalize bone weights (deep exploration 5 assumed they were normalized and does crazy stuff otherwise)
* fixed some mistakes in last commit.
2007-08-24 07:07:18 +00:00
Campbell Barton
f51acfb724 FBX export update
* added a user interface
* added support for exporting multiple actions as FBX's 'Takes'
* added support for one armature effecting multiple meshes
* added support for multiple armatures (bone names wont have namespace collisions)
2007-08-23 16:34:15 +00:00
Campbell Barton
567e634253 obj export had the overwrite confirmation commented out from testing, UIBlock needed to clear the events so tooltips show. 2007-08-21 19:37:03 +00:00
Campbell Barton
798001556a FBX armature + mesh + weights works now.
So it can be used to export walk cycles etc.
Animated armatures also work (import BVH and export as FBX for instance)

Pose data is transformation is key'd on every frame at the moment, so IK's and constraints are applied but blenders keyframes are not used.

at the moment one armature applied multiple meshes wont work properly and armatures cant have transformation.
2007-08-20 23:38:39 +00:00
Campbell Barton
4ef547a79d path seperator check was wrong 2007-08-19 23:49:48 +00:00
Joshua Leung
982d45162b == PyConstraints ==
I've added the ability for PyConstraints to define a function (doDriver) that is able to directly modify values of the owner/target, so that certain setups can be created reliably. Users should take note that this is against the basic concept of what a constraint does, and that under no circumstances may they set the values of any variables controlling the transforms. For more details, check out the information in the PyConstraint template script.

I've also updated PyConstraints to be aware of geometry targets. The script template has been updated with this information.
2007-08-18 06:17:50 +00:00
Campbell Barton
7cf316a037 initial support for baked bone animation - works for simple tests 2007-08-15 00:48:33 +00:00
Campbell Barton
fb985daf01 move mesh_vgroup_average to the weightpaint menu and rename. also added an option to add the active weight group or all groups.
- fix from 2.44 so makeDisplayList updates 3d text
2007-08-12 06:14:33 +00:00