จาก LED 6,912 ดวงที่ผูกกล้องไว้ตายตัว 12 ตัว → เป็น 248,832 ดวง ที่สร้างชั้นเองอัตโนมัติ หมุน/ซูม/เลื่อนมุมที่ content เข้าไปในก้อน LED ได้ และวางก้อนไว้กลาง origin
ระบบสไลซ์ต้องมีของ 3 อย่างต่อ 1 ชั้น: กล้อง ortho 1 ตัว (ตั้ง near/far ให้เห็นเฉพาะแผ่นบางของตัวเอง), renderpass 1 ตัว, และ out 1 ตัว → เดิมวางมือไว้ 12 ชุด แปลว่าสเกลได้แค่ 12 ชั้นเท่านั้น ลากสไลเดอร์ดูว่าถ้าจะไป 144 โมดูลจริงต้องมีของกี่ชิ้น
.toe เอง —
slices_build (textDAT) + slices_exec (parameterexecuteDAT)
→ เปลี่ยน Modz แล้วกด Rebuildslices ระบบสร้าง/ลบ/ต่อสายให้ครบเอง
ทั้งตอนขยายและตอนย่อกล้องทั้ง N ตัวถูกทำให้เป็นลูกของ null ตัวเดียว (camRig) → ขยับ/หมุน rig ตัวเดียว กล้องตามทั้งชุดโดยที่ระยะ slab ยังเรียงถูก ซ้าย = มองจากด้านบน เห็น scene กับ "กล่องที่กล้องจับ" · ขวา = สิ่งที่ไปโผล่ในก้อน LED
Zoom ซึ่งคุม orthowidth + near/far + tz พร้อมกัน
(ถ้าคุมแค่ orthowidth แกนลึกจะไม่ย่อตาม → สัดส่วนเพี้ยน)near = (me.digits-1) * (Zoom / Layers) far = (me.digits) * (Zoom / Layers) tz = Zoom * 0.5 orthowidth = Zoom camRig: tx = Panx ty = Pany tz = Depth rx/ry/rz = Rotx/Roty/Rotz
กล้อง ortho กว้าง 1 หน่วยเสมอ แต่ความสูงที่เห็น = resh / resw พอสไลซ์กว้างขึ้น (โมดูลเยอะขึ้น) กรอบแนวตั้งแคบลง → scene ที่วางไว้กับ volume ทรงหอสูงจะหลุดกรอบทั้งหมด ผลคือ renderpass ดำหมดทุกชั้น และ TouchDesigner ไม่ฟ้อง error เลย
op.numpyArray(delayed=False).max()) แล้วเทียบกับ container ที่ทำงานได้
วันนี้จับได้ว่า renderpass = 0 ทุกตัวทั้งที่ POP มีจุด 800 จุด → ปัญหาอยู่ที่กรอบกล้อง ไม่ใช่ที่ contentposTOP เขียนตำแหน่งเริ่มที่ (ix+0.5)·pitch → ก้อน LED กิน 0 → 4.5 ทั้งแกน X และ Z แปลว่า มุมกล่องอยู่ที่ origin ไม่ใช่จุดกึ่งกลาง กล้อง preview ที่ orbit รอบ origin เลยเห็นก้อนเยื้องตลอด
x -= float(NX) * 0.5 * uPitch.x; // NX = pixel ต่อชั้น y -= float(H - 1) * 0.5 * uPitch.y; // H = Height z -= float(NZ) * 0.5 * uPitch.x; // NZ = จำนวนชั้น
ทุกตัวเลขวัดด้วย wall-clock (force cook ซ้ำ 5–20 รอบ) ไม่ใช่ cookTime ซึ่งค้างค่าตอน compile ครั้งแรก
| งาน | 2×2 (12 ชั้น) | 12×12 (72 ชั้น) | เพิ่มขึ้น |
|---|---|---|---|
| LED | 6,912 | 248,832 | 36× |
| เรนเดอร์ LED @4K | — | 0.093 ms | แทบไม่ขยับ |
| content: POP scene (สไลซ์) | 2.95 ms | 20.6 ms | 7× |
| content: GLSL generator | — | 0.67 ms | — |
python td.py script ../ClaudeControl/build/01_baseMatrix2x2GPU.py # GPU version 2×2 python td.py script ../ClaudeControl/build/03_slices_auto.py # auto slice rig + camRig (ทั้ง 2 container) python td.py script ../ClaudeControl/build/02_baseMatrix12x12GPU.py # 12×12 = 248,832 LED