In the Source 1 engine, there is a material parameter for models called $phong, which in simple terms; is the shiny of the model, while we already have Roughness an Metalness maps, a little more control over the lighting could be good.
PhongBoost: The intensity of the highlight.
PhongExponent: The glossiness (or size) of the highlight.
PhongAlbedoTint: In simple terms, it affects the highlight’s tint on parts with different colors
If someone is trying to recreate the old materials pre-Legacy Lighting’s removal, they could adjust the values to perfectly recreate them.
(old plastic material for example)
If someone is making an experience where you control Robots on a futuristic city, they could adjust the values to make them even more shiny…if they want to?
Fun fact: in veeery old clients from the G3D era, (aka before they switched to the OGRE engine) you could change the color of the highlight, which was removed years later.
Phong + albedo tint can be adjusted through SurfaceAppearance’s RoughnessMap/MetalnessMap. However, GlobalPhongTint is a great thing that we could have
The properties provided within the framework of PBR are not sufficient for the use cases outlined by the author. The removal of the old specular lighting in January 2020 could be considered to be the cause of said use cases no longer being viable, and ought to be reconsidered by Roblox as an option. Given that non-PBR techniques are still used (albeit only in Gouraud form) on lower quality options, Roblox should make their usage available again for Phong shading.
EDIT: I suppose what this would really entail is an option to disable PBR entirely in favour of the type of system Roblox used to have until 2020 (not specific to Legacy lighting - ShadowMap/Voxel/Compatibility lighting modes all used the old specular from 2018-20)
they can create the option to choose a shader model: current GGX or old Blinn-Phong. Or implement custom shaders. It’s not very difficult, but right now it’s not a priority for the rendering team, and there are many optimization issues across different platforms
100%. Compatibility initially looked like a better version of Legacy, whilst Voxel & ShadowMap felt new, but still felt recognisably like Roblox (in a good way). It was a shame to see things ruined just as they were getting going. I still use a souped-up version of 2019 Studio solely for thumbnails.
It was the roll-out of PBR in Future Is Bright, Phase 2.5 when this happened. The announcement thread was from January 2020, though I think there were experimental rollouts in October 2019, and again in December 2019 before it was actually announced. The FFlags to restore the earlier functionality were removed in January 2020.
I’d like to bump this, I need materials which replicate “stainless steel” meaning I am required to max out my EnvironmentSpecularScale, but I don’t want every metal to glow the color of its surroundings. At the very least, the ability to adjust the metalness map without manually creating variations of the metal material (ie 20% metal, 40% metal, etc) would be a wonderful addition to the engine. It could even potentially be achieved by way of allowing players to just adjust the color of the image uploaded for use in the Metalness map with the traditional color picker that’s available for image loading instances, such as Decals.
The same thing for the roughness map would be nice too.
Specular and metallic maps work differently: specular literally affects the brightness of the highlight, while metallic increases the brightness of the highlight by coloring it the same color as the diffuse map, while making the diffuse map black and adding reflections of the surrounding environment (skybox). Until 2020, specular didn’t depend on diffusion or reflections at all. They were calculated separately in the shader, and reflection was something like SpecularMap.g channel * reflectance. Therefore, it’s impossible to recreate old materials in modern Roblox. You can only simulate brightness, etc. The GGX shading model also greatly affects the appearance; it provides a smooth fading of specular highlights, Fresnel reflection, environment reflection, and blurry reflections at high roughness values. The previous Blinn Phong model simply adjusted the brightness and size of the highlight. GGX is better if we want realistic results, but removing Blinn Phong literally ruined the graphics in older games, so it would be nice to bring it back as a separate option.
Neon used to be simply brightened and blurred in the shader; now they use different post-processing technologies. When people talk about legacy, it’s important to remember that it’s not just about color and brightness; the voxel occupancy fill technology, color space, materials, bloom effects, and much more have changed.
Bump, the current metal looks horrible and nothing like actual metal. The robot that you have shown is exactly what I need, and having these shader options would be really good for my Half-Life engine replication.
Bump, we need full control for custom specular type options (such as Blinn-Phong, Cook-Torrance) and per-vertex gouraud shading (which is still in the Roblox engine).
Sometimes we need such things not due to performance, but as the style choice too.
I have coded a demo which easily achieves all of them in one pipeline. PBR, Phong and Gouraud.
The player must set the graphics quality themselves.
We absolutely NEED more control over things like this. I personally don’t like the current sharper shading we have now. R6 looks strange to me with modern Roblox lighting (even if you have something that looks like the older lighting) due to it.
The death of legacy lighting didn’t lead to this. Both compatibility and voxel actually looked good as intended until early 2020 where they made an unannounced change.
The engine is, and has been able to also replicate the shinier normals look (I got something extremely close in the screenshots). They just didn’t put the effort into doing so..
I’ll be releasing a resource possibly later this week that will do the job for ya.
The actual way I’m doing this is somewhat complicated to explain.. I do recall you in the client search discord, you can DM me if you want more info
Those are planar shadows (no shadow volume extrusion) made using viewport frame, I forked an existing system because I had no idea how to do that myself.