← Commit history

ALL-VECTOR stackup: silk + masks now real geometry (masks = gerber negatives, board minus openings) - no textured quads left, every layer casts+receives real shadows

John Lauer ·1e1a83a50f ·3mo ago ·parent 48fd3fd
7 files changed +16−12
mask-bot-vec.glb.pngadded
⋯ 1 unchanged line ⋯
mask-top-vec.glb.pngadded
⋯ 1 unchanged line ⋯
package.json+1−1
@@ -2,7 +2,7 @@   "slug": "bq25792-charger",   "title": "BQ25792 Charger",   "type": "component",-  "version": "0.1.77",+  "version": "0.1.78",   "description": "BQ25792 Charger - buck-boost 1S-4S battery charger board by Adonis, with real 3D copper traces and measured stackup.",   "tags": [     "hardware"
page.json+10−3
@@ -4,9 +4,16 @@   "slug": "bq25792-charger",   "title": "BQ25792 Charger",   "brief": "Buck-boost 1S-4S battery charger board (TI BQ25792) with 14 Adom machine pins, by Adonis",-  "version": "0.1.77",+  "version": "0.1.78",   "tags": [-    "hardware"+    "adom",+    "adom-modular",+    "component",+    "charger",+    "battery",+    "bq25792",+    "power",+    "usb-c"   ],   "license": "proprietary",   "component": {@@ -49,7 +56,7 @@     "email": "[email protected]"   },   "visibility": "public",-  "description": "BQ25792 Charger - buck-boost 1S-4S battery charger board by Adonis, with real 3D copper traces and measured stackup.",+  "description": "BQ25792 Charger - a buck-boost 1S-4S battery charger board (Texas Instruments BQ25792) designed by Adonis in Fusion 360, with 14 Adom machine pins for the modular stack. Interactive colored 3D model, schematic and layout views.",   "dependencies": {},   "files": [     "README.md",
readme.html+5−8
@@ -367,20 +367,17 @@ exported bodies + design rules.</p>       if(mirror) p.scaling.x=-1;       attach(key,[p]);     }-    quad("silk_top","layer-silk-top.png", 1.600*mm,false,false);-    quad("mask_top","layer-mask-top.png", 1.592*mm,false,false);-    // inner copper L2/L15 as REAL VECTOR geometry (Fusion gerber -> triangulated mesh),-    // sharing the exact same PBR copper material as the outer layers.-    for(const v of [["cu-l2-vec.glb.png","cu_l2",1.2985*mm],["cu-l15-vec.glb.png","cu_l15",0.2175*mm]]){+    // ALL-VECTOR silk + mask (real geometry; textured quads cast no/solid shadows).+    // Masks are gerber NEGATIVES (board outline minus pad openings); z baked in each GLB.+    for(const v of [["silk-top-vec.glb.png","silk_top"],["mask-top-vec.glb.png","mask_top"],+                    ["mask-bot-vec.glb.png","mask_bot"],["silk-bot-vec.glb.png","silk_bot"]]){       const vb=await loadPngBytes(R+v[0]);       let vpre=sc.meshes.length;       await B().SceneLoader.AppendAsync("", new File([vb],v[1]+".glb",{type:"model/gltf-binary"}), sc, null, ".glb");       const vm=sc.meshes.slice(vpre).filter(m=>m.getTotalVertices&&m.getTotalVertices()>0);-      vm.forEach(m=>{ m.position.z=0; m.material=copperMat; });  // z is BAKED into the gerber geometry; adding v[2] double-offsets it+      vm.forEach(m=>{ m.position.z=0; });       attach(v[1], vm);     }-    quad("mask_bot","layer-mask-bot.png",-0.075*mm,true,false);-    quad("silk_bot","layer-silk-bot.png",-0.083*mm,true,false);      // USE THE BUNDLE'S OWN SHADOW RIG (proven: the built-in /viewer renders gorgeous crisp     // shadows with it). SceneBuilder makes a SpotLight + 8192 PCF ShadowGenerator at init,
silk-bot-vec.glb.pngadded
⋯ 1 unchanged line ⋯
silk-top-vec.glb.pngadded
⋯ 1 unchanged line ⋯