VICO Dynamics

Written by Ujen Tchoukhrov on . Posted in VICO Dynamics

A Particle Based Physics Library for Soft-Body Physics



Originally created as a pure UE4 plugin for our game, CHIKARA: Action Arcade Wrestling, in order to create physically simulated Ring Ropes. It was originally called VICO Dynamic Rope System Plugin but was limited in many ways.

This library is the evolution of the VICO Dynamic Rope System Plugin; not only is this library essentially engine independent (almost true at the moment, requires external Rigid Body physics interface, PhysX in the case of UE4) but it also simulates a much more accurate system with higher performance, support for multi-threaded simulation, and most importantly: is in no way limited to just simulating ropes!

VICODynamics can now simulate cloth, either procedurally created sheets or by converting Static Meshes into Cloth, with collision, attachments, tension constraints, drag modifiers, applied forces and physically simulated wind with support for Occlusion! And volume preserving soft-bodies are coming soon followed by fluids.

The beauty of using a particle based simulation is that you are never limited in what you can create out of particles and constraints.

Another big feature of VICO Dynamics; is that it runs on the CPU. This means it supports a wide variety of platforms: PC/Mac/Linux, Mobile and Console! No dependencies to any hardware. Has been tested on Windows/Linux/Mac, Xbox One, PS4/Pro and is being tested on the Nintendo Switch now.

Integrates with any environment/Engine via C++

Direct UE4 integration via the provided Plugin

This plugin provides direct integration of the VICODynamics library into UE4 with Blueprint and C++ support. With many native UE4 features to make the experiance as seamless as possible.

This plugin is provided free of charge with the purchase of a VICODynamics license. If you purchased this plugin through the UE4 Marketplace, you essentially purchased a VICODynamics license with this plugin included.

Below are a few photos showing the plugin working with UE4 and just some of the features available.

Performance

The entire Example project, shown in the above screenshots, runs at ~7ms on a Core i7 6800k in Single threaded mode. That is nearly 50 soft-bodies simulating all at once with particle and rigid-body collision enabled. The actual simulation bit only takes ~3ms, the rest is used up by the rather poor PhysX Query performance. Which is, unfourtinately, out of my hands. Enabling multi-threaded mode will nearly half that down to ~4.5ms-5ms and going even furher: the entire simulation can be setup to run completely asynchronously to the game thread!

Feature Rundown Video

This video does a quick rundown of the features in VICODynamics.

Showcase

Here is a video of a Showcase level created using many features of VICODynamics. Captured in realtime on an i7 6800k with a GTX 1080 ti at 4k 60fps. This level uses 8,000 Particles and over 60,000 Constraints! All running at over 60fps in single-threaded mode and over 100fps in multi-threaded mode!

Licensing

I wanted to setup the best license I could for this new library and here is what I came up with:

  • Full source access to all licensees via GitHub!
  • Free upgrade for everyone who purchased our VICO Dynamic Rope Plugin
  • Everything above for only $79.99.

Available on the Unreal Engine Marketplace

The above are the main points of the license, for the full license details send an enquiry to This email address is being protected from spambots. You need JavaScript enabled to view it.

If you are using VICO Dynamics in your game I'd love to hear about it, send an email: This email address is being protected from spambots. You need JavaScript enabled to view it.

Purchase a License

If you are looking to use the VICO Dynamics library in your game; just send us an email to This email address is being protected from spambots. You need JavaScript enabled to view it. and we'll be happy to get everything setup for you.

If you are using Unreal Engine 4, you can get it now from the Marketplace!