My 3DO converter relies on Panda3D library. I know its not the most ideal of dependencies but knowing how panda3d library works makes writing and experimenting easy.
Download it at:
http://panda3d.org/download.php
There is 2 key folders where the 3do data goes. In the ta goes the 3do fiels and in the ta-tex goes their textures.
clean.py
- First script is clean. It cleans out the working directories.
createseggs.py
- 3doeggs contains the exact representation of the 3do files it relies on ta-text folder to be present. Each individual face in these eggs maps to one texture .. so they are pretty much super slow on modern hardware.
mashuvs.py
- populates the uvmashedeggs folder with eggs that have all of their polygons mashed to a single uv sheet. This does not generate the textures.
gentexture.py
- this does the same thing as Mashuvs.py plus renders the texture into an image that the eggs it generates reference. Use this if you want to see the texture.
gentextures_withshaders.py
- Does pretty much what gentexture does except it populates the postprocessing egg folder and applies cleaner.sha shader to the resulting uv sheet. This program was pretty much my goal. After getting to this point I lost interest.
referencemaker.py
- Draws each ta model in several orthaganal views + creates a webpage to view them all.
createplate/createplate.py
- Here i isolated many of the reapting paters in the ota texture set and combine them into one mega texture in hopes to only use that for all of the resulting models.
Stuff that I would like others to do. Write an egg2s3o format so that resulting eggs could be converted into format that is used natively by spring.
Or you can use egg2x program that comes with panda3d to convert the generated .egg files into .x files which could be imported in many major modeling apps.