Skip to content

Ceramic v2.1.0

Latest

Choose a tag to compare

@github-actions github-actions released this 28 Dec 22:32
· 8 commits to master since this release

This release brings a new cross-platform shader system named Shade, and many more improvements and fixes.

Changelog

New Features

  • Shade: New cross-platform shader system with GLSL output support
    • Add ceramic shade command to convert Haxe shaders into GLSL or ShaderLab
    • Shade plugin is now enabled by default and Haxe shaders are converted automatically
  • Graphics: New Graphics class for immediate-mode drawing (Canvas 2D / Flash-like API)
  • Runtime: Add Visual.addBefore() and Visual.addAfter() methods for precise child ordering
  • Runtime: Add ScrollView.autoComputeContentSize option
  • Runtime: Add Float32 type and Float32Utils utilities
  • Runtime: Add lerp32 function
  • Runtime: Add basic support for Construct 3 bitmap font format
  • Runtime: Add window size configuration defines for HD/4K defaults
  • Tilemap: Add useMesh to TilemapLayer for more efficient rendering using a single mesh
  • Tilemap: Add shader field to TilemapLayerData

Improvements

  • Clay: Abstract OpenGL into cross-platform GLGraphicsDriver and GLGraphicsBatcher API
  • Clay: Fix antialiasing not working through WebGL
  • HTTP: Improved native download implementation with cleaner per-target code
  • Tools: Move from C++11 to C++17 on native targets
  • Tools: Add --no-download option for node tools/install
  • Tools: Improved plugin discovery
  • Tools: Allow plugins to be enabled by default via +plugins in runtime config
  • Android: Fix compatibility with more recent Gradle/JVM versions
  • Unity: Various fixes for new shader pipeline compatibility
  • Renderer: Non-linear z-depth progression to avoid z-fighting issues
  • Renderer: Per-render-target z tracking

Bug Fixes

  • Runtime: Fix IntFloatMap off-by-one error
  • Runtime: Fix inaccurate check when using floatColors instead of colors
  • Runtime: Make Float32Utils.f32() work on C# target
  • LDtk: Fix entity layerInstance and level not being assigned to layer instance
  • Loreline: Fix assets not loading when using runtime assets/hot reload
  • Loreline: Fix C# target compatibility
  • Elements: Restore LabeledFieldView

Documentation

  • Comprehensive API documentation overhaul
  • Expose more types from AllApi.hx for documentation generation

New Contributors

Full Changelog: v2.0.2...v2.1.0