Phase 6 updates

Phase 6 · Slice 46 ·

The corpus’s next small APIs

  • Checked by a new corpus_apis_3 scenario recorded in 6000.3 (the conformance project gains Unity's terrain and terrain physics modules): GeometryUtility (CalculateFrustumPlanes from cameras and matrices, in Unity's order with inward normals; TestPlanesAABB; CalculateBounds; TryCreatePlaneFromPolygon), StaticBatchingUtility (Combine changes nothing: Tassix batches on its own), Application.HasProLicense (false), MonoBehaviour.useGUILayout, Object.DestroyObject (deferred like Destroy), Transform.DetachChildren (children keep their world positions), SerializeReference (the attribute only).
  • Terrain: TerrainData's heightmap as Unity keeps it (16-bit heights in steps of 1/32766, indexed [y, x]; 33 samples and 32x1x32 by default; heightmapScale, bounds from the heights, GetHeight(s), SetHeights, bilinear GetInterpolatedHeight, normals and steepness), Terrain (terrainData, SampleHeight clamped to its edges, GetPosition, activeTerrain(s), CreateTerrainGameObject with its TerrainCollider). Terrains aren't drawn or collided with yet, and say so once.
  • Corpus: 29 of 37 compile and load (27 before): RogueLikeGameUnity (A* Pathfinding Project) and Unity_Tower_Defence play with no warnings or exceptions. The RTS calls AssetDatabase and EditorSceneManager from a script outside an Editor folder, so it runs only in Unity's editor; the platformer template also needs Visual Scripting.
  • Not yet: drawing terrains and their colliders, terrains in Unity scenes, managed references' values, the Input System's custom composites, UnityEditor's asset APIs for editor-only scripts.
  • Next: Cinemachine, Visual Scripting or URP render features (each stops two corpus projects); legacy Animation playback; terrains.