← Commit history

copper -> PBR metallic (glossy sheen reflecting scene env, not blown-out white/brown); reassert 80% transparent shadow-receiving ground

John Lauer ·ad1cab5bd4 ·3mo ago ·parent ab6f747
3 files changed +25−10
package.json+1−1
@@ -2,7 +2,7 @@   "slug": "bq25792-charger",   "title": "BQ25792 Charger",   "type": "component",-  "version": "0.1.45",+  "version": "0.1.46",   "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.45",+  "version": "0.1.46",   "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+14−6
@@ -253,10 +253,10 @@ exported bodies + design rules.</p>     }      // ONE shiny copper for all four copper layers-    const copperMat=new (B().StandardMaterial)("copper_shared",sc);-    copperMat.diffuseColor=new (B().Color3)(0.72,0.34,0.10);-    copperMat.specularColor=new (B().Color3)(1.0,0.78,0.45);-    copperMat.specularPower=48; copperMat.backFaceCulling=false;+    const copperMat=new (B().PBRMetallicRoughnessMaterial)("copper_shared",sc);+    copperMat.baseColor=new (B().Color3)(0.95,0.60,0.42);   // copper+    copperMat.metallic=1.0; copperMat.roughness=0.28;        // glossy metal sheen from the env+    copperMat.backFaceCulling=false;     byKey.cu1.meshes.concat(byKey.cu16.meshes).forEach(m=>{ if(m.material) m.material=copperMat; });      // FR4 sublayers = real Board body clones (drill holes)@@ -287,7 +287,7 @@ exported bodies + design rules.</p>       p.position=new (B().Vector3)(25.2*mm,13.2*mm,zc);       const t=new (B().Texture)(R+tex,sc,false,false); t.hasAlpha=true;       let mat;-      if(copper){ mat=copperMat.clone(key+"_cu"); mat.opacityTexture=t; t.getAlphaFromRGB=false; }+      if(copper){ mat=copperMat.clone(key+"_cu"); mat.baseTexture=null; mat.opacityTexture=t; t.getAlphaFromRGB=true; mat.transparencyMode=1; }       else{ mat=new (B().StandardMaterial)(key+"_m",sc); mat.diffuseTexture=t; mat.opacityTexture=t; mat.emissiveTexture=t; }       mat.backFaceCulling=false; p.material=mat;       if(mirror) p.scaling.x=-1;@@ -322,7 +322,15 @@ exported bodies + design rules.</p>     }      // ground: 80% transparent, receives shadows-    sc.meshes.forEach(m=>{ if(/ground/i.test(m.name||"")){ try{ if(m.material) m.material.alpha=0.2; m.receiveShadows=true; }catch(e){} } });+    sc.meshes.forEach(m=>{+      if(/ground/i.test(m.name||"")){+        try{+          m.receiveShadows=true;+          if(m.material){ m.material.alpha=0.2; m.material.transparencyMode=2; if("useAlphaFromDiffuseTexture" in m.material) m.material.useAlphaFromDiffuseTexture=false; }+          m.visibility=1;+        }catch(e){}+      }+    });      // frame: assembled view + headroom for the +55mm cascade     setTimeout(function(){