Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
22 changes: 22 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,8 +8,30 @@ The native shim's ABI is tracked separately by `b2Version()` (currently `2`).

## [Unreleased]

### Added

- **Terrain objects in the Contraption Builder.** A new **TERRAIN** palette
section adds three pieces of static scenery the dynamic parts rest on, roll
down and bump into: **Platform** (a solid ledge), **Ramp** (a wedge for
rolling and sliding) and **Hill** (a rounded mound). Each is a static polygon
body, so it never falls and the Kit's sync skips it. They size, rotate (the
angle is baked into the outline so a static body tilts without a redraw it
never gets), recolour, take an adjustable grip (friction), drag, duplicate
and save/load like any other part β€” and joints can pin to them, so you can
hinge a part to a platform or hang a bridge from a ledge.
- **"Terrain Run" example recipe** β€” a ball rolls down a ramp, over a hill and
onto a platform, showing the new pieces in one click.

### Fixed

- **Bridge & Chain spans ignore Bouncy mode.** Building a span while the
**Bouncy** build option was on made every plank/link springy, so bridges and
chains jittered and never settled. Span segments are now always built
non-bouncy, regardless of the toggle, so they hang and sag predictably.
- **Duplicating a rotated part keeps its size.** Duplicate copied the graphic's
*bounding box* (which inflates as a part rotates) as the new part's size, so a
rotated box, polygon, plank or terrain piece grew each time it was copied. It
now copies the stored design size instead.
- **Kit no longer leaks image-angle cache entries across teardowns.**
`b2kResetTables` now also clears the `sImgAngle` table, so repeatedly tearing
a world down and rebuilding it (e.g. switching demo scene tabs) stops
Expand Down
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -53,7 +53,7 @@ That's a full, draggable, gravity-driven physics scene β€” see
| **Extension** | `src/box2dxt.lcb` | The xTalk Builder (LCB) library: `foreign handler` bindings wrapped in friendly `b2…` handlers. |
| **The Kit** | `src/box2dxt-kit.livecodescript` | A batteries-included, pure-xTalk helper (`b2k…`) that works in pixels/degrees and hides the loop. |
| **Demo** | `examples/box2dxt-demo.livecodescript` | A self-building, multi-scene testbed showing every feature. |
| **Contraption Builder** | `examples/box2dxt-contraption-builder.livecodescript` | An interactive GUI: drop parts (incl. images), wire up joints + motors, then Run. |
| **Contraption Builder** | `examples/box2dxt-contraption-builder.livecodescript` | An interactive GUI: drop parts (incl. images) and terrain, wire up joints + motors, then Run. |
| **Prebuilt binaries** | `prebuilt/` | Drop-in native libraries so you can run without a toolchain. |

There are two layers you can call:
Expand Down
Loading
Loading