# ChangeLOG

## 1.5.0

1. Features
    - add `Splatting.pack.forceUnstableEnabled` to force the complete rendering pipeline.
    - add `Splatting.sort.frustumCullingEnabled` to pre-cull splats for better performance.
        - this can make black borders during camera rotation more visible, so enable it carefully in production scenes.
    - add `Limits` for describing `IRenderer` limits.
        - some `Capabilities` fields are now marked as deprecated.
    - add `lod.proxy` to reduce the number of runtime `Splat` objects.
        - reduces `pack` and `precalculate` GPU cost by 50%-90% in real scenes.
2. Fixes
    - fix `SplatHighlightKernel` highlights being offset when `cameraRelativeEnabled` is enabled.
    - fix `clear` not taking effect correctly when `MRT` is enabled.
    - fix invalid data when using low-precision packing.
    - fix the `LodMeta.version` type definition.
3. Changes
    - optimize texture-size calculation to improve rendering performance for scenes with a single `Splat` object.
    - move sorting to a dedicated worker to avoid long parsing tasks blocking sorting.

## 1.4.1

1. Fixes
    - fix `packCameraRelativeCenterIsDirty` being incorrectly evaluated as `true` when camera-relative center packing is disabled.

## 1.4.0

1. Features
    - add `texture-loader`, now `downloadTexture` is a generic texture load
        - supported types: image types(png, jpg, webp, etc...), ktx2 and dds
    - add grouped `Splatting` config: `pack`, `raster`, `sort`, and `composite`.
    - add high-precision and camera-relative splat packing, plus high-precision sorting.
    - `combineSplatData` target `SplatData` support.
2. Changes
    - adjust splat-related default parameters from the underlying renderer pipeline.

## 1.3.0

1. Features
    - `SplatUtils`add support for `center` and `ellipsoid`
        > **`constructor` has been changed, migrate: `new SplatBVH(operator)` -> `new BVH(SplatCenterPrimitiveSource(operator))`**
2. Fixes
    - `SplatUtils`state texture type change to `r8uint`

## 1.2.9

1. Features
    - use `api-extractor` to rollup dts.
    - add `esz` and `spzV4` format support.
2. Fixes
    - fix typing for `MeshBasicMaterial.setValues`
    - fix typing for `MeshPhongMaterial.setValues`
    - Simplify some material typings
    - fix type only classes
    - cleanup `package.json`

## 1.1.0

1. Features
    - upgrade packages: `typescript@^6.0.3`, `tslib@^2.8.1`
    - sync base packages
    - remove unused module `render-cloud`

## 1.0.0

1. Features
    - First release
