New Terrain and Parts Built-In Materials - Release Build

Technically, they’d increase by 0 seconds - the files are all local and all use the same system. The only thing that would take longer is Roblox’s update once a week (Wednesday), and even then that could be solved if Roblox reorganised their update system to be more efficient (staying put to a single install folder, only replacing the files that have actually changed that version, etc).

Also, if the times were to increase, they still would be increasing with Roblox’s initial plan to continuously add more new ones over time - the work and effort of developers over many years is more important than Roblox’s “realism” effort so I really wouldn’t see the problem regardless.

8 Likes

I’m glad that the Team are looking for a solution that won’t break the thousands of experiences that have relied on the way the textures work historically (mostly for parts - as terrain is much easier to fix on mass).

But I’m probably one of the few it won’t really affect much because my experience only uses custom made meshes with PBR textures. And because I’m going for a much higher end graphical experience, the new textures work very nicely for my game.

In particular, having them use a colourless albedo means I can really tailor the textures to my needs.

Here’s the map before:

And after:

I really love the slate texture and how the normal map works with the lighting.

I think the problem is that because these textures are being made as proper PBR textures, they are going to be more realistic by nature. And unfortunately, most Roblox experiences are basic/cartoony and rely on the old textures for this reason.

So it would be cool if the number of textures available could be doubled so we could have options to use both depending on the style of experience we want to make (because not everyone is going to be able to build their own custom meshes/textures).

I still maintain that a key option the Team should look into is better terrain blending (ie over several quads). While the latest versions are much better - fading from something like grass to a stone texture is still very harsh.

11 Likes

The files being local doesn’t mean that the engine has no load time. If that were the case then AAA games would load instantly too, and time to boot wouldn’t be a necessary metric. They’re stored on a local drive which has faster access time than across the network, but they still need to be loaded into working memory every time the engine launches.

Every material that gets added has to pass through RAM and has to be stored in VRAM. Doubling the number of materials doubles the VRAM usage from those materials leaving less room for game assets. They have plans to add more materials too which would bump up the base level of VRAM usage even more. That seems to be the real issue here.

2 Likes

They would increase in reality. In fact, the time to load textures would nearly double. However, it is theoretically correct to say that “loading times would only increase by a few seconds”.

If anything, less. If we calculate old textures as a fraction of the whole Roblox folder, loading times would only increase by several %, barely noticeable at the very least.

3 Likes

Correct. However, adding 60 MB of textures is a negligible difference on most devices. On a 6GB RAM phone, adding 60MB textures into RAM will occupy less than 1% more RAM. Who cares about 1% RAM?

3 Likes

All they said was that they are going to postpone the update. There’s still reason to worry that they aren’t going to keep the Legacy Materials.

3 Likes

Well, you are right, but they are trying to figure out some way to retain the old materials.

Although they could still force it on us, the chances are very low. There’s enough ways around the issue that I’m sure a force update won’t happen.

3 Likes

1% is quite a lot when you consider that it is only 1 part of the program that will be taking up that much. The engine has to share resources with other programs running on the phone like the OS and background apps so it isn’t like the engine has all of that to itself. Same is true for PC.

You also have to take into consideration that it isn’t just an additional 60 MB (80 according to my explorer for terrain & part materials combined), but it’s 60 MB on top of another 60 MB, bumping it up to 2% or more, plus more memory for future materials which could bump it up to 3% or even 4%.

Looking back at the available RAM figure and taking into account how much the OS uses that could bump up the % usage by another point or two out of available RAM.

The game itself is going to need a lot of memory for draw pass buffers, game object state, and Lua VM state, so the amount of negotiable available RAM is going to decrease yet again.

Materials may not look like they require a lot of memory, but you need to take into account that the materials don’t exist in a vacuum and you need to balance the space that they take up with everything else running on the system. The same is true in other areas like even AAA games where 0.25 or 0.5 ms of execution time may not look like much, but those resources need to be shared with every other system in the game.

I trust that Roblox will find an appropriate solution to deal with resource usage, but it is still something that needs to be taken into account and taken seriously when considering changes. Context is important for these kinds of stats.

2 Likes

Don’t plenty of other games use up way more than Roblox? I actually don’t care if Roblox goes on and forces this, so long as we’re given the option to upload our own Custom Materials to TRULY create our own aesthetics. Loading times are a given, so I could care less if they’re increased so long as developers are given as much freedom on their games as other game engines do.

