Giter VIP home page Giter VIP logo

oot3d-importer's People

Contributors

meltyplayer avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

Forkers

andree12

oot3d-importer's Issues

Questions about MM3D mesh import.

Hi. I have a few questions about importing MM3D scene models.

I noticed that MM3D isn't checked off on the "To Do" section of your readme, so I assume that means "its not 100% compatible yet." But since MM3D uses a pretty similar CMB format, I've found that many of the MM3D CMB files do import correctly with no issues. Awesome!

Question 1:

I know that in order to convert a ZSI file into a CMB, I have to use a hex editor to remove the ZSI header part from the file. I can do this myself, no issue. So I was wondering if: is there any specific reason that this addon itself can't read the ZSI directly, and simply skip over the bytes for the ZSI header by searching for the CMB header part? Is that planned for the future?

If not, do you know of any tool (a program or python script, etc) that can automatically remove the ZSI header from multiple files in bulk, so I that I don't have to do this manually?

If not, I suppose I can figure out a python script myself that would be able to do this.

Question 2:

I've noticed that some of the ZSI files forMM3D have an additional header before the ZSI section that starts with "LzS". I did a bit of research and my best guess is that this has something to do with "LZSS compression", as the data in the files also appears to be compressed. Likewise, I noticed that this addon does not seem to be able to read these ZSI/CMB files, I'm guessing because of they byte compression.

Is there any plan for supporting these files?

If not, do you know of any tool that can decode the LZSS compression (assuming I'm right about this) and extract the ZSI file in an uncompressed state?

I noticed the N3DSCmbViewer is able to open these compressed ZSI files directly. But my issue with that tool is that it doesn't seem possible to then extract the CMB from the ZSI once loaded (it appears to be disabled for Scene files). Also, the N3DSCmbViewer has Collada export, but the resulting DAE file has some issues with UV accuracy, and the repo is also no longer being maintained.

Question 3:

Are there any plans for an updated 2.80+ version of this addon? I know the Blender API had a pretty big rewrite, as well as an overhaul with the material system. So I don't expect you to do a rewrite of the addon. A simple "yes" or "no" answer on this would be nice though.

So far I've found that importing into 2.79, saving the Blend file, and re-opening that Blend in 3.0, seems to work just fine. No data appears to be lost.


In terms of accuracy with ripping the meshes, your addon seems to be perfect -- correct UVs, correct Vertex RGBA, correct bone structure, etc. The only major issue is that I can't seem to find a way to import these compressed files.

If my assumptions about LZSS compression are correct, then I might be able to figure out a solution using Python. But I want to confirm that is the issue before I sink dozens of hours into a solution that's incorrect. So any comment you could make on this would be helpful. Thanks.

module 'math' has no attribute 'tau'

Traceback (most recent call last):
  File "C:\Users\***\AppData\Roaming\Blender Foundation\Blender\2.79\scripts\addons\io_scene_cmb-master\__init__.py", line 48, in execute
    return load_zar(self, context)
  File "C:\Users\***\AppData\Roaming\Blender Foundation\Blender\2.79\scripts\addons\io_scene_cmb-master\import_zar.py", line 65, in load_zar
    i == 0 # Clear armatures
  File "C:\Users\***\AppData\Roaming\Blender Foundation\Blender\2.79\scripts\addons\io_scene_cmb-master\import_csab.py", line 128, in import_anims
    quaternion = getQuaternionCsab(self.csab_parsed, cmb_bone, i)
  File "C:\Users\***\AppData\Roaming\Blender Foundation\Blender\2.79\scripts\addons\io_scene_cmb-master\utils.py", line 129, in getQuaternionCsab
    rotationX = sampleAnimationTrackRotation(node.rotationX, animFrame)
  File "C:\Users\***\AppData\Roaming\Blender Foundation\Blender\2.79\scripts\addons\io_scene_cmb-master\csab2.py", line 403, in sampleAnimationTrackRotation
    return sampleAnimationTrackHermiteRotation(track, frame)
  File "C:\Users\***\AppData\Roaming\Blender Foundation\Blender\2.79\scripts\addons\io_scene_cmb-master\csab2.py", line 358, in sampleAnimationTrackHermiteRotation
    r1 = r0 + differenceInRadians(r1, r0)
  File "C:\Users\***\AppData\Roaming\Blender Foundation\Blender\2.79\scripts\addons\io_scene_cmb-master\csab2.py", line 331, in differenceInRadians
    return ((((lhs - rhs) % math.tau) + (math.tau + math.pi)) % math.tau) - math.pi
AttributeError: module 'math' has no attribute 'tau'

Got this error when I import a zar file with animations. The version of Blender I used is 2.79b.

Materials imported as Cycles

If you import the materials as cycles, you can't pack textures into fbx when you export. It'd be great if you could provide an option to generate materials as blender native render materials.

If you have a solution to packing textures into fbx when using cycles I'd appreciate that too.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.