Changelog

Get new releases updates with Atom or JSON Feed.

2.0.55

minor fixes

  • Fixed When opening the examples panel on windows, there are no more spawned extra windows (which happened due to child processes downloading the thumbnails).
  • Fixed When using the cursor to drive an object, the cursor would be clamped to the viewer bounds. This is not the case anymore.

2.0.54

autoplay for embedded scenes

  • New An embedded scene can start playing as soon as it loads: pass autoplay: true to polygonAppInit next to the scene data. Without it the scene sits on frame 0, which makes a solver or an OnTick actor look like a still image on a page with no transport controls.
  • Fixed The example pages on polygonjs.com no longer show the default scene’s box sitting in the middle of the example. The box is bypassed, not deleted, so un-bypassing it brings it back.

2.0.53

Cursor-driven physics, render/Combine, shadow fixes

  • Breaking render/Add, render/Multiply and render/Composite are replaced by one render/Combine, whose operation param is ADD, MULTIPLY or OVER. Scenes using the old nodes need the node swapped by hand.
  • Breaking mat/MeshInstance is gone. Instances are drawn by mat/MeshBuilder with a code/Instance node inside, which is the graph geo/Instance now builds for you.
  • New A rigid body can be kinematic, driven from an actor with code/SetObjectPosition or code/SetObjectAttribute. It pushes the dynamic bodies around, so you can shove a simulation with the cursor.
  • New Cursor nodes: code/Cursor, code/CursorRay, code/Ray, code/Plane and code/RayPlaneIntersect, to turn a pointer into a position in the scene.
  • New compute/Subnet and compute/PolyNode: group compute nodes together, and save the group as a node you can reuse.
  • New render/Combine works on WebGL2. Where there are no compute shaders it runs the same operation as a fullscreen pass, and the image is the same.
  • New An embedded scene can be unmounted and remounted from JavaScript, so a page can put a scene away and bring it back.
  • New New example: many rigid bodies you can push around with the cursor.
  • New The command line downloads the SDK without a login.

2.0.49

Decimate, embedded text fonts, error propagation

  • Breaking code/Negate, code/Complement, code/Pow and code/Normalize are merged into the node code/MathUnary. Typing the old name in the tab menu still creates it, but scenes saved with the old node types will not load. We don’t have a migration system yet, so this may require manual update in the scene file for now.
  • New geo/Decimate: reduce a mesh’s triangle count, either as a fraction of the input or to an absolute triangle count, with boundary locking, small-component pruning and a maximum-error budget.
  • New Chrome-less fullscreen viewer. Toggle it in the viewer and save the scene, and it reopens with no editor UI around it.
  • Improved geo/Text embeds its font, so text renders with no external font file to ship or find.
  • Improved Errors travel through the graph: a node whose input is errored reports it, referencing an errored node is itself an error, and the network panel tells you when you are inside one.
  • Improved The web editor reports its loading progress and fetches a gzipped payload, so the first frame arrives sooner.
  • Improved Network panel: improve snapping.
  • Improved Normals are computed whenever a material needs them, including through geo/CageDeform. No more black shading on deformed geometry.
  • Improved geo/HexaPlane now faces +Y by default.
  • Fixed Nodes inside a bypassed subnet no longer cook.
  • Fixed geo/PLYExporter and geo/VolumeExporter preserve the object’s transform.
  • Fixed Object transforms are no longer read before they are up to date, which could place geometry a frame behind.
Also in this release
  • geo/Text’s secondary parameters are simplified.
  • Dropdown styling and window corners are consistent across the editor.

2.0.46

Drag-to-connect network panel, voxel surface offsets

  • New Drag a node over another and hold for a moment, they connect, with no aiming at a connector.
  • New Shake a node (or a whole selection) mid-drag to pull it out of the graph: the boundary edges drop and the chain heals behind it, so a → x → c becomes a → c.
  • New surfaceOffset on geo/MeshToVoxel and geo/VoxelCreate: shift the iso-surface the voxels are built from: negative erodes so the voxels sit inside the real surface, positive dilates for a thicker shell or to close thin features.
  • Improved Connecting nodes no longer needs a precise cursor: connectors snap from a distance, the wire you are dragging previews the connector the drop will actually use, and the snap still works when zoomed out.
  • Improved A whole node drag is a single undo step, however many connect, disconnect and splice actions it fired along the way.
  • Improved geo/MeshToVoxel voxelizes box-shaped meshes far more faithfully.
  • Fixed Undoing while dragging a node no longer crashes the editor.
  • Fixed Setting a node path, asset path or string parameter to an empty string resets it to its default, instead of leaving an empty reference that could not resolve and broke code export.
  • Fixed Node paths and asset paths are trimmed, so a path pasted with a stray leading or trailing space still resolves.
Also in this release
  • PolyNode spare parameters and the parameters declared by a PolyNode definition now stay in step with each other, including through save, reload and regeneration.

2.0.45

First public version of Polygon V2

  • New Polygon V2 is a complete rewrite of v1, that can run and build for native & web.