- Create an example
test.gdsfile. - Animate it in Blender with the layers seperating and rotating.
- Upload a .gif to the
README.mdas the header image.
- Create and display a working .gltf file in Blender using GDS2glTF.
- Get the GDS2glTF code running.
- Display the .gltf file in blender.
- Debug the placing of the individual components! Currently, x and y seem to be correct, but not the angle a.
- Now the angle seems correct. But the placing is all at the origin. Fix this.
- Scale down the size! Right now it is so large, Blender is only showing items within a certain distance.
- Fix bug where flipped or flopped objects are not positioned correctly.
- [-] Give the layers the correct height and depth in the z-direction. This can be done by modifying the
layers.py. - Add optional argument to merge cells within layers to avoid crossing rendering artifacts!
-
finger.blendcontains a scene with a substrate on top a finger. Import your file and place it there. Simple lighting and animation has been preset so you can simply go ahead and render a short animation already. -
coin.blendprovides a simple scene with a white/grey background under studio lighting and a coin for reference. -
packaging.blendprovides a demo scene with a chip being packaged including bonding.
- Install tinytapeout_gds_viewer.
- Install GDS2glTF. (Also compare to https://github.com/mbalestrini/gdsiistl.)
- Install tinytapeout_gds_viewer.
- Convert your .gds file to a .gds.gltf file using GDS2gITF.
- View the .gds.gltf file in the browser using the gds viewer.
- Write a Python wrapper to convert and display any .gds in the browser with just a simple function and create a unified repository that is easy to use & understand.
- Add grid view (showing only the edges/lines) for a more tron feel.
- Export to Blender (.stl can be imported in Blender!) (See this tutorial)
- Add materials and ray tracing (maybe just do this in blender).
- Export the view in high res .png with or without background from the live view.
- Give the layers materials directly in the
layers.py. Use reference images. - Add a substrate layer.
- Add boolean operations to mimic growth and edging.
- Integrate a 3D renderer using C++ or Python to show and render the file without any third-party software.
https://github.com/trilomix/GDS3D is a different 3D .gds viewer using C++ that seems quite advanced yet hasn't been updated in 4 years.
This first version was built to create .glTF 3D files from SDK130 PDK .gds files. Alot of the work is based on the gdsiistl repo: https://github.com/dteal/gdsiistl which then continued in https://github.com/mbalestrini/GDS2glTF.
.glTF (GL Transmission Format) is used for 3D models in both web and native applications like Blender, Unity3D, Unreal Engine 4, or Godot. See Blender's docs for more information.