Skip to content

v1.1.0

Compare
Choose a tag to compare
@matajoh matajoh released this 20 Mar 11:42
· 1 commit to main since this release

This minor release marks the first major Milestone release of Scenepic. This release addresses many of the long-standing issues in the v1.0.0 release and adds new features and functionality as well.

Features

  • Text burning into individual video frames (for VideoWriter
  • Per-frame layer settings
  • The dropdown menu visibility can be directly controlled via UIParameters
  • A standalone parameter has been added to save_as_script to enable the creation of standalone scripts.
  • The status_bar_visibility of a Scene can now be set (i.e. it is now possible to hide the status bar if desired.)
  • There is now a new camera control mode, "First Person", accessible by pressing Tab, which enables mouse-look and wasdqe movement controls. The old mode, now called "Focus", is still available as the default.
  • Font scale is now configurable on VideoWriter
  • There is now a "reset camera" button on the control bar so that users without a keyboard can reset camera position
  • Can now update colors per frame for both meshes and instanced meshes
  • quaternion_multiply adds the long-missing code to combine quaternion rotations
  • Camera.orbit creates a sequence of orbiting cameras around a central point
  • Can specify text alignment and size for graph labels and values
  • Can add vertical rules to separate out horizontal regions of the graph
  • save_html can now separate out the script and library components (for easier testing of new Typescript library features)
  • Keyboard shortcuts for toggling layer visibility.
  • Ability to pick the centroid of a mesh as a focus point by clicking on it while in focus point selection mode.
  • Pan/zoom functionality to 2D canvases.
  • Full pinch, zoom and rotate with two fingers is now supported

Improvements

  • Added new hello_scenepic.py and hello_scenepic.cpp example code
  • Added a clang-format pipeline and build targets
  • Normalized C++ file format
  • Stub files for all classes properly expose the docstrings in VS Code and other editors, thus making development in Python considerably easier.
  • The missing methods for a variety of classes have been added to the python docs
  • The version of pybind11 has been bumped to the latest release
  • Notebooks that contain scenepic are now correctly displayed in Jupyter notebooks within VS Code

Bug Fixes

  • load_obj now correctly loads normals when present in the OBJ file
  • MeshInfo now exposes normals
  • C++ build typos now fixed
  • Fixed erroneous pipeline triggers
  • While transparent backgrounds were supported by the library, it was not exposed via the client APIs. This has been fixed via a 4D color parameter for Shading.
  • Coordinate axes bug
  • Negative angle bug
  • Mesh Update for instanced meshes
  • Standalone scripts were missing a newline as a result of recent NPM changes. This is now added in manually in the script generation process.
  • Dropdown menus will now correctly appear on top of canvases in the z-order
  • Dropdown menus will align on the opposite side if not doing so would result appearing outside the viewbox

Deprecated

  • update_mesh_without_normals has been deprecated in favor of the new method update_mesh_positions