{"repo":"huxingyi/dust3d","free":true,"listed":false,"github":"https://github.com/huxingyi/dust3d","clone":"git clone https://github.com/huxingyi/dust3d.git","description":"Dust3D is a cross-platform 3D modeling software that makes it easy to create low poly 3D models for video games, 3D printing, and more.","language":"C++","stars":3463,"topics":["3d","3d-modelling","3d-printing","dust3d","game-development","low-poly"],"license":"MIT","category":"creative_tool","readme_excerpt":"# Dust3D\n\nDust3D is a cross-platform 3D modeling software that makes it easy to create 3D models for video games, 3D printing, and more. It features built-in rigging, procedural animation and UV unwrapping, with export to GLB and FBX formats.\n\nFor more information, visit [dust3d.org](https://dust3d.org/).\n\n## Getting Started\n\nThese instructions will get you a copy of Dust3D up and running on your local machine for development and testing purposes.\n\n### Prerequisites\n\n- Qt 6 (recommended) or Qt 5, with the following modules: qtbase, qtsvg, qtmultimedia\n- C++ compiler with C++17 support\n\n#### Windows\n\n1. Download and install the `Qt Online Installer`\n2. Run the installer and choose the Qt 6 archives you want to install (required: qtbase, qtsvg, qtmultimedia)\n3. Install Visual Studio 2022\n\n#### macOS\n\n1. Install Qt via Homebrew: `brew install qt`\n2. Install Xcode Command Line Tools: `xcode-select --install`\n\n#### Linux\n\n1. Install Qt 6 using your distribution's package manager:\n   - Ubuntu/Debian: `sudo apt install qt6-base-dev qt6-svg-dev qt6-multimedia-dev libgl-dev`\n   - Fedora: `sudo dnf install qt6-qtbase-devel qt6-qtsvg-devel qt6-qtmultimedia-devel`\n\n### Building\n\n1. Clone the repository\n```\ngit clone https://github.com/huxingyi/dust3d.git\n```\n\n2. Build using qmake\n\n#### Windows\n\n1. Open the Qt Creator IDE\n2. Select \"Open Project\" from the File menu\n3. Navigate to the project directory `dust3d/application` and open the `.pro` file\n4. Select the desired build configuration (e.g. Debug or Release) from the dropdown menu at the bottom left of the window\n5. Click the \"Run\" button to build and run the project\n\n#### macOS / Linux\n\n1. Change to the project directory `dust3d/application`\n2. Run `qmake` to generate a Makefile\n3. Build the project using `make`\n\n### Releasing\n\n1. Make sure all changes are merged to master branch including CHANGELOGS update\n2. Run `git tag <version>` (e.g. `git tag 1.1.0`)\n3. Run `git push origin <version>`\n4. Wait for Actions/release to finish and download all the Artifacts\n5. Go to `Tags/<version>` and create release from tag\n6. Title the release as `<version>`\n7. Copy description from CHANGELOGS\n8. Drag the Artifacts to binaries: `Dust3D-win32-x86_64.zip`, `Dust3D-x86_64.AppImage`, `Dust3D.dmg`\n9. Publish release\n\n## License\n\nDust3D is licensed under the MIT License - see the [LICENSE](https://github.com/huxingyi/dust3d/blob/master/LICENSE) file for details.\n\n<!-- Sponsors begin --><!-- Sponsors end -->\n","default_branch":"master","files":473,"tree":[".clang-format",".github/FUNDING.yml",".github/skills/dust3d-export/SKILL.md",".github/skills/dust3d-generate-from-image/SKILL.md",".github/workflows/debug.yml",".github/workflows/development.yml",".github/workflows/release.yml",".github/workflows/update-sponsors.yml",".gitignore","ACKNOWLEDGEMENTS.html","AUTHORS","CHANGELOGS","CONTRIBUTORS","LICENSE","README.md","SUPPORTERS","application/application.pro","application/dust3d.icns","application/dust3d.rc","application/favicon.ico","application/resources.qrc","application/resources/checkmark.svg","application/resources/dust3d-vertical.png","application/resources/dust3d.xcf","application/resources/preview_model_first.xml","application/resources/preview_model_fourth.xml","application/resources/preview_model_second.xml","application/resources/preview_model_third.xml","application/resources/rig_biped.xml","application/resources/rig_bird.xml","application/resources/rig_fish.xml","application/resources/rig_insect.xml","application/resources/rig_quadruped.xml","application/resources/rig_snake.xml","application/resources/rig_spider.xml","application/resources/toolbar_add.svg","application/resources/toolbar_add_green.svg","application/resources/toolbar_add_red.svg","application/resources/toolbar_pointer.svg","application/resources/toolbar_radius.svg","application/resources/toolbar_radius_disabled.svg","application/resources/toolbar_x.svg","application/resources/toolbar_x_disabled.svg","application/resources/toolbar_y.svg","application/resources/toolbar_y_disabled.svg","application/resources/toolbar_z.svg","application/resources/toolbar_z_disabled.svg","application/shaders/model.frag","application/shaders/model.vert","application/shaders/model_core.frag","application/shaders/model_core.vert","application/shaders/model_wasm.frag","application/shaders/model_wasm.vert","application/shaders/monochrome.frag","application/shaders/monochrome.vert","application/shaders/monochrome_core.frag","application/shaders/monochrome_core.geom","application/shaders/monochrome_core.vert","application/shaders/monochrome_wasm.frag","application/shaders/monochrome_wasm.vert","application/shaders/scene_ground.frag","application/shaders/scene_ground_core.frag","application/shaders/scene_model.frag","application/shaders/scene_model_core.frag","application/shaders/scene_outline.frag","application/shaders/scene_outline.vert","application/shaders/scene_outline_core.frag","application/shaders/scene_outline_core.vert","application/shaders/shadow_map.frag","application/shaders/shadow_map.vert","application/shaders/shadow_map_core.frag","application/shaders/shadow_map_core.vert","application/shaders/world_ground.frag","application/shaders/world_ground.vert","application/shaders/world_ground_core.frag","application/shaders/world_ground_core.vert","application/shaders/world_model.frag","application/shaders/world_model.vert","application/shaders/world_model_core.frag","application/shaders/world_model_core.vert","application/sources/about_widget.cc","application/sources/about_widget.h","application/sources/animation_manage_widget.cc","application/sources/animation_manage_widget.h","application/sources/animation_parameter_table.h","application/sources/animation_preview_worker.cc","application/sources/animation_preview_worker.h","application/sources/bone_manage_widget.cc","application/sources/bone_manage_widget.h","application/sources/bone_property_widget.cc","application/sources/bone_property_widget.h","application/sources/bone_structure.h","application/sources/ccd_ik_resolver.cc","application/sources/ccd_ik_resolver.h","application/sources/component_breadcrumb_widget.cc","application/sources/component_breadcrumb_widget.h","application/sources/component_list_model.cc","application/sources/component_list_model.h","application/sources/component_preview_grid_widget.cc","application/sources/component_preview_grid_widget.h","application/sources/component_preview_images_decorator.cc","application/sources/component_preview_images_decorator.h","application/sources/component_property_widget.cc","application/sources/component_property_widget.h","application/sources/cut_face_preview.cc","application/sources/cut_face_preview.h","application/sources/debug.cc","application/sources/debug.h","application/sources/document.cc","application/sources/document.h","application/sources/document_component.cc","application/sources/document_edge.cc","application/sources/document_node.cc","application/sources/document_part.cc","application/sources/document_saver.cc","application/sources/document_saver.h","application/sources/document_window.cc","application/sources/document_window.h","application/sources/export_animation_worker.cc","application/sources/export_animation_worker.h","application/sources/export_progress_widget.cc","application/sources/export_progress_widget.h","application/sources/fbx_file.cc","application/sources/fbx_file.h","application/sources/float_number_widget.cc","application/sources/float_number_widget.h","application/sources/flow_layout.cc","application/sources/flow_layout.h","application/sources/glb_file.cc","application/sources/glb_file.h","application/sources/glb_forever.cc","application/sources/glb_forever.h","application/sources/glb_reader.cc","application/sources/glb_reader.h","application/sources/graphics_container_widget.cc","application/sources/graphics_container_widget.h","application/sources/horizontal_line_widget.cc","application/sources/horizontal_line_widget.h","application/sources/image_forever.cc","application/sources/image_forever.h","application/sources/image_preview_widget.cc","application/sources/image_preview_widget.h","application/sources/info_label.cc","application/sources/info_label.h","application/sources/int_number_widget.cc","application/sources/int_number_widget.h","application/sources/log_browser.cc","application/sources/log_browser.h","application/sources/log_browser_dialog.cc","application/sources/log_browser_dialog.h","application/sources/main.cc","application/sources/mesh_generator.cc","application/sources/mesh_generator.h","application/sources/mesh_preview_images_generator.cc","application/sources/mesh_preview_images_generator.h","application/sources/model_mesh.cc","application/sources/model_mesh.h","application/sources/model_offscreen_render.cc","application/sources/model_offscreen_render.h","application/sources/model_opengl_object.cc","application/sources/model_opengl_object.h","application/sources/model_opengl_program.cc","application/sources/model_opengl_program.h","application/sources/model_opengl_vertex.h","application/sources/model_widget.cc","application/sources/model_widget.h","application/sources/monochrome_mesh.cc","application/sources/monochrome_mesh.h","application/sources/monochrome_opengl_object.cc","application/sources/monochrome_opengl_object.h","application/sources/monochrome_opengl_program.cc","application/sources/monochrome_opengl_program.h","application/sources/monochrome_opengl_vertex.h","application/sources/part_manage_widget.cc","application/sources/part_manage_widget.h","application/sources/preferences.cc","application/sources/preferences.h","application/sources/preview_grid_view.cc","application/sources/preview_grid_view.h","application/sources/preview_overlay_controller.cc","application/sources/preview_overlay_controller.h","application/sources/rig_generator_worker.h","application/sources/rig_skeleton_mesh_generator.cc","application/sources/rig_skeleton_mesh_generator.h","application/sources/rig_skeleton_mesh_worker.cc","application/sources/rig_skeleton_mesh_worker.h","application/sources/scene_ground_opengl_program.cc","application/sources/scene_ground_opengl_program.h","application/sources/scene_opengl_program.cc","application/sources/scene_opengl_program.h","application/sources/scene_outline_opengl_program.cc","application/sources/scene_outline_opengl_program.h","application/sources/scene_widget.cc","application/sources/scene_widget.h","application/sources/shadow_opengl_program.cc","application/sources/shadow_opengl_program.h","application/sources/skeleton_graphics_edge_item.cc","application/sources/skeleton_graphics_edge_item.h","application/sources/skeleton_graphics_node_item.cc","application/sources/skeleton_graphics_node_item.h","application/sources/skeleton_graphics_origin_item.cc","application/sources/skeleton_graphics_origin_item.h","application/sources/skeleton_graphics_selection_item.cc","application/sources/skeleton_graphics_selection_item.h","application/sources/skeleton_graphics_widget.cc","application/sources/skeleton_graphics_widget.h","application/sources/skeleton_ik_mover.cc","application/sources/skeleton_ik_mover.h","application/sources/spinnable_toolbar_icon.cc","application/sources/spinnable_toolbar_icon.h","application/sources/steps_replay_window.cc","application/sources/steps_replay_window.h","application/sources/theme.cc","application/sources/theme.h","application/sources/toolbar_button.cc","application/sources/toolbar_button.h","application/sources/turnaround_image_editor_dialog.cc","application/sources/turnaround_image_editor_dialog.h","application/sources/turnaround_loader.cc","application/sources/turnaround_loader.h","application/sources/turnaround_overlay_widget.cc","application/sources/turnaround_overlay_widget.h","application/sources/uv_map_generator.cc","application/sources/uv_map_generator.h","application/sources/version.h","application/sources/world_ground_opengl_object.cc","application/sources/world_ground_opengl_object.h","application/sources/world_ground_opengl_program.cc","application/sources/world_ground_opengl_program.h","application/sources/world_ground_opengl_vertex.h","application/sources/world_opengl_program.cc","application/sources/world_opengl_program.h","application/sources/world_widget.cc","application/sources/world_widget.h","application/third_party/QtAwesome/LICENSE.md","application/third_party/QtAwesome/QtAwesome/QtAwesome.cpp","application/third_party/QtAwesome/QtAwesome/QtAwesome.h","application/third_party/QtAwesome/QtAwesome/QtAwesome.pri","application/third_party/QtAwesome/QtAwesome/QtAwesome.pro","application/third_party/QtAwesome/QtAwesome/QtAwesome.qrc","application/third_party/QtAwesome/QtAwesome/QtAwesomeAnim.cpp","application/third_party/QtAwesome/QtAwesome/QtAwesomeAnim.h","application/third_party/QtAwesome/QtAwesome/fonts/fontawesome-4.7.0.ttf","application/third_party/QtAwesome/QtAwesomeSample/QtAwesomeSample.pro","application/third_party/QtAwesome/QtAwesomeSample/main.cpp","application/third_party/QtAwesome/README.md","application/third_party/QtWaitingSpinner/.gitignore","application/third_party/QtWaitingSpinner/LICENSE","application/third_party/QtWaitingSpinner/README.md","application/third_party/QtWaitingSpinner/qtwaitingspinner.pri","application/third_party/QtWaitingSpinner/qtwaitingspinner.pro","application/third_party/QtWaitingSpinner/waitingspinnerwidget.cpp","application/third_party/QtWaitingSpinner/waitingspinnerwidget.h","application/third_party/fbx/LICENSE","application/third_party/fbx/README.md","application/third_party/fbx/src/CMakeLists.txt","application/third_party/fbx/src/fbxdocument.cpp","application/third_party/fbx/src/fbxdocument.h","application/third_party/fbx/src/fbxdump.cpp","application/third_party/fbx/src/fbxnode.cpp","application/third_party/fbx/src/fbxnode.h","application/third_party/fbx/src/fbxproperty.cpp","application/third_party/fbx/src/fbxproperty.h","application/third_party/fbx/src/fbxutil.cpp","application/third_party/fbx/src/fbxutil.h","application/third_party/fbx/src/main.cpp","application/third_party/json/LICENSE.MIT","application/third_party/json/json.hpp","application/third_party/miniz/ChangeLog.md","application/third_party/miniz/LICENSE","application/third_party/miniz/examples/example1.c","application/third_party/miniz/examples/example2.c","application/third_party/miniz/examples/example3.c","application/third_party/miniz/examples/example4.c","application/third_party/miniz/examples/example5.c","application/third_party/miniz/examples/example6.c","application/third_party/miniz/miniz.c","application/third_party/miniz/miniz.h","application/third_party/miniz/readme.md","ci/appimage/bundle.sh","ci/appimage/dust3d.appdata.xml","ci/appimage/dust3d.desktop","ci/appimage/dust3d.png","ci/lint.sh","ci/screenshot.png","ci/test_models.py","dust3d/animation/animation_generator.cc","dust3d/animation/animation_generator.h","dust3d/animation/biped/cast.cc","dust3d/animation/biped/cast.h","dust3d/animation/biped/channel.cc","dust3d/animation/biped/channel.h","dust3d/animation/biped/die.cc","dust3d/animation/biped/die.h","dust3d/animation/biped/hurt.cc","dust3d/animation/biped/hurt.h","dust3d/animation/biped/idle.cc","dust3d/animation/biped/idle.h","dust3d/animation/biped/jump.cc","dust3d/animation/biped/jump.h","dust3d/animation/biped/roar.cc","dust3d/animation/biped/roar.h","dust3d/animation/biped/run.cc","dust3d/animation/biped/run.h","dust3d/animation/biped/slam.cc","dust3d/animation/biped/slam.h","dust3d/animation/biped/stab.cc","dust3d/animation/biped/stab.h","dust3d/animation/biped/walk.cc","dust3d/animation/biped/walk.h","dust3d/animation/bird/attack.cc","dust3d/animation/bird/attack.h","dust3d/animation/bird/die.cc","dust3d/animation/bird/die.h","dust3d/animation/bird/eat.cc","dust3d/animation/bird/eat.h","dust3d/animation/bird/fly.cc","dust3d/animation/bird/fly.h","dust3d/animation/bird/glide.cc","dust3d/animation/bird/glide.h","dust3d/animation/bird/idle.cc","dust3d/animation/bird/idle.h","dust3d/animation/bird/run.cc","dust3d/animation/bird/run.h","dust3d/animation/bird/walk.cc","dust3d/animation/bird/walk.h","dust3d/animation/common.h","dust3d/animation/fish/die.cc","dust3d/animation/fish/die.h","dust3d/animation/fish/idle.cc","dust3d/animation/fish/idle.h","dust3d/animation/fish/swim.cc","dust3d/animation/fish/swim.h","dust3d/animation/insect/attack.cc","dust3d/animation/insect/attack.h","dust3d/animation/insect/common.h","dust3d/animation/insect/die.cc","dust3d/animation/insect/die.h","dust3d/animation/insect/fly.cc","dust3d/animation/insect/fly.h","dust3d/animation/insect/idle.cc","dust3d/animation/insect/idle.h","dust3d/animation/insect/rub_hands.cc","dust3d/animation/insect/rub_hands.h","dust3d/animation/insect/walk.cc","dust3d/animation/insect/walk.h","dust3d/animation/quadruped/attack.cc","dust3d/animation/quadruped/attack.h","dust3d/animation/quadruped/die.cc","dust3d/animation/quadruped/die.h","dust3d/animation/quadruped/eat.cc","dust3d/animation/quadruped/eat.h","dust3d/animation/quadruped/hurt.cc","dust3d/animation/quadruped/hurt.h","dust3d/animation/quadruped/idle.cc","dust3d/animation/quadruped/idle.h","dust3d/animation/quadruped/roar.cc","dust3d/animation/quadruped/roar.h","dust3d/animation/quadruped/run.cc","dust3d/animation/quadruped/run.h","dust3d/animation/quadruped/walk.cc","dust3d/animation/quadruped/walk.h","dust3d/animation/snake/die.cc","dust3d/animation/snake/die.h","dust3d/animation/snake/idle.cc","dust3d/animation/snake/idle.h","dust3d/animation/snake/slither.cc","dust3d/animation/snake/slither.h","dust3d/animation/sound_event_detector.cc","dust3d/animation/sound_event_detector.h","dust3d/animation/sound_generator.cc","dust3d/animation/sound_generator.h","dust3d/animation/spider/die.cc","dust3d/animation/spider/die.h","dust3d/animation/spider/idle.cc","dust3d/animation/spider/idle.h","dust3d/animation/spider/run.cc","dust3d/animation/spider/run.h","dust3d/animation/spider/walk.cc","dust3d/animation/spider/walk.h","dust3d/base/axis_aligned_bounding_box.h","dust3d/base/axis_aligned_bounding_box_tree.cc","dust3d/base/axis_aligned_bounding_box_tree.h","dust3d/base/bone_binding.h","dust3d/base/color.h","dust3d/base/combine_mode.cc","dust3d/base/combine_mode.h","dust3d/base/cut_face.cc","dust3d/base/cut_face.h","dust3d/base/debug.h","dust3d/base/ds3_file.cc","dust3d/base/ds3_file.h","dust3d/base/math.h","dust3d/base/matrix4x4.h","dust3d/base/object.h","dust3d/base/part_target.cc","dust3d/base/part_target.h","dust3d/base/position_key.cc","dust3d/base/position_key.h","dust3d/base/quaternion.h"],"storefront":"/r/huxingyi","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/huxingyi/dust3d/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}