• Paint per-geometry heat maps onto params.sceneModel and reskin its objects to display them.

    For each triangle geometry the function:

    1. Resolves the scalar field via params.scalars (default: world-up elevation).
    2. Calls the heat-map painter to rasterise the field into a colour map and produce matching UVs.
    3. Writes the painted uvsCompressed back onto the SceneGeometry.
    4. Creates the three SceneTextures (colour, normal, mr) and a SceneMaterial on the SceneModel, namespaced by geometry id.

    Then walks sceneModel.objects and, for each SceneObject, snapshots + destroys + recreates the object's meshes bound to their geometry's heat-map material. Mesh transforms / opacity / parent-transform bindings are preserved.

    Limitations:

    • Only triangle geometries are painted (TrianglesPrimitive, SolidPrimitive, SurfacePrimitive); points and lines are skipped (their meshes keep their original material).
    • Geometries shared across multiple meshes display the same heat map on every instance — UVs are stored on the geometry, so the scalar field has to be a property of the geometry, not the mesh.
    • Geometries without indices or with empty AABBs are skipped.

    Parameters

    Returns SDKResult<void>