← Commit history

shadows visible at last: shadow light illuminates ONLY the ground (fill light was washing the shadow out); emissive floor keeps shadow dark-gray not black

John Lauer ·5fdcb94b5f ·3mo ago ·parent 44c251e
3 files changed +18−8
package.json+1−1
@@ -2,7 +2,7 @@   "slug": "bq25792-charger",   "title": "BQ25792 Charger",   "type": "component",-  "version": "0.1.66",+  "version": "0.1.67",   "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.66",+  "version": "0.1.67",   "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+7−4
@@ -377,7 +377,7 @@ exported bodies + design rules.</p>     // and that actually renders). Slight XY offset so the shadow peeks out from under the board.     SHADOW_LIGHT=new (B().DirectionalLight)("rm_shadow",new (B().Vector3)(0.25,0.3,-1),sc);     SHADOW_LIGHT.position=new (B().Vector3)(0.0252,0.0132,0.25);-    SHADOW_LIGHT.intensity=0.45; SHADOW_LIGHT.autoUpdateExtends=true;+    SHADOW_LIGHT.intensity=1.1; SHADOW_LIGHT.autoUpdateExtends=true;     SHADOW_LIGHT.shadowMinZ=0.01; SHADOW_LIGHT.shadowMaxZ=0.6;     SHADOW_GEN=new (B().ShadowGenerator)(2048,SHADOW_LIGHT);     SHADOW_GEN.usePercentageCloserFiltering=true; SHADOW_GEN.filteringQuality=B().ShadowGenerator.QUALITY_HIGH;@@ -396,15 +396,18 @@ exported bodies + design rules.</p>     let gm;     if(B().ShadowOnlyMaterial){       gm=new (B().ShadowOnlyMaterial)("adomGroundMat",sc);-      gm.activeLight=SHADOW_LIGHT; gm.alpha=0.55; gm.shadowColor=new (B().Color3)(0,0,0);+      gm.activeLight=SHADOW_LIGHT; gm.alpha=0.5; gm.shadowColor=new (B().Color3)(0,0,0);     }else{       gm=new (B().StandardMaterial)("adomGroundMat",sc);-      gm.diffuseColor=new (B().Color3)(0.62,0.64,0.68); gm.specularColor=new (B().Color3)(0,0,0);+      gm.diffuseColor=new (B().Color3)(0.72,0.74,0.78); gm.specularColor=new (B().Color3)(0,0,0);+      gm.emissiveColor=new (B().Color3)(0.20,0.21,0.23);  // ambient floor so the shadow is dark-gray, not black       gm.alpha=0.4;-      new (B().HemisphericLight)("rm_gl",new (B().Vector3)(0,0,1),sc).intensity=0.7;     }     gm.backFaceCulling=false;     GROUND_PLANE.material=gm; GROUND_PLANE.receiveShadows=true;+    // the shadow light lights ONLY the ground (keeps the copper/parts on the env look) so the+    // occluded region genuinely darkens instead of being washed out by a fill light.+    SHADOW_LIGHT.includedOnlyMeshes=[GROUND_PLANE];     // hide the bundle's decorative background ground/skybox tinting I mistakenly touched     sc.meshes.filter(m=>/BackgroundSkybox/i.test(m.name||"")).forEach(m=>{ try{ if(m.material) m.material.alpha=1; }catch(e){} });