Introducing the "Avatar Evolution" Studio Beta Build!

FiB Support from light sources is coming in Phase 3 iirc.

3 Likes

how do you rig a part at a position tho that keeps there in place?

Phase 3 can’t come soon enough! :heart_eyes:

3 Likes

December 2020 TM
^^^^^^^^^^

Also @zeuxcg

When are we getting something like this, takes less than 1ms :eyes:

25 Likes

I know it’s still pretty early in production, but how much progress is made towards pushing this into a possible studio beta?

2 Likes

What you are referring to is bump mapping vs displacement mapping.

Bump mapping is sometimes considered a “cheat” to simulate rough surfaces. Instead of geometry, it affects lighting, which is most often more than enough as stuff like asphalt and ground aren’t usually seen closer than a meter away.

Displacement mapping is a technique which generates new geometry which it then offsets. The issue behind this is obvious, as it is essentially the opposite of decimation. A mesh which originally had 20 triangles can now have over 200 polygons. Even AAA games have a hard time efficiently handling this feature, being forced to render it only at close proximity. You can actually already do this in Roblox by uploading a mesh very close to the vertex limit. The most commonly used variant is tessellation and it is nowhere easy to handle even with high-end hardware.

There is also something called virtual displacement mapping, more commonly known as parallax mapping. It is a variant of bump mapping which displaces the textures depending on the camera’s angle. In short, the result is nearly indistinguishable from displacement mapping, except when looking at edges. There are ways to overcome this issue, but they aren’t present in most implementations.

It would be nice to see Roblox eventually implement displacement or POM materials, but I don’t see it happening in close future.

11 Likes

POM looks amazing, I use shaders in MC and resource packs that have POM, Bump mapping, etc, looks epic.
Roblox should have that too, it looks stunning.
POM doesn’t require a lot of gpu power I think and it can make surfaces look like as if they are 3D.

2 Likes

I mean, they are practically 3D. It’s the same as layering sheets of paper to form some kind of a relief. It’s really cheap and even the badly optimized minecraft implementation barely lowers the FPS by 5 frames.

3 Likes

i love the lightning you have make on a few day ago…

1 Like

Some games allow you to change colors of certain parts of the character, and if they wanted to switch to a full mesh, they’d have to make a color texture for every color, which can become a lot the more customizable the character is. If we’re able to add textures and layer them to have some show over others and color some a different color than others, there would be a possibility for customizable avatars that are made up of one mesh, allowing for mega customization and better animations and smoothness added to the characters. Without a feature like this, some people wouldn’t use this because it would be a pain to add customization to their new characters. I don’t know really whether or not this would be a possible feature to add, and if it isn’t let me know.

3 Likes

Question, will normal maps disable itself on lower graphic settings? Along with mesh deformation?

2 Likes

If you want to change the colors of different parts you can just have multiple parts for the separate sub-meshes that can be re-colored independently. Weld those sub-mesh MeshParts together and they’ll skin together over the same bones.

This is how skinned R15 works. Both the LeftUpperArm mesh and UpperTorso bone know about the LeftUpperArm and UpperTorso mesh bones, and we combine the common bones and assign each bone to move with the appropriate part so the shoulder skins together nicely.

We require splitting characters up this way for backwards compatibility reasons and to support body part swapping, which of course you don’t necessarily need for custom characters, but you can still use the same system and split up a character mesh however you want… Full body character mesh part + full body team colored decals mesh part? Works the same way.

When you link multiple full meshes with common bones together with a skinning-enabled joint it will combine all the common bones with the same name. You can move and animate those bones with appropriately named MeshPart or Bone instances.

So you should be able to do this in Avatar Evolution today. Try it out and let us know if you hit any issues.

5 Likes

Normal maps will definitely be disabled on lower graphics settings. Some devices can’t support them period. @Homeomorph can confirm.

Mesh deformation will probably never be disabled entirely. We should be able to support skinning in general even on low end devices. @RobieTheCat came up with a nice system that should let us support full bone counts even where hardware supported bone count might be limited. We plan to reduce effective bone count at lower LODs where you shouldn’t notice.

3 Likes

Is this by any chance going to be in your guys pipeline? It’ll open up a lot creative opportunities for developers.

3 Likes

Wait… but normal maps can completely change how a game looks. Won’t our games look really bad if normal maps get disabled on low graphics settings? With normal maps it seems like the situation is you either use it or you dont. How can we use and depend on normal maps if they get disabled on lower graphic settings?

You have discovered a limitation of computer graphics.

4 Likes

Glorious! I wish these worked like textures instead of being stretched across all faces of the brick…


But look at the glue! And how the light shines on the inlets!

The problem is how they look when illuminated with 0 sunlight/graphics level 1, all you see are the white and black areas of my lighting texture… I wish bricks with normalmaps on them showed like a texture of the normalmap with light coming from the top right like how normal studs look like at graphics level 1 instead of vanishing.

22 Likes

Yes, I know this limitation. But if we are going to use normal maps we need to be able to make our games normal maps do not disable at lower settings (optional), even if that means loosing some of the player base.

They will!
This is just the Beta Build, that’s an unneeded function for now as it already exists, it would be added soon.

3 Likes

This is awesome, I got an idea, that Is making sone bones of the meshes have physics, so we can make stuff like capes with realistic physics, or long hairs.

1 Like