Is there a way to change terrain material colors based on where the terrain is?

Title essentially says it all.
I’m aware of changing terrain colors for the place, obviously, but I would like to have different colored terrains depending on where the terrain is. I’m creating different types of biomes for a world in one of my places, but to further distinguish them, I’d like the color palette to be different. Savannah areas would have a more orange, drier grass. Taiga would have a nice dark green grass, and a more temperate biome would have a much richer, brighter color of green.
Is this possible?
I know that I can technically achieve it with local scripts locally changing the terrain color based off of where the player is, but I’d like something more efficient and less time consuming, considering I’d have to manually change the color for every area, and a stark contrast between biomes would be, well, impossible.

6 Likes

I don’t know if this would work for your experience, but you could always create different places within a universe that players teleport to and from… so different places would be different biomes, then you can have terrain thats texture specific to that biome.

2 Likes

Ah unfortunately that wouldn’t work. It’s almost like a sandbox game of sorts with one, large world.

2 Likes

Unfortunately, for whatever reason, Roblox Studio does not provide us with a Terrain Color Tool, which means I have no idea how to solve your issue.

Sorry man.

1 Like

So you’re trying to make it where the player reaches a certain point, then the terrain changes color so it would be a different biome? Problem is, as the top post said, you can’t change Roblox’s terrain. Best option I can suggest is making your own terrain in blender and making textures that you can then change the color in studio to make the texture appear in different shades.

1 Like

I see. Looks like my best option is to have almost like a chunk system, and each chunk has it’s own color for grass and whatnot, and the player will do a tweened update entering chunks. Will definitely be annoying, but I see no other way.

1 Like

Well depending on what you’re doing, you may be able to just a run a simple touched event once they hit a certain area that it will change into a different material.

2 Likes

I’m currently facing this issue, and many Terrain related walls, while working on my 3D Platformer PB & Jay. You could have loading screens between worlds, you could also use tween service maybe, but those might not fit and could be janky.

Other than changing the Color3.fromRGB in a script, I don’t think there’s a way to go about this terrain coloring based off biomes.

Well, you could make your own grass system or find one. You could also use the somewhat new Material Manager in a combination with parts/meshparts. But, this would be a big task I think. Even then, the result might not be that good. :person_shrugging:

2 Likes

Yes you can change terrain colour based on player position by tweening Color3 value in Terrain.[Material type] just like others suggested. We did this a lot in the 2018 Egg Hunt, and also in World//Zero.

It’s pretty smooth and effective actually, and paired with lighting changes is impactful for the player.

3 Likes

My idea was to have the terrain itself change color rather than have it change for the player locally, but that seems like an okay option the more I think of it.

I would likely change the atmosphere and lighting too, as you stated. Colder biomes could have a much cooler color ambience, with a white fog to show the snow in the area, and obviously have the grass turn into the dead brown seen in tundra, and then white.

Did your team ever have to do it in an open world setting during the egg hunt, or was it all based upon which world the player entered? I’m thinking of how to signal the change smoothly between biomes slowly, perhaps a chunk system, or simply outline the biomes themselves.

Gracias.

We changed the lighting and terrain colours in world at run time - used it in a few impactful areas for the first world when going through the maze (the Alice in Wonderland themed one), fourth world when walking into the temple (Ruins of Wookong), and the last world in a darker area (the Undernest if I recall correctly).

In our application, we were handling the transition in hallways and tight areas so it wasn’t as obvious, but honestly doing the transition right in front of the player is sometimes unavoidable and usually harmless. For instance, most people don’t even notice the atmosphere changes between biomes in Minecraft, and that happens all the time right in front of the player.

1 Like

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.