Updates
Progress, a slice at a time.
Every slice that lands is written up in the plan with what it does, how it was checked, and what's next. These are those write-ups, newest first.
Scrolling and masks
ScrollRect: dragging, the scroll wheel and normalized positions; clamped, elastic (rubber-band overstretch, spring back) and unrestricted movement, with inertia; scrollbars that follow and drive it, auto-hiding (and…
Lighting and shadows
Physically based shading in the manner of URP's Lit for Standard, URP Lit and glTF materials: metallic and smoothness, a GGX highlight, and emission (Standard's needs _EMISSION, as…
UI input
UnityEngine.EventSystems in the UI assembly: EventSystem, the event data (PointerEventData, AxisEventData), every handler interface, ExecuteEvents and EventTrigger; GraphicRaycaster, PhysicsRaycaster and…
UI text
Fonts: Font with a dynamic glyph atlas, rasterized natively with fontdue. The atlas grows and rebuilds when full, raising Font.textureRebuilt. CharacterInfo, RequestCharactersInTexture, GetCharacterInfo. Liberation Sans…
UGUI graphics
Graphic, MaskableGraphic, Image and RawImage in UnityEngine.UI, with VertexHelper, BaseMeshEffect, Shadow, Outline, CanvasUpdateRegistry and GraphicRegistry. Dirty layouts rebuild first when the canvases update, then…
UGUI layout
RectTransform in CoreModule; it takes the Transform's place on the same native transform when added, as in Unity. Anchors, pivot, size delta, anchored position and offsets, with the…
The Animator
AnimationClip from .anim files, using the curves Unity plays: position, rotation (quaternion or Euler, with the clip's rotation order) and scale by path; float curves on components by…
The Input System
Unity.InputSystem, Tassix's own assembly with the package's name and namespaces, so scripts and asmdefs that use it compile unchanged (by name or by the package asmdef's GUID). Devices:…