I’m proud to present PistonPusher.
PistonPusher is the result of my efforts to standardize a niche in asset creation: Pistons.
I’d kindly invite you to look here if interested:
Pistonpusher is an add-on that can quickly rig pistons/actuators in a special way. There are also features to help integrating them. These pistons are special in the sense that they are far more flexible than pistons made with bare minimum solutions.
- Pistons can easily be made longer and shorter. In both retracted/extended states. This behavior is disabled with a single click.
- Pistons can exist out of any number of objects.
- Individual elements can rotate freely, think of the rod, mounts and cylinder themselves.
- (inverted) telescopic pistons are supported.
- Pistons are easily removed from a scene.
- Easy to place and connect to a model/armature.
- Custom object and collection management system to keep order among all these objects.(No duplicate names if you took the time to name objects)
- Instances of a type are derived from the first instance that was placed meaning you can edit multiple pistons in a target scene easily.
- Materials can be added beforehand.
- Very flexible.
The add-on was brought to life to make concepting easier. I’m not very good at drawing and I prefer to model it and get an idea of what it could look like. Where it really shines is if you want to take concept art a notch up. All together, it’s very easy to get things animated with these tools. So there’s some utility outside the scope of pistonpusher.
There’s potential for concept artists but also animators. They animate quite well, joints can be included. Pistonpusher does most of the leg-work and offers a solid way to re-use your pistons.
Pistonpusher is really a dedicated solution for pistons. It’s not a complete rigkit. There are tools that provide the option to quickly get moving footage but you’re by no means forced to use these and can simply use the add-on to support your own methods/workflows.
Creation systems. Easily model and rig various types of pistons. Adding parts is also easy.
The ability to stop a piston from stretching infinitely long. Pistons can stretch in both extended and retracted states. This behavior is easily disabled/enabled with the (un)lock length anchor operator.
Easily remove pistons from a scene, instances are counted and re-named automatically if need be.
Snap selected to active. Can ignore rotation/scale/location. Can auto-constrain to the active object or snap single objects to the 3d cursor, even if the object is parented. It is also used to place instances.
Set child-of tool. This tool easily sets child-of constraints. Even if such a constraint already exists. Can target armature bones too.
Create linked duplicate array, works with empties too.
Multi-place: Place multiple instances easily, works on selected objects or pistonpusher radial arrays.
Track to and apply - Crude align tool that simply adds and applies track to constraints. Can be used to quickly align decals that are already on the same plane, but have different rotations.
Reset hooks. This operator can reset hooks on selected objects, or all if no objects were selected. Optionally you can also apply scale and rotation. This is sometimes useful when you’re creating a piston with a template that heavily relies on hooks.
The ability to toggle viewport visibility on/off for all subd modifiers.
Select tool that can select objects based on collections and empties based on names.
Overlays designed to help troubleshoot issues if your piston does not behave as expected.
Asset/Collection management. Easily identify which objects belong to which piston.
If you have any questions, ask away!