Skip to content

Carrots Engine 1.1.0

Latest

Choose a tag to compare

@Carrotstudio0 Carrotstudio0 released this 14 Mar 23:21

This release brings massive architectural upgrades including a complete Parent/Child object hierarchy, a unified editor layout, and a comprehensive shift towards a robust, offline-first development ecosystem.

💝 Improvements

  • Parent/Child Hierarchy System: A full implementation of Parent/Child relationships for objects. Includes local/global transforms, runtime hierarchy propagation, and a brand-new Tree View UI in the Instances Editor with drag-and-drop parenting controls.
Screenshot 2026-03-14 031014
  • Scene Folders & Workflow Board: Organize your scenes into folders and track your project's progress visually using the new Scene Workflow Board dialog.
Screenshot 2026-03-11 212633 Screenshot 2026-03-11 212622
  • Unified Editor Layout: Streamlined the Scene Editor by integrating new unified panels: Build Panel, Editor Console, and Project Resources Panel.

  • Asset Database Management: Added internal Asset Database support utilizing GUIDs, .meta files, and an improved asset import pipeline.

  • In-Game Editor UX: Enhanced workflow with Shift-modifier to nudge snap steps, new keyboard shortcuts (W/E/R/L/F), and transform value displays. The UI now dynamically hides when the selection is empty.

  • Compact Instance Properties: A redesigned, flexible Properties Editor schema with customizable action buttons and extended properties (id, color, size, className, buttonStyle).

  • Streamlined Object Creation: Simplified the "New Object Dialog" to focus completely on creating objects from scratch, removing the cluttered Asset Store tab.

  • Grid & 3D Upgrades: Added automatic default lighting when creating 3D layers and improved grid snapping helpers.

⚙️ Extensions & Content

  • Massive Local Extensions Database: The engine now ships natively with a massive built-in extensions database (extensions-database.json and headers). You can seamlessly browse and install extensions entirely offline.
  • New Built-in Extensions: Added powerful new extensions crafted by the community:
    • FP3D (Force and Position 3D) — by puko
    • GpuPreference (GPU Performance) — by Dave
    • NatureElements — by baldieandbaldie
    • PBRMaps — by EldritchTentacles
  • Integrated Examples System: Examples and templates now blend seamlessly between local databases and remote sources.
  • New 3D Example: Added a new complete 3D project template: "3D Wall Sliding" with all necessary assets.
  • Hierarchy Actions/Conditions: Extensively expanded the Built-in Base Object Extension with new actions and expressions to manage hierarchy (pickChildren, isParentOf, HasParent, SetParent, RemoveParent, ChildrenCount, LocalX/Y, ParentName).

🐛 Bug fixes

  • Build Exporters: Cleaned up the export menu by removing the legacy iOS and gd.games pipelines, and properly renamed the Share button to "Build" to reflect the new direction.
  • Browser Storage Defaults: Fixed application entry points and removed CloudStorageProvider, defaulting browser users to a stable DownloadFileStorageProvider.
  • Resource URLs Handling: Fixed URL resource fetching and path parsing using standard relative URL resolution (getProjectBaseUrl) and removed prefixed slashes in example JSONs.
  • Project Manager: Fixed React hook dependency arrays causing bugs in the Project Manager, and enforced "Games" as the default tab in the Create section.
  • Examples Linting: Fixed lint errors inside the built-in example project files.

🛠 Internal changes

  • Carrots Engine Rebranding: Massively updated package names, configurations (package-lock.json), app meta, logos, icons, and README screenshots to fully reflect the Carrots Engine identity.
  • Complete Offline Independence: Disabled online services completely (set ONLINE_SERVICES_ENABLED = false), enforcing an offline user context. Removed cloud tabs, version history, profile popups, and collaborator invite screens.
  • Codebase Cleanup: Removed legacy resource sources (BrowserResourceSources, LocalResourceSources) and deleted the deprecated ObjectsList component in favor of the unified layout.
  • Core Bindings: Updated Emscripten bindings (Bindings.idl), project data types, and runtime serialization paths for the new child object system.