Conversation
korman/properties/modifiers/water.py
Outdated
There was a problem hiding this comment.
I've been migrating toward having these lists display the actual name of the object or "[Empty]" if unset. IMO, it makes things less tedious.
|
Also, we should probably issue a porting message that buoys only function on MOUL. |
Thinking a bit more about edge cases, we probably also want something that checks that the buoy is a physical dynamic object (although the engine should ignore any non-physical buoys) |
|
I think this modifier should call the physics exporter - it's an idempotent process so no worries about stepping all over anything. |
Co-authored-by: Adam Johnson <AdamJohnso@gmail.com>
| description="Object that float on water", | ||
| options=set(), | ||
| type=bpy.types.Object, | ||
| poll=idprops.poll_dynamic_objects) |
There was a problem hiding this comment.
While this is correct from an implementation standpoint, I feel like it's putting too much of a requirement on the user on knowing how buoys work under the hood. Instead, I think we should call the physics exporter in the export fxn and place the resulting physical in the dynamic group... exporter.physics.generate_physical(bo, so, member_group="kGroupDynamic") This poll fxn should probably just check for mesh objects. Further, we should alert in the UI (and maybe the log too?) if the collision mod is on with dynamic unticked. Alternatively, add instrumentation to the physics exporter to force buoys dynamic or a way to force the member_group supplied by the exporter.
Adds a Buoy modifier that can be attached to a waveset. That modifier contains a list of objects that should float on top of the waveset.
@Hoikas It seems to me like it would be best to have the list of buoys directly reference the objects, but everywhere else I see these sorts of lists in korman modifiers there's always a class in the middle (
PlasmaBuoyObjectin this case)