Skip to content

Sceneform 1.7pr2

Pre-release
Pre-release
Compare
Choose a tag to compare
@romainguy romainguy released this 13 Dec 20:04

This release of Filament is a check point release towards Sceneform 1.7.

List of changes since sceneform-1.7pr1:

Features

Engine

  • View::setFrontFaceWindingInverted can be used to change the winding order of front faces. This is useful for mirrored rendering (reflections, etc.)
  • Added View::setRenderQuality API. It currently allows the use of an R11G11B10F HDR color buffer instead of RGB[A]16F
  • Added the ability to set the polygon offset on a material instance
  • Added API to compute tangent frame from vertex data (in VertexBuffer)

Materials

  • Use getUserTime() to get the current time in seconds. See Renderer::resetUserTime() for more information

Tools

  • matc features are now part of libfilamat to generate materials at runtime
  • resgen tool to embed data in binaries (pre-compiled materials, etc.)

Samples

  • Samples: snorm16 UVs if UVs are in the range -1..1
  • Samples: New webpack/TypeScript demos
  • Samples: Added gltf_viewer sample

Enhancements

Engine

  • Improved skinning memory usage
  • Improved job system performance
  • Set CPU affinity on job system threads on Android to avoid core hopping/cache thrashing
  • Froxelization now runs during the shadow pass for improved parallelism
  • Lights culling is now parallelized with renderables culling
  • Various performance and code size optimizations
  • Use compile-time hashing in StaticString

Materials

  • Shader optimizations are now on by default
  • Shader optimizations can now be applied to materials that use external textures
  • Use smol-v to compress SPIR-V shaders

Android

  • Android: API level requirement on Android was lowered from 24 to 21
  • Android: Reduced the size of the release AAR by ~150 KiB
  • Android: UiHelper can now create transparent render targets
  • Android: Added a transparent render target demo

Web

  • The JavaScript API now supports compressed textures
  • Disabled depth prepass in the WebGL builds

Distribution

  • Linux CI builds are now compiled with clang 7.0 instead of clang 5.0

Bug fixes

Engine

  • Fixed overflow issue when exactly 256 bones were declared in a renderable
  • Fixed potential crash when copying a texture stream
  • FADE materials are now properly sorted with TRANSPARENT materials

Vulkan

  • Fixed mipmapping of 2D textures
  • Fixed validation warning
  • Fixed texture anisotropy in the Vulkan backend
  • Depth offset and face culling now work