Skip to content
On this page

Stellar v1.0 Beta 3

Another day, another Stellar Beta! This time, the numbers are a bit different...

Stellar beta 3 layout tab featuring many fuel tanks

Highlights

  • Stellar's blueprint file system
    • Importing and exporting game blueprint files
    • Saving and loading Stellar's blueprint file .stbp
  • Cleaner part components system, opening opportunities for plugin makers
  • Undo and redo
  • Inspect tab
  • Revamped input UI
  • Easier-to-use debug control menu
  • Finalized new Stellar icons
  • A fix for missing PWA capabilities

Read the full changelog here!

What's New

Version Skip

We will be skipping the v0.1 version, and directly releasing v1.0. Until then, new betas will be released, highlighting the changes made along the way to completion.

New Properties Explorer UI

image

  • Every part featuring position, orientation, and scale now enables the transformations
    • Part must have p.x, p.y, o.x, o.y, and o.z
    • This is done procedurally
  • Revamped the input UI to feature a label above the input
    • This lets you understand better what the input changes unlike before when one had to guess what the abbreviated letter stood for
  • Memoized every component

Grouping

image

  • Added grouping via Ctrl + G key bind
  • Ungrouping coming in the next beta!

Inspect Tab

image

  • Found right beside the properties tab
  • Gives important information about the selected part
    • ID: the identification string of a part via a universally unique identifier (UUID)
    • Parent ID: the identification of the parent group (also a UUID)
      • null if the part is at the root level
    • Name: the n key of any part
    • Locked: whether or not the part can be manipulated via the UI
    • Hidden: whether or not the part is hidden and can't be exported
    • Bounding box: the world space the part occupies
      • Min X, Y: lower bound
      • Max X, Y: higher bound

File System

image

❕ Feedback is needed! Would you rather prefer the files generated by stellar to be minified to save disk space, or, formatted so that the user can read them? Or should it be a settings option? Let us know on our official discord server!

  • All functionality available via the "File" control menu
  • The blueprint name will be displayed in the window title
  • If there are any unsaved changes, an asterisk will show up near the blueprint name
  • New: creates a fresh, blank blueprint
  • Open: import Stellar's blueprint file (.stbp)
  • Save: override the last chosen Stellar Blueprint file with the current state in the editor
  • Save as: save or override any Stellar Blueprint file
  • Import: open any Spaceflight Simulator blueprint file
  • Export: save the current blueprint state in a format that can be understood by Spaceflight Simulator

Canvas Panning Controls

  • Wrote a custom react-three-fiber component to handle complex mouse controls
  • Scroll to pan on the Y-axis
  • Scroll while holding Shift to pan on the X-axis
  • Scroll while holding Ctrl to zoom in and out where the cursor is located
  • Scrolling and pinching on a trackpad achieves the controls above also

Part Translation Controls

❕ Dragging parts via the cursor is temporarily disabled

  • Use the arrow keys to move selected parts with translations on the corresponding axis
    • Hold shift to translate 5 times faster
  • Translating groups will, instead, translate all parts inside of them

Undo and Redo

  • Press Ctrl + Z to undo
  • Press Ctrl + Y to redo
  • Undo and redo states do not persist after a refresh

Part Bounding System

❕ This is still a work-in-progress feature and has neither been optimized fully nor finalized API-wise

  • Every part is now required to implement a custom bounding box computer
  • Bounding boxes are used to transparently calculate part selection
    • Custom implementation to cut down on useless checks run on the Z-axis

Control Menu

image

  • Add
    • ❕ Since the part API has not been finalized yet, only one experiment part is available: Fuel Tank
    • Was previously called "Part"
    • Inserts the desired part into the blueprint
  • Debug
    • Now features all inbuilt debug blueprints available in the source code
      • This persists even after a refresh, unless, "None" is chosen
      • Blueprints:
        • "Fuel Tank Shapes"
        • "One Part"
        • "Shapes & Textures 1" by Akmaster
        • "Saturn V" by Luke96
    • Added orbit controls, letting the user navigate easily on all axis
    • Help
      • Moved to the far right
  • Edit
    • Undo
    • Redo
    • Delete
  • View: switch tabs
    • Layout
    • Staging
    • Simulation
    • Rendering

Known Issues

  • Group bounding boxes don't update when the translation of children occur
  • Bounding boxes don't account for orientation
  • Grid renders above the selection boxes

As always, there are thousands of code changes that are too, simply put, boring to discuss. But do keep them in mind!