TinyTapeout / tinytapeout_gds_viewer

Tiny Tapeout GDS Online Viewer
Apache License 2.0
8 stars 5 forks source link

"section" tool doesn't seem to see data below y==0 #17

Open nmz787-intel opened 2 months ago

nmz787-intel commented 2 months ago

I have some data in the negative portions of the cartesian plane, which is legal in GDS/OAS. While I can see these data on the 3D view, the section tool seems to only look for data in Y>=0 though X<0 data does seem to show up. Note, this is Y axis as viewed in Klayout or other top-down 2D GDS/OAS tool.

nmz787-intel commented 2 months ago

I see odd behavior on the lower left of the example GLTF too: image

and when I move slightly to the right, it all disappears, even the substrate: image

nmz787-intel commented 2 months ago

I've been debugging this a LOT over the past few days. It turns out that if I apply the clipping planes (i.e. what was previously just .near and .far) to the main camera, effectively sectioning the 3D view, and then rotate the camera to view the geometry from a side angle, I can see the shapes are effectively "hollow". image a little further into the chip: image even more angle to the view: image

to the extreme of viewing this particular shape normal to the clipping plane, where it essentially disappears due to the "walls" of the shape having 0 thickness, and the shapes being hollow surfaces with no "filling".

Asking chatGPT what could be done, it suggested a composer, or custom shaders. I tried the composer first, but it didn't produce anything obviously useful. Attempting to use the shaders has been quite difficult, as just getting a comparable rendering as the reference_mesh.material provides has so far been elusive, though I'm getting closer. Enabling the shader to also "fill in" the clipped plane is something I've been working on, but have been trying to focus on getting renders that are at least matching the existing results before trying to develop the novel aspects.