GPU Cloth TOP in TouchDesigner using CUDA-enabled NVIDIA Flex

Overview

ClothTOP

This project demonstrates how to use NVIDIA FleX for GPU cloth simulation in a TouchDesigner Custom Operator. It also shows how to render dynamic meshes from the texture data using custom PBR GLSL material shaders inside TouchDesigner.

Features:

  • Cloth/inflatable simulation with controllable anchor points.
  • Triangle mesh collision.
  • Spheres, boxes and planes collisions.
  • Many controlable parameters like wind, gravity, adherence, stiffness, etc.

Demo Previews

Demos:

  • ClothTOP_dali.toe shows complex triangle mesh collision with multiple cloth bodies.
  • ClothTOP_inflatable.toe shows an inflatable body with dynamic pressure.
  • ClothTOP_cloak.toe shows a cloth body with animated anchor points.

Install NVIDIA FleX

  • Download FleX 1.2 (get access here).
  • Create a new environment variable called NvFlexDir that holds the path to the /flex folder you unpacked.

Compilation

  • Install the CUDA SDK you want to use.
  • Generate the Visual Studio project using CMake.
  • Building will automatically copy the .dll to the Plugins folder. If instead you are using the release, just create the Plugins folder yourself and place the .dll there.
  • TouchDesigner 2020.28110+ supported (tested on Windows 10).

3D Models

  • Dali 3D model (download and place the .fbx next to ClothTOP_dali.toe)
  • Inflatable 3D model (already in ClothTOP_inflatable.toe)
  • Cloak 3D model (already in ClothTOP_cloak.toe)

References

  • The FlexCHOP by Vincent Houzé provided a starting point for this project.

Known Issues

  • Moving anchors too fast can cause crashes with the solver not converging for extreme deltas.
  • The UV output mode can easily crash for certain meshes. Recommended use of Linear mode.
Issues
  • no plugin

    no plugin

    Hi vininja. Thanks for the the putting these files up for grabs. Being novice at compiling I have stubled trough the the setup. I had to download visual studio in order to make thus run. Maybe a good note in your readme, if correct.

    Anyway I ended up with a seemingly correct compilation in cmake, but with a red alert that 64 architecture was running. -and the plugin folder only containing a plugin text file with the contents: { "Version": 1 }

    You write about moving .dll files manually, but from where? Any advice on what to do would be greatly appreciated. Regards, Boya

    opened by cowboyab 1
Releases(0.3)
Owner
Vinícius Ginja
Vinícius Ginja
nvidia nvmpi encoder for streamFX and obs-studio (e.g. for nvidia jetson. Requires nvmpi enabled ffmpeg / libavcodec)

nvmpi-streamFX-obs nvidia nvmpi encoder for streamFX and obs-studio (e.g. for nvidia jetson. Requires nvmpi enabled ffmpeg / libavcodec) Purpose This

null 16 Jun 25, 2022
Hardware-accelerated DNN model inference ROS2 packages using NVIDIA Triton/TensorRT for both Jetson and x86_64 with CUDA-capable GPU.

Isaac ROS DNN Inference Overview This repository provides two NVIDIA GPU-accelerated ROS2 nodes that perform deep learning inference using custom mode

NVIDIA Isaac ROS 35 May 31, 2022
Raytracer implemented with CPU and GPU using CUDA

Raytracer This is a training project aimed at learning ray tracing algorithm and practicing convert sequential CPU code into a parallelized GPU code u

Alex Kotovsky 2 Nov 29, 2021
GPU ray tracing framework using NVIDIA OptiX 7

GPU ray tracing framework using NVIDIA OptiX 7

Shunji Kiuchi 22 Jun 11, 2022
A GPU (CUDA) based Artificial Neural Network library

Updates - 05/10/2017: Added a new example The program "image_generator" is located in the "/src/examples" subdirectory and was submitted by Ben Bogart

Daniel Frenzel 91 Jun 13, 2022
A easy-to-use image processing library accelerated with CUDA on GPU.

gpucv Have you used OpenCV on your CPU, and wanted to run it on GPU. Did you try installing OpenCV and get frustrated with its installation. Fret not

shrikumaran pb 4 Aug 14, 2021
Docker files and scripts to setup and run VINS-FUSION-gpu on NVIDIA jetson boards inside a docker container.

jetson_vins_fusion_docker This repository provides Docker files and scripts to easily setup and run VINS-FUSION-gpu on NVIDIA jetson boards inside a d

Mohamed Abdelkader Zahana 18 May 30, 2022
Golang bindings for Nvidia Datacenter GPU Manager (DCGM)

Bindings Golang bindings are provided for NVIDIA Data Center GPU Manager (DCGM). DCGM is a set of tools for managing and monitoring NVIDIA GPUs in clu

NVIDIA Corporation 27 Jun 15, 2022
waifu2x converter ncnn version, runs fast on intel / amd / nvidia GPU with vulkan

waifu2x ncnn Vulkan ncnn implementation of waifu2x converter. Runs fast on Intel / AMD / Nvidia with Vulkan API. waifu2x-ncnn-vulkan uses ncnn project

null 2.1k Jun 24, 2022
4eisa40 GPU computing : exploiting the GPU to execute advanced simulations

GPU-computing 4eisa40 GPU computing : exploiting the GPU to execute advanced simulations Activities Parallel programming Algorithms Image processing O

Ecam 4MIN repositories 2 Jan 10, 2022
We implemented our own sequential version of GA, PSO, SA and ACA using C++ and the parallelized version with CUDA support

We implemented our own sequential version of GA, PSO, SA and ACA using C++ (some using Eigen3 as matrix operation backend) and the parallelized version with CUDA support. All of them are much faster than the popular lib scikit-opt.

Aron751 4 May 7, 2022
A coverage-guided and memory-detection enabled fuzzer for windows applications.

WDFuzzer Manual 中文手册见 README_CN.md WDFuzzer:winafl + drmemory WDFuzzer is an A coverage-guided and memory detection abled fuzzer for for windows softw

Jingyi Shi 24 Apr 6, 2022
A VA-API implemention using NVIDIA's NVDEC

nvidia-vaapi-driver This is an VA-API implementation that uses NVDEC as a backend. This implementation is specifically designed to be used by Firefox

Stephen 468 Jun 22, 2022
A CUDA implementation of Lattice Boltzmann for fluid dynamics simulation

Lattice Boltzmann simulation I am conscious of being only an individual struggling weakly against the stream of time. But it still remains in my power

Long Nguyen 17 Mar 1, 2022
Tiny CUDA Neural Networks

This is a small, self-contained framework for training and querying neural networks. Most notably, it contains a lightning fast "fully fused" multi-layer perceptron as well as support for various advanced input encodings, losses, and optimizers.

NVIDIA Research Projects 1.4k Jun 22, 2022
BM3D denoising filter for VapourSynth, implemented in CUDA

VapourSynth-BM3DCUDA Copyright© 2021 WolframRhodium BM3D denoising filter for VapourSynth, implemented in CUDA Description Please check VapourSynth-BM

null 48 Jun 9, 2022
HIPIFY: Convert CUDA to Portable C++ Code

Tools to translate CUDA source code into portable HIP C++ automatically

ROCm Developer Tools 160 Jun 24, 2022
Cooperative primitives for CUDA C++.

CUB provides state-of-the-art, reusable software components for every layer of the CUDA programming model

NVIDIA Corporation 1.2k Jun 25, 2022