Hi Developers,
One of our goals for this year is enabling the quick creation of larger, more diverse worlds. Our roadmap to deliver on this goal involves a variety of improvements to the Smooth Terrain system. Today, we are happy to announce the launch of the first major feature - the Heightmap/Colormap Importer! The Importer can be found under the Import icon on the Terrain Editor Plugin.
New Limits
Using the Heightmap/Colormap Importer, you can quickly create terrain of enormous size. We’ve tested to ensure performance up to 16384x16384x1024 studs (4096x4096x256 voxels), which we have set as the current limit. Imported terrain can be centered at any chosen location in the world, allowing separate segments of terrain to be built if desired. N.B. All units in the Importer are in studs.
Technical Bits
The Importer expects PNG images for both the heightmap and the colormap. It’s best to provide a grayscale image for the heightmap but the importer will still work if given an RGB image - it will just select the value from the Red channel as the height information.
The PNG pixel channels provide 256 levels of height information. The importer will scale the terrain to the desired Y height and use a smoothing algorithm to remove stair-stepping artifacts.
A heightmap can be imported by itself - the terrain will be created with Asphalt as the default material. A colormap cannot be imported by itself - it requires a heightmap as the terrain base. Materials are interpreted from the below key. Colors not found on this key will be rounded to the nearest key value.
RGB Value | Material | RGB Value | Material | |
---|---|---|---|---|
[115,123,107] | Asphalt | [206,173,148] | Limestone | |
[30,30,37] | Basalt | [58,46,36] | Mud | |
[138,86,62] | Brick | [148,148,140] | Pavement | |
[132,123,90] | Cobblestone | [102,108,111] | Rock | |
[127,102,63] | Concrete | [198,189,181] | Salt | |
[232,156,74] | CrackedLava | [143,126,95] | Sand | |
[101,176,234] | Glacier | [137,90,71] | Sandstone | |
[106,127,63] | Grass | [63,127,107] | Slate | |
[102,92,59] | Ground | [195,199,218] | Snow | |
[129,194,224] | Ice | [139,109,79] | WoodPlanks | |
[115,132,74] | LeafyGrass | [12,84,92] | Water |
Have fun! Please let us know what you think! Feel free to post fun terrain creations in this thread.
[Update 6/28]
Hi All,
Thanks for trying out the Heightmap/Colormap Importer and all your fun creations! Unfortunately, we found a few critical bugs that are causing issues. We are turning the feature off while we diagnose and fix.
Thanks,
GeneralRelish
[Update 8/15]
Hi Developers,
Today, we are excited to re-release the Smooth Terrain Heightmap/Colormap Importer! We’ve cleaned up a few bugs and made a significant change to the workflow. To encourage safe and responsible usage, the Importer now requires that the images go through moderation before being used. Once an image has been uploaded and approved by moderation, it can be selected in the Importer.
Selecting an image that has not gone through moderation will display an error and not allow the import process to proceed.
Please note that your Game now must be published in order to use the Importer. Using the Importer in an unpublished Game will display a “Game must be published before importing terrain” error in the Output window. For best results, image resolution should be kept to 1024x1024px or below - images larger than this limit will be automatically scaled down.
One of our most important values at Roblox is to respect the community. This means respecting developers and players alike. This workflow change was critical to ensure we are in line with our own core values. As we look at the future of development on Roblox we know we need to improve your efficiency and this means not blocking your workflow. We are currently investigating ways to enable you as developers to work faster than ever, while still upholding our safety standards.