1 Like

On higher end hardware, yes. Roblox runs on lower end hardware too though which is why the discussion has to be had. Mobile devices run by different resource consumption rules than other devices because of the way the hardware is designed.

He’s not spreading nonsense. He’s right.

Roblox’s updating system tends to move everything out of an existing version folder and makes an entirely new one. It’s inefficient.

8 Likes

I was talking about mobile games too, there’s plenty of crazily detailed racing games like CarX Drift Racing 2, Assoluto Racing, and also mobile ports of PC games like PUBG mobile, ARK: Survival Evolved, and Grid Autosport which all run about the same if not better than Roblox.

And Roblox is barely close to being as demanding as any of those games, all of which I can and am running on my Ipad. Can you explain how Roblox, a game that’s only 1/16th the size of any of those games i mentioned, is going to have trouble storing and loading any of their materials into a mobile device?

2 Likes

Those all appear to be drastically cut down versions compared to alternate versions in terms of graphical quality and work load intensity. Racing games in particular have the benefit of a flatter and more geometrically simple level design so more resources can be pooled into rendering detail on the few objects that stay on screen a lot.

There’s also a big difference between an individual prepackaged title and a general purpose game engine that loads in arbitrary assets at run time. Standalone titles have the benefit of cutting corners and aggressively optimizing without being bound to generality.

Roblox doesn’t have this benefit because not a whole lot can be pre-baked with the way the engine works right now. That’s gonna cost some performance, but it is what allows the level of freedom the engine provides.

When you run a Roblox game you aren’t just running the Roblox app, and you aren’t limited to the data that comes packaged with it. Any number of assets can be referenced from server storage and they all must be downloaded and stored locally to be usable in a game. The reason why increasing the base size of the engine is a problem is because that decreases the room for new assets to be downloaded from the servers. When you’re running any given Roblox game you’re going to be using a lot more resources than just the engine comes prepackaged with. The base size of the Roblox app is in no way comparable to the base size of those other apps.

I do believe Roblox should find a way to provide the materials, or at the very least provide a way to bring them back, but I also want to speak up because I’m seeing a lot of false equivalences and factually inaccurate arguments being brought up. Roblox has their reasons for both wanting to cut out old content and for backtracking and searching to find a compromise instead. Just like developers on the platforms have their needs, Roblox engineers have their own needs that need to be met if they want to pave a path for the engine to follow going into the future

The reasons behind the change being considered and presented listed in the original post aren’t an exhaustive list either. They were given as examples of some reasons why the changes were being considered, yet they were attacked as if they were the only reasons Roblox may have for the changes.

I don’t take issue with the fact that people have built their development styles around features and content that are at risk of being phased out and want to keep it. I do take issue with people presenting poorly formed arguments about work they don’t have data on and presenting them as facts when they already have perfectly valid reasons and concerns about their own work they could voice instead.

2 Likes

A lot of the textures are meh, The grass is really bad though. I just have to say… But a few are really good. But man, the decision to nuke all the old textures seems pretty bad. From what is being said here most people are upset at the fact that the update will completely change the look and feel of ALL of their projects. New textures are welcome of course, who doesn’t want variety? But it’d probably be a great idea to revisit the idea of replacing the old textures completely.

7 Likes

Here’s an idea that would let you force this update with no load time increase:

Let us apply custom textures to terrain. Then release the old textures as Roblox assets. Finally, make us tools to easily find and replace textures on terrain and parts, so that way we can easily revert to the old textures. Win win!

2 Likes

Stop the cap bro. These textures are way too cartoony and take a lot of depth away from bigger builds. Sand is way too detailed and didn’t even need an upgrade in the first place.

1 Like

Correct me if I am wrong but, I don’t understand the point of this feature.

RDC talked about how materials weren’t supposed to fit one style and magically, this feature completely disproves that. I don’t see the point of causing all this havoc over style forcing and changes that quite frankly don’t have that much relevance to anything but, an overall digression to the platform in terms of developer limitations. All I see here is an attempt to continue to overly saturate the low-poly style. Roblox is already seen as a kid’s platform. Roblox is trying to become serious and I really think that this doesn’t make it serious at all. Restricting basic customization in favor of a predefined set of materials only fit a specific style and the occlusion of any other style in the millions of generated games/experiences on the platform doesn’t make much sense. It’s one thing to do this and have the ability to expand but, there is none.

