/Destiny-Collada-Generator

A program to generate Collada files of items from Destiny 2

Primary LanguageC#

Destiny Collada Generator

A program to generate Collada files of items from Destiny 2

Features:

This program is capable of generating a 3D model of any item available through Destiny 2's web/mobile api and exporting said model in Collada format, with all data intact. Items on this list will be checked off as they are implemented.

  • Core functions

    • Export geometry
    • Export mesh weights
    • Export UV texture coordinates
    • Export per-face vertex normals and tangents
    • Export vertex colors
    • Export dye slots for compatibility with D2 model rippers' shaders
  • API support

    • Call files to convert from the API by item hash
    • Convert files from the D1 API by item hash
  • Additional features

    • Generate textures for items in .png format
    • Generate a list of shader parameters for items, in an easy-to-understand layout

Recommended addons:

Destiny uses a lot of custom normals for models because geometry normals tend to get weird pucker marks when the mesh is brought down to game-quality. Blender doesn't natively support importing those custom normals though (at least, not for Collada files), so I made TiredHobgoblin/io_import_collada_normals to do that.

Note about use on Linux:

This tool requires GDI+ to function properly, which cannot be packaged with the Linux distribution of it. GDI+ can be installed on Linux by running the following commands:

sudo add-apt-repository ppa:quamotion/ppa
sudo apt-get update
sudo apt-get install -y libgdiplus

Error reporting:

If the program exits without warning (command line closes on its own in the middle of converting), it's likely due to a bug or error. If this happens, create a new issue on the github repo, including the TGXM file or item hash that caused the crash. I'll push out an updated version of the program once the issue is fixed.

Join the Destiny Model Rips Discord server!

The DMR Discord server has tutorials for working with the models produced by this tool, as well as a drive full of models already prepared for use and help channels for any issues you might run into while working with this tool or Destiny models in general. No commitment required, all of the models and tutorials are free to access.

Code attributions:

This program uses:

Large sections of code adapted from Lowlines' TGX loader for three.js, as well as their online manifest

Burtsev Alexey's .NET deep copy extension method

Alexandre Mutel's patch of the C# COLLADA specification classes