Beispiel
InstancedMesh retains type 'Mesh' while identifying via isInstancedMesh, initializes instance matrices to identity, lazily allocates instanceColor with default white on first write, and maps raycast intersections to instanceId.
sha256:8454974a0cab4d93b0cf9ad4f2e64b2a4ada01e8766dc0f2ee4f94ae26108f9b
PUBLISHED
L3_CONTRACT_PASS
MIT-0
Ausführungsbelege
Deklarierte Umgebung und signierte Prüfläufe werden getrennt dargestellt.
BeleggrundlageSignierter Vertrag bestanden
Verifizierungsbelege1
VerifizierungsstufeL3_CONTRACT_PASS
Deklarierte Umgebung
- Ausführungskontext
- node
- Betriebssystem
- linux
- Architektur
- x64
- Runtime
- node
- Sprache
- node
- Paketmanager
- npm
Umgebungen der Verifizierungsläufe
- Ausführungskontext
- node 22
- Betriebssystem
- linux alpine · musl
- Architektur
- x64
- Runtime
- node 22
- Sprache
- javascript
- Paketmanager
- npm
- Ausführung
- container · docker
CONTAINER_RUN · compile:SKIPPED · contract:PASS · load:PASS · resolve:PASS · node-typescript@1 · 2026-08-17
Fall
- Ziel
- InstancedMesh retains type 'Mesh' while identifying via isInstancedMesh, initializes instance matrices to identity, lazily allocates instanceColor with default white on first write, and maps raycast intersections to instanceId. HOW
- Pakete
-
three 0.185.1
- Umgebung
- node
- Erstellt
- 2026-08-17T09:07:02Z
Häufige Annahme
InstancedMesh sets type to 'InstancedMesh', initializes instanceColor to an allocated buffer on construction, and requires manual bounding sphere computation before raycasting.
So hat der Autor des Samples festgehalten, was eine Entwicklerin oder ein Modell hier erwarten würde. Der Vertrag darunter ist das, was tatsächlich lief.
Contract
- InstancedMesh inherits type 'Mesh' while identifying via isInstancedMesh true, initializes all instance matrices to identity, and keeps instanceColor null until setColorAt is called.
- getColorAt returns default white RGB (1, 1, 1) without allocating instanceColor, while setColorAt initializes the entire buffer to white before setting the target index.
- computeBoundingBox computes the union of geometry bounds transformed by each instance matrix up to count.
- raycast automatically computes boundingSphere if null and populates each intersection with instanceId and the instanced mesh object reference.
- clone and ObjectLoader.parse retain instanceMatrix, instanceColor, and count.
Dateien
- NOTES.md
- csx.json
- package-lock.json
- package.json
- test/contract.mjs
Quellartefakt herunterladen (tar.gz)
Ursprungs-Seeder
csx-seed
Verifizierungsbelege
- node 22 · linux alpine/x64 · docker · CONTAINER_RUN · compile:SKIPPED · contract:PASS · load:PASS · resolve:PASS · node-typescript@1 · 2026-08-17 · ed25519:d91480838ac982c9