No platform out there other than Roblox forces textures and styles on people. Not a single one. No game out there will always use the same styles. None. So, as a developer when I see something like this, it really bothers me and really doesn’t make me want to stay on the platform. As a developer, I see Roblox as a potential way to increase my portfolio and to reach an audience incredibly fast without much work. When I dive into the more technical aspects, I see a platform that is so invested in tight control that it actually affects the UX, ruins basic features found in every other platform that competes and completely misinterprets what developers want. Every developer that I have ever encountered both in the industry, here and elsewhere have always moved to a platform that allows the most freedom for the least amount of cost. Roblox doesn’t cost much but, the amount of limitations and restricts or rather, the pure fact that as a Developer, I am treated as a kid is appalling and needs to change. This feature seems to highlight that fact.

The platform should capitalize on developer freedom and finding a way to properly decouple limitations into features that allow the content on the Roblox platform to evolve. Providing a non-expansive default list of materials that barely have any value or unique factor across any game is not exactly viable as a game creator. Especially when the games that look different and approach different styles are the ones that do better simply because people are tired of seeing the same thing.


How it is without this feature:

Despite being able to change color, I am locked to very bland materials.

How it is with this feature:

The exact same because, the icons haven’t changed.


Simple things like adding leaves to a grass material is cumbersome simply because, I am confined purely to this list. Any work arounds to this are worse UX and require me to import my own texture as a decal and replicate the decal object for every side that I want the texture to be shown and then, manually set the face and texture image for each decal object. Doing this over and over is not only costly but, can be completely solved by making this one specific feature more customizable.

It’s a decently-sized issue in my eyes that the Roblox platform and the games / experiences inside the platform for people to play all feel the same. It’s a bit odd that this hasn’t been taken into account and hasn’t been properly assessed or acknowledged publicly.


Possible Solution: A market that allows developers / creators to publish textures. On studio, instead of a list, it would compile a list of textures that you can use in your game with the addition of uploading your own that would be vetted through the exact same moderation process as every other image-related asset on the platform.


tl;dr: Stop forcing styles on people. Low-poly is overly saturated. This entire feature completely misinterprets the actual issue of most games on the platform looking the same. If anything, it encourages it even more. More unique games = more unique experiences. Same styled games = same content = no variety = poor engagement. If you were a player, you wouldn’t want to play the same game or game that feels the same over and over. Why should this logic be thrown out purely at the developer’s expense?

9 Likes

The sad truth is it doesn’t even move the files - it just redownloads everything before completely deleting the old version folder. I’ve never seen a more inefficient and poorly built update system (even Windows 10 isn’t this bad at updates).

6 Likes

That’s still not a lot. For comparison, using one sleeping tab on Microsoft edge uses 6% of RAM.
Then again, 4% is with standard 6GB RAM. Apple’s iPhone 7 has a measly TWO gigabytes of RAM, so it would be 12% on the iPhone 7.

That is a lot when you consider how much space everything else takes up. It is a percentage of total RAM, not negotiable RAM that is available for general purpose usage like game memory.

You don’t have access to the entire pool of RAM on a device when you run a game. The OS takes up RAM, leaving the rest for the other processes to share. That can be anywhere from 5-25% or even more depending on the device and OS. I tried looking up the iOS figures for mobile earlier, but couldn’t find any so I can’t give exact numbers on that, but it’s certainly going to be non-negligible.

You have any background processes the user is running, including browsers, messaging apps, etc.

The game’s render buffers and other textures are going to be taking up RAM. There are usually several different render buffers, resolution size textures, that are used in graphics pipelines that are used to perform various steps of the pipeline. You also need to take into account fonts, UI assets, and so on that the base game uses. The entire engine executable is going to take up RAM because that is what allows the program to run.

Then after all of those pieces of the pie are cut out the RAM that is remaining needs to be shared between downloaded assets, memory used by scripts, the objects in the game hierarchy, and so on.

That’s why 1-4% is a considerable amount of memory to use. It isn’t 1-4% of the usable memory. The percentage of usable memory is a far higher percentage because the amount of usable memory is far less than the total device memory.

I don’t know the figure for memory usage that Roblox is aiming for to support low end devices, or the amount of resources they plan on allocating towards just materials, but I’m sure that it played a big role in the decision making process.