Osc Controller for Blender - Real-Time Animation Over Osc

Guillaume Hervy in Rigging


Fixed

  • Right-click "Create OSC Mapping" on a shape key value produced bpy.context.object.key_blocks[...], a path that never resolved. It now generates bpy.data.shape_keys['Key'].key_blocks['Name'].value. Any datablock outside objects/meshes/materials now gets a proper bpy.data path instead of falling back to the active object.
  • Bone rotation in Euler mode did nothing on bones left in Blender's default Quaternion rotation mode. The mapping's mode (Euler / Quaternion) now sets the bone's rotation mode to match. Bones already in another Euler order (ZXY...) are left alone.
  • "Policy violation with top level module: pythonosc" warning in the add-on preferences: the bundled python-osc is now imported as a sub-package of the add-on.
  • Presets: a corrupt preset file no longer raises; invalid characters in a preset name are sanitised; a bad value in one field no longer aborts the whole load; entries of an unknown kind are skipped and reported.

Performance

  • Removed the forced view_layer.update() on every timer tick. On a 25k-vertex rig with 18 modifiers it cost about 57 ms per call, up to 100 times a second. Blender now evaluates once per redraw.
  • One write per target per tick, and unchanged values are not re-written. A sender streaming a constant value (e.g. TouchDesigner at 60 fps) no longer costs anything.

Changed

  • Shape keys are now Generic mappings. Add ARKit 52 Shape Keys asks for the mesh (preselecting the active object), creates one generic mapping per ARKit name that exists on it (bpy.data.shape_keys[...]) and reports how many matched. No armature involved.
  • The former Shape Key Mappings section is now Bone Rotation Mappings (armature, bone, axis, mode). Euler values are in radians; the panel says so.
  • Existing 1.x shape key mappings keep working. They appear in a Shape Key Mappings (legacy) section shown only when some exist, with a Convert to Generic button.
  • Panel split into collapsible sub-panels (Bone Rotation, Generic, Legacy, Presets). Clear All Mappings moved to the main panel and asks for confirmation.
  • Object, shape key, armature and bone fields are searchable dropdowns.
  • Print messages to console checkbox in the panel and in the add-on preferences (forces Debug logging; Blender must be launched from a terminal to see it). The panel shows the address the server is listening on.


  • Fixed: Geometry Nodes inputs on Blender 5.x (they were silently not updating). 4.2 and 5.x both supported.
  • Fixed: right-click "Create OSC Mapping" on shader nodes produced a path that never resolved.
  • New: right-click on a vector, color or rotation creates one mapping per axis (/x /y /z, /r /g /b /a).
  • New: presets — save, load and delete named sets of mappings. ARKit 52 included.
  • New: global and per-mapping remap on/off.
  • Faster: no more per-message console printing, cached mapping table, quicker server stop.
  • Safer: mappings no longer evaluate Python code.
$20

Have questions about this product?
Login to message

Details
Blender Extension Compatible Yes
Sales 20+
Published 10 months ago
Blender Version 4.2 - 5.2
Extension Type Add-on
Render Engine Used Arnold, Blender-Internal, Blender-Game-Engine, Cycles, Eevee, Freestyle, Luxrender, Mental-Ray, Octane, Vray, Yafaray
License GPL