← Changelog

Polygonjs 2.0.57

Extrude inset, polyWire follows edges, glTF fixes

·built with Jai 0.2.029

  • Breaking geo/PolyWire follows the edges of its input instead of sweeping through the points in order. Separate curves inside one object are no longer stitched end to start, and separate input objects come out as separate meshes. A point cloud with no edges still sweeps through its points in order, so that case is unchanged.
  • Breaking geo/MergeCompact is gone. It is now a compact toggle on geo/Merge, off by default, with computeNormals beside it. Existing Merge nodes behave exactly as before. A scene saved with a MergeCompact drops that node on load, so rebuild it as a Merge with compact on. The compact path gains what Merge already had: the per-input toggles apply, stage attributes carry through, and lights, cameras and controls pass through instead of being swallowed.
  • New geo/Extrude gets an inset param. It tapers the extrusion inwards by a distance measured perpendicular to each edge, so the inset edges stay parallel to the ones they came from. Negative values widen it instead. Feed the mesh through geo/Facet with splitAllFaces first and every face becomes its own panel with a tapered rim.
  • New Ctrl+Down sends the playhead back to the start of the play range. If the scene is playing, it pauses instead.
  • Improved geo/PolyWire tubes a mesh or a grid wireframe correctly: mitered rings through bends, a ball at every junction where three or more edges meet, flat caps at loose ends, and a frame that no longer rolls along a long curve.
  • Improved geo/Extrude handles quad meshes, and a quad mesh stays a quad mesh. A new computeNormals toggle, on by default, recomputes the normals from the extruded result rather than keeping the input’s, which described the input and not the extrusion.
  • Improved geo/Extrude keeps primitive attributes. The bottom, the top and every side wall inherit the attributes of the face they came from.
  • Improved geo/Facet works on quad and hexa meshes. Both splitAllFaces and the angle threshold apply, and the node never triangulates: a quad mesh stays quads and a hexa mesh stays hexa.
  • Improved A glTF that requires an extension Polygon does not support is refused with an error naming it, instead of reading compressed bytes as geometry. Draco and meshopt exports are the common case. Re-export without compression.
  • Improved geo/SceneGLTF maps glTF’s doubleSided onto the generated mat/MeshPBR’s sides param, so imported foliage, cloth and thin panels are no longer invisible from the back.
  • Improved geo/SceneGLTF builds a remote asset on a single press of Build. The node reports that it is fetching while the download runs, then generates the sub-graph on its own as one undoable step, and clears its error once the build succeeds.
  • Improved Framing the camera skips lights and helpers, so it frames your geometry instead of pulling back to include a distant light. The frameObjects default on the camera control nodes is now * ^grid* ^*Camera* ^*Light* ^*Helper*.
  • Improved The material nodes carry help. mat/MeshPBR, MeshPhong, MeshLambert, MeshNormal, MeshGrid, MeshBasicTexture, MeshBasicDepthTexture, Sky, Volume, Voxel and RaymarchingBuilder all describe themselves and their params in the panel.
  • Fixed Soft shadows no longer show acne as softness goes up on a spotlight or a directional light. Two related artifacts go with it: a dark band at the edge of a light’s shadow map, and shadow bleeding in from a light packed beside it in the atlas.
  • Fixed The geo/SpotLight helper draws the cone at the angle the light actually covers. It used to draw it about half as wide.
  • Fixed Deleting a node no longer crashes the editor when work was already queued for it that frame, such as a dirty node inside an open MAT network, or a node that had just errored.
  • Fixed geo/HexaPlane outputs a normal attribute. It carried none.
  • Fixed Triangulating a hexa or a quad mesh gives the added centre points their own attributes, the average of the corners they sit between. They used to carry an unrelated source point’s uv and colour, and a hexa mesh could read past the end of its attribute buffers.
  • Fixed Normals computed on a quad or a hexa mesh point outwards. They came out inverted relative to the triangles on screen.
Also in this release
  • Transform gizmos from nodes selected inside a subnet no longer stay on screen after you leave it, when the selection was larger than the number of gizmos the editor displays at once.
  • mat/MeshBasicTexture and mat/MeshBasicDepthTexture use the alpha of their color param as an overall opacity, on top of the texture’s own alpha.
  • geo/Copy, geo/ObjectProperties and geo/PhysicsRBDAttributes show their key values under the node in the network panel.
  • geo/PolyWire’s radius goes past 1, up to 10 and beyond.