• Stars
    star
    109
  • Rank 319,077 (Top 7 %)
  • Language
    Python
  • License
    GNU General Publi...
  • Created over 5 years ago
  • Updated 11 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Blender 2.80 add-on that enables the use of V-HACD inside Blender to generate accurate convex hulls quickly.

Update: This addon is unsupported. It no longer works reliably in recent versions of Blender, and since I don't actually use the V-HACD tool at all, I am not going to update the addon any more.

V-HACD For Blender 2.80

Blender 2.80 conversion of Phymec's add-on that enables the use of V-HACD for quick and accurate convex decomposition of arbitrary meshes inside Blender. It uses the V-HACD algorithm, developed by Khaled Mammou.

Installation

Note: This add-on requires Blender 2.80 and the V-HACD executable to work. Before installing the add-on, make sure you have a copy of V-HACD installed somewhere on your computer. You will only need a single file (testVHACD.exe) for this add-on to work. You can directly download the required executable from the following links: Win | OSX (Requires OpenCL), Win | OSX (No OpenCL required)

  1. Download the add-on here.
  2. In Blender, open the Preferences window (Edit>Preferences) and select the Add-ons tab.
  3. Press the 'Install...' button and select the .zip file you downloaded.
  4. Enable the add-on and set the VHACD Path to point to the testVHACD.exe file that you previously downloaded.
  5. Save preferences so that the add-on is always enabled.

Add-on Preferences

This addon stores some general settings inside its entry under the Add-ons tab of the Blender Preferences window.

V-HACD Preferences

  • VHACD Path The path to the V-HACD Executable. This is required for the add-on to be able to generate convex hulls for objects. See the above installation notes for a download link.

  • Temp Path A Path for temporary files created by the add-on and V-HACD executable while in operation. By default, Blender's temp directory is used, so you shouldn't need to change anything in most cases.

  • Name Template A name template used when creating, renaming and selecting convex hulls. Change this to align with any external application (such as a game engine) you may be generating colliders for. For more details on the format of the name template, see explanation in the Rename Hulls operator below.


Usage

Once the add-on is installed correctly, it can be used very easily by selecting meshes and running the 'Convex Hull (V-HACD)' operator, which can be found from the Blender operator search menu.

V-HACD Operation

Convex Hull (V-HACD)

Takes one or more meshes of arbitrary geometry and generates convex hulls which are suitable for use in real-time applications such as games. Generated hulls will be named based on the 'Name Template' setting in the add-on preferences.

  • Remove Doubles (On) - Remove duplicate vertices from the mesh before running V-HACD on it. This may improve the resulting convex hulls. Note that this operates on a duplicate mesh, so the original data will be untouched.

  • Apply (None) - Apply transformations on the mesh before running V-HACD on it. Note that this operates on a duplicate mesh, so the original data will be untouched.

For a full description of what all the V-HACD parameters do, please see the documentation on the V-HACD Github page. Note that you can save the parameters to a preset using the dropdown menu at the top of the operator panel if you find particular settings that work well for your use.

Rename Hulls

Renames objects in the selection based on the name of the active object and a name template. This is useful if the name of the original object changes. The name template defaults to the 'Name Template' setting in the add-on preferences, but can be changed directly in the operator redo panel.

  • Name Template (?_hull_#) - The name template to use. '?' in the template will be replaced with the name of the active object and '#' will be replaced with the id of each hull. For example, '?_hull_#' becomes 'Suzanne_hull_3' for the third hull of the object named 'Suzanne'. Only the first occurence of each character will be replaced.

  • Set Display (On) - Set the draw mode of selected objects to wireframe to make it easier to see that they are hulls of another object.

Select Hulls

Selects existing convex hulls in the scene based on the name template set in the add-on preferences. This will only work if the name template contains a '?' character, which represents the name of the selected object. For example, if the name template is '?_hull_#' and the selected object is named 'wall_1', then it would match hulls named 'wall_1_hull_2', 'wall_1_hull_63', etc. and select them all.

  • Only Hulls (Off) - Select only the hulls of the selected object(s), and deselect everything else.

More Repositories

1

blender_vertex_color_master

Blender addon for working more precisely with vertex colours.
Python
359
star
2

blender_io_mesh_bsp

Blender addon that imports Quake BSP files
Python
108
star
3

mp4_to_mp3

Small Python script for converting mp4 video to mp3 audio. Requires mplayer and lame to actually do the hard work.
Python
92
star
4

blender_io_mesh_qmap

Quake .map to Blender importer
Python
36
star
5

quake_web_tools

Tools for viewing Quake 1 file formats on the web
JavaScript
15
star
6

canvas_danmaku

Danmaku (bullet hell) style shooting game using HTML5 canvas and written in Javascript
JavaScript
11
star
7

blender_ue4_export_tools

A script for Blender to assist with exporting objects and scenes to Unreal Engine 4.
Python
8
star
8

ergamigo

Utility for sending data from a Concept 2 rower to a connected client via websockets.
Python
6
star
9

godot_UnrealCollisionImporter

An import script that imports manually created collision data set up for Unreal into Godot
GDScript
5
star
10

blender_mesh_masked_smooth_normals

A Blender script for smoothing normals based on selection
Python
4
star
11

playdate_pulse

Clear each stage within a strict timelimit
Lua
4
star
12

blender_addon_tutorial

Code for article appearing in Wireframe magazine
Python
4
star
13

canvas_tetris

A clone of Gameboy Tetris using HTML5 canvas written in javascript.
JavaScript
4
star
14

godot_BaseProject3d

Basic 3d project for getting started in Godot
GDScript
2
star
15

godot_MagnetMechs

Mech game for Mech Jam 2 on itch.io
GDScript
2
star
16

GMSyntax

GameMonkey Syntax for Sublime Text
2
star
17

godot_santa

Port of old canvas game to Godot
GDScript
1
star
18

BulletSponge

Bullet hell shooter for Playdate where the player must soak up bullets to survive
Lua
1
star
19

Unity_FPS_Experiments

Unity project for simple Quake-style FPS with custom player controller
C#
1
star
20

Unity_MeshGeneration

Simple test of procedural mesh generation in Unity
C
1
star