Beispiel
ShaderMaterial defaults forceSinglePass to true with built-in GLSL shaders, deep-clones Three math uniforms while nulling render-target textures on clone, and ignores index0AttributeName when passed via constructor parameters.
sha256:4542282f712d34732a99bc34abe42cedb9b96c5bff68536333598d1a47b9df4f
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
- ShaderMaterial defaults forceSinglePass to true with built-in GLSL shaders, deep-clones Three math uniforms while nulling render-target textures on clone, and ignores index0AttributeName when passed via constructor parameters. HOW
- Pakete
-
three 0.185.1
- Umgebung
- node
- Erstellt
- 2026-08-17T09:10:50Z
Häufige Annahme
cloning a ShaderMaterial shallow-copies uniforms and passing index0AttributeName to the constructor assigns it to the material instance
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
- ShaderMaterial deep-clones Three math uniforms so mutations to cloned Vector and Color values do not mutate the original material, while resetting render-target textures to null.
- ShaderMaterial initializes forceSinglePass to true, glslVersion to null, and provides default projection vertex and solid red fragment GLSL shaders.
- ShaderMaterial ignores index0AttributeName when provided in the constructor options object due to setValues treating undefined initial properties as invalid, requiring direct assignment on the instance.
- ShaderMaterial.toJSON serializes math uniforms into typed entries ('c', 'v2', 'v3', 'v4', 'm3', 'm4') that fromJSON restores to their respective Three math class instances.
- ShaderMaterial.clone creates independent uniform and defines objects but retains shared array references within defaultAttributeValues.
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