Skip to content

v0.3.0

Pre-release
Pre-release
Compare
Choose a tag to compare
@brenocq brenocq released this 29 Jan 14:13
3e6f32a

The main features added in this release are:

  • Infrared sensor: Infrared sensor is now available #48
  • Hierarchical prototype: Prototypes will now work with entities that have children #47
  • Time profiler: It is now possible to profile the code while running to find bottlenecks #46
  • Improved physics #45
  • Full Linux support #44

Changelog

  • Feat
    • Support to specify number of jobs when building
    • Step control (simulate slower, faster, or in real-time)
    • Graphics FPS control
    • Draw collision contacts and collision shapes
    • Better UI to configure physics
    • Supported colliders: `BoxCollider`, `BoxCollider2D`, `SphereCollider`, `CircleCollider2D`, `CyllinderCollider`
    • Supported joints: `PrismaticJoint`, `RevoluteJoint`
    • Better atta config and state check (`utils/config.h`)
    • Faster build when dependencies are already downloaded (no update check)
    • Time profiler
    • Create clones from a prototype with children
    • `cmp::Camera` with new `captureTime` field
    • `cmp::Entity` new methods
    • `cmp::Relationship` new `Entity get(uint32_t i)` method
    • Now it is possible to get scale/position/orientation individually from `mat4`
    • New `cmp::InfraredSensor`
    • New `cmp::Script::set` method
    • Default atta namespaces are now accessible everywhere (added to precompiled header)
    • Sensor module UI window
  • Refactor
    • README with better Linux installation instructions
    • Quaternion UI with quaternion values instead of Euler values
    • `cmp::Relationship` using `cmp::Entity` instead of `cmp::EntityId`
    • Varying camera sensor drawer size according to entity size
    • Camera model matrix calculation from position and orientation instead of transform matrices to reduce numerical
    • `cmp::Camera` renamed to `cmp::CameraSensor`
    • `cmp::Transform` now is more numerically stable when converting from/to world coordinates
    • Physics engine ray casting now also returns distance and normal
  • Fix
    • Fixed changes not being performed when hot-reloaded
    • Hot-reloading when included files are modified
    • Fixed calling scripts of clones twice in one step
    • Fixed Bluetooth error
    • Running clone script twice per step
    • Not reloading cameras when project is open
    • Always drawing prototype camera/colliders
    • Returning invalid orientation quaternion from mat4
    • Returning wrong euler from quaternion
    • Box2D dynamic creation/deletion of `RigidBody2D` and `Collider` supported
    • Box2D `RigidBody2D` type dynamic change support