Scope of the dev-38 → dev-40 continuation
The Native 3D foundation remains ABI v1. dev-38/039/040 add capabilities and functions without replacing the established object/render/field/animation model. dev-40’s public engine header has 16 function additions relative to dev-37; the animation and field headers are unchanged over that comparison.
dev-038 — connected-surface wrapping
- Curved image charts propagate over edge-connected source triangles through unfolded transport.
- New status and seam queries expose chart/rendered counts, stop reasons and explicit transported-coordinate seams.
- The Viewer Provider’s visible Navigation Cube delegates hit testing and orientation to CORE.
dev-039 — particle clouds and positional lighting
- Introduces scene-owned
gx3de_particle_cloudwith copied positions, global/per-particle radius and color, global opacity, transform and visibility. - Introduces
gx3de_positional_lightas an override of an enabled directional slot. - Current renderer semantics remain geometric; no physical volumetric attenuation or per-particle opacity is implied.
dev-040 — sampled scientific density
- Adds
gx3de_scientific_color_array_set/getfor normalized point-associated RGB/RGBA. - Direct color has priority over scalar coloring; clearing restores the pre-existing scalar role without destroying it.
- Final alpha composes object opacity, scientific opacity array and direct RGBA alpha.
- Sphere-glyph safety cap rises to 100,000 instances and uses lower tessellation above 20,000, still constrained by display triangle budget.
- Scientific point/glyph density remains a normal scientific object and is distinct from
gx3de_particle_cloud.
Exact functions added since dev-37
| Function | Area |
|---|---|
gx3de_curved_texture_seams_get | Textures |
gx3de_curved_texture_status_get | Textures |
gx3de_particle_cloud_count_get | Particle clouds |
gx3de_particle_cloud_create | Particle clouds |
gx3de_particle_cloud_destroy | Particle clouds |
gx3de_particle_cloud_particles_set | Particle clouds |
gx3de_particle_cloud_style_get | Particle clouds |
gx3de_particle_cloud_style_set | Particle clouds |
gx3de_particle_cloud_transform_get | Particle clouds |
gx3de_particle_cloud_transform_set | Particle clouds |
gx3de_particle_cloud_visible_get | Particle clouds |
gx3de_particle_cloud_visible_set | Particle clouds |
gx3de_scientific_color_array_get | Scientific data |
gx3de_scientific_color_array_set | Scientific data |
gx3de_view_positional_light_get | Views |
gx3de_view_positional_light_set | Views |
Compatibility consequence
A consumer compiled for the older ABI should capability-check the new families instead of assuming them. Because ABI version remains 1 and additions are capability-gated, older functionality remains addressable through the same public header model. In a runtime that lacks a dev-40 capability, fall back to scalar/object color, directional lights or ordinary mesh/scientific presentation as appropriate.