Skip to main content

Blog Archive

Solid Modeling Is Here: A New Way to Build

August 01, 2014

by adamintygum


Archive

Solid Modeling is a concept that has existed in the world of digital modeling for quite some time. There are many solid modeling techniques, including constructive solid geometry, which is essentially a scheme for combining (or de-combining) primitive objects to create a visually complex 3D product. We believe the idea of Solid Modeling will revolutionize the art of ROBLOX building and game creation, and we have officially launched it as a feature in ROBLOX Studio. Now, you can create more complex shapes by combining parts — and do so in a more efficient manner than ever. We can’t wait to see what our community creates with this newfound building freedom and flexibility. Let’s discuss what Solid Modeling means for your Studio experience, and the future of digital creation and distribution on ROBLOX.



New Concepts

As stated above, the general idea behind Solid Modeling is that you have more creative control over the things you build in ROBLOX Studio. This introduces three new concepts to building in Studio: Union Parts, Negate Parts and Separation.

Union Parts means that you can add separate parts together to create a complex part, than save that union as one part. Union parts represent the most basic application of Solid Modeling, but it’s arguably the most exciting aspect. This means that you can now create highly detailed parts made from many pieces, and fuse those pieces into a single part. This will go a long way in reducing graphics lag in many ROBLOX games, while allowing builders to create more complex creations, and share them efficiently.

Negated Parts represent the opposite end of the spectrum — you can now selectively remove shapes from existing parts to sculpt objects. The best example of this notion is a cup. Building a cup in ROBLOX Studio isn’t impossible, but it isn’t easy either. With Solid Modeling, you can generate a solid cylinder, then put a slightly smaller cylinder inside of it. Removing the inner cylinder hollows out the larger, outer cylinder, giving you a cup. Easy as that. To make a handle, follow a similar process. Make a horizontal cylinder, another inside it, then remove the inner cylinder, and move the handle into place.

The Separate feature lets you restore both Union and Negated parts back to their original state in Studio. If you want to tinker with a complex part another user has created, you can do so with each and every individual piece that went into the creation of the complex part.

Examples

Many developers on our Developer Forum have been experimenting with Solid Modeling, and have produced some amazing results. Check out this train that SpaceK531 built. The image above is the rendered train, and below it is the amount of parts the train saved with.

CSGTrain

As you can see, despite the many incredibly nuanced details, the train is saved as a model with less than 30 parts. How is this possible? The grates on the side of the train are a great example of Solid modeling. To make grates like that previously, you’d need to add hundreds of parts. With Solid Modeling, each of those grates were sculpted from a single part — selectively removed squares from single a 3D rectangle create the effect.

As we mentioned above, we’ve already seen some mind blowing examples of Selective Modeling from our community of developers and builders. Don’t take our word for it either — take a look at some of the creations that have surfaced already. Now that Solid Modeling is enabled, we can’t wait to see what you all continue to build and share. We’re not even close to done with this update either — our Studio team is currently hard at work tweaking the physics system to closely match the weight of the objects you create (removing pieces from a 3D object technically make it lighter — we’re on it!) and simulate collisions with complex surfaces.

CSGDiesoft

by DieSoft

CSGKriyaz

by Krixyaz

CSGShapes

by eprent

Demo

We demonstrated how to use the features of Solid Modeling in a live Twitch broadcast on release day. You can watch the archived video below.

Solid Modeling FAQ

What physics support is currently available for complex shapes?

ROBLOX currently only supports collisions between convex shapes (no holes, indentations or valleys). The current shapes we support are blocks, spheres, wedges and corner wedges.

What physics support is coming in the future?

With the initial introduction of Solid Modeling, we will treat all complex parts as a block the same size as its bounding box for collision and motion purposes. Coming shortly thereafter we will support collisions with Solid Modeling objects using a much more accurate representation of the object’s geometry. This collision shape will be based on a convex decomposition of the generalized complex shape, and will be able to handle holes and other concavities with respect to motion and contact. We’re also planning on making improvements in fidelity and performance for Solid Modeling, improvements in performance on terrain collisions, and new types of joints and improvements in fidelity.

How do Welded parts compare to Unioned parts?

From a physics perspective, a Unioned part requires fewer physics objects to be maintained in memory than the equivalent shape constructed with welds. However, a Welded part can be broken apart during simulation.

What happens when decals are applied to complex shape?

Decals will apply to the object as though they’re being beamed on a wall using a projector. It will project on all sides that the projector is facing.

What happens when parts of different colors are Unioned?

The color of the first part selected will take precedence over the second. If you Union a Negated part to a part with a different color, the color of the Negated part will peel off into that part’s surface.

What happens when parts of different materials are Unioned?

The material of the first part is used. Unions can not yet have different materials inside.