Skip to main content

Blog Archive

Physics Support Comes to Solid Modeling

November 10, 2014

by Khanovich


Archive

The recent release of our Solid Modeling tool ushered in a new and exciting era of creation, in which builders and developers have the ability to create complex objects using ROBLOX’s primitives as a foundation. We’ve seen the potential of the feature become a reality, with a plethora of impressive games and worlds leveraging the tool to great visual effect. Today, Solid Modeling has received its first substantial upgrade: accurate physics simulation for complex objects.

In the original Solid Modeling release, you could use the Union function to craft, say, a hammer, as a single complex object out of multiple parts, but that hammer was still simulated as a block the same size as its bounding box for collision and motion purposes. By bringing physics simulation to the hammer, it interacts with the environment realistically, meaning, for example, it’ll fall to the ground, bounce, and come to rest in a physically accurate way. By the same token, you could use the Negate function to hollow out a single cylinder and build the fuselage of a plane, but players couldn’t walk through it. More refined collision detection allows characters to move through the interior.

The next time you’re building and you generate a Part Operation by performing a Union or Negate, our physics engine will treat the resulting complex object as a series of parts rather than a single block with a general bounding box. This new capability simply looks at the object you created and attempts to break it down into smaller parts. The algorithm we use takes into account the size of the entire object and focuses on prioritizing larger features over smaller features. This means that some small details will not be seen by the physical world, as they would unnecessarily slow the calculation process.

If you’re like me and want to actually see how this process applies to your creations, you can! In Studio, click File > Settings > Physics > ShowDecompositionGeometry. This new system will show you how ROBLOX physics perceive your Solid Modeling creations.

If you already have a published game that uses Solid Modeling, those complex objects will continue acting within their original confines until you open the level in Studio and allow the new physics calculations to take place. This release is the baseplate to additional updates we’ll be making to our Solid Modeling system — we’re working on better performance and more realistic collision behaviors. As always, we’re excited to see what our builders are able to create with this powerful new feature. Link us to your game in the comments if you have something cool to share!

aircraft-showcase-by-Steven1411

solid-modeling-showcase-by-ShareYourCups

Editor’s note: the development of Solid Modeling physics was a joint effort between Tim “timobius” Loduha and Val “Khanovich” Gorbunov.