Addon for creating Constraints for Blender 2.66
I have implemented a KDTree for faster neighbour seach and to be able to generate X-Constraints/multiple Constraints. (Atm it does only compare Object Pivot/Center)
This Addon is by no mean complete and finished. It works quite well, but there are a lot of Area’s to be improved, after all i started it 5 Days ago and i’m not a programmer at all. (But i recommend every Blender user to have a look at Python So, where should i start… The Addon currently does only make one Constraint per Object, ideally there should be a System to make X-Constraints/Multiple Constraints per Object. I need to do some more research on this, and test Bullet’s performance for a couple thousands of Constraints
There should be as well a Visual Feedback System. I have to check with Sergof (probably) if there are some Plans for Visualize Constraint in the Viewport. That’s the one thing, beeing able to see Constraints. Ideally the Tools should be more Interactive/Instant Visual Feedback, like show where Constrains are gone be built. Might be possible with OpenGL.
Together with the Feedback, there are some ideas for the Grease Pencil. Atm it uses only Point location of Stroke, but there are way more possibilities… Use distance from Stroke to Influence, for Example Break Threshold/Friction. Or use Colors to determine Strong and Weak Constraints? But how does it get mapped, and how can you set it up? For this i need some Feedback. I’d like to keep it as simple and powerful as possible.
It could be as well possible to have Object Groups? Not sure about this, somehow the selection approach is pretty straight forward…
Having spent a couple of Days now with this Tool, and the Idea behind it: You could possibly extend a Constraints Generator like insane, but it get’s very fast very complicated, thinking about all the Ways of how a Scene/Objects could be analyzed together with what is the best way to intuitively set Up Constraints. The Grease Pencil, actually more of a “oh yeah, that could be fun, let’s try” thing kind of demonstrates this. The moment i realized that you can draw Constraints inside a Object… Think about
What i would need know from you is some Feedback. Is the Tool usable at all? What do you miss? What is complete BS? What would you like to see?
I hope you have some fun with it. I certainly had, the last couple of days
Update 0.3.7.4
Add Enable Deactivation/Start Deactivated
Linear/Angular Velocity
Update 0.3.7.3
Fix GPencil
Update 0.3.7
Ground Connect uses KD-Tree. Faster.
Update 0.3.5
X Constraints now makes only 1 Constraint per 2 Objects (Double Avoid).
GPencil Mode, separated GPencil Distance from Search Radius
Added Constraint Limits & Springs.
Empty Constraints Type now different Appearance for different Constraints.
Option only gets updated if Checkbox left is activated.
Update 0.3.3
GPencil uses KD-Tree now. Delete Constraints works much faster too.
Update 0.3.2
Implemented KD-Tree
Usage:
The Tool is mostly selection based.
X Constraints
Generate multiple Constraints between Objects. (Atm it does compare Object Pivot/Center)
Neighbour Limit
Max Number of Constraints for X-Constraints
Search Radius
Max Distance Objects can have to still make Constraint between.
Generate Constraints
The Main Function of the Addon is to generate Constraints between Objects, usually pre-fractured (see Cell Fracture Addon or Destructibility Editor). It uses currently a simple nearest search and doesn’t do multiple Constraints. The Way it works is, for each selected Object it looks up its nearest Mesh and makes a Constraint (if distance within Search Radius), then makes the same procedure for this nearest Mesh. This means there is some kind of logic to it, but not much.
GPencil Mode
Disabled = Edit constraints, Enabled = Edit and Generate Constraints
GPencil
Allows to Draw/Edit Constraints with Grease Pencil Strokes. Uses Search Radius and Neighbour Limit.
Can be used to draw Ropes (See Video)
Distance for GPencil
Set distance for GPencil to take effect
Constraint Selected 2 Active
Connects all the selected Object to the Active Object.
Collision Margin
Collsion Margin
Friction
Friction of Objects
Enable Deactivation/Start Deactivated
Set Rigid Body dynamics Deactivation
Breakable
Enables Breakable for Constraints
Break Threshold
Force needed to break Constraint. Like Strength/Integrity. The Value for each Object gets calculated by it’s Mass, so:
Object Break Threshold = Object Mass * Bullet Tool Break Threshold (The Reason for this is simple, heavy Objects need stronger Constraints)
Absolut
In some cases you might want to set Absolute Break Threshold Values. This will skip Mass from calculation so:
Object Break Threshold = Bullet Tool Break Threshold
Multiply
In some cases you might want to make a Setup of different Constraints (different Break Values!) or edit Objects with different Break Values. So:
Object Break Threshold = Object Break Threshold * Bullet Tool Break Threshold
Ground Connect (WIP)
Connects selected Objects to active Object Vertices (usually Ground). Currently it uses the active Objects vertices, so you need some Vertices there in order to it to work. This feature is, like anything else, not yet finished.
Remove Constraints
Removes all Constraints on selected Objects. (includes Empties made from Ground Connect)