SurfaceAppearance Studio Beta [Released]

Same thing is happening with me but it only works on some meshes.

2 Likes

Sometimes it takes time to load in you can try to go to transparency afterwards back and wait but it might also be something with your settings like your graphics settings

1 Like

I tried testing this on meshes that already had working SurfaceAppearance objects and it seems to work on them, just not on any new meshes. This may have something to do with how the meshes are saved in Blender but there are no resources to explain why.

1 Like

That is very weird… I have never had any problems with meshes or parts yet as a fact i even played around with the meshes to try and make a ‘Reflective’ map for Dutch police cars here is a picture if you want:

the vehicle was imported 2 days ago and the garage is Freemodel. I hope you get it to work perfectly

4 Likes

I’ve done that before and it did nothing. I provided a place where it happens just scroll up a bit and you’ll see my message with the .rblx file to see it happening.

as good as surfaceappearence is, i believe there should be a setting to make it work like textures for bricks as well, not just decals. something like

TextureType ‘Decal’ or ‘Texture’

cant wait for the full release doe. it looked pretty cool in lil nas x concert

1 Like

This is common in game engines. In the normalmap computation some engines regard +Y on the normals as pointing up, whereas some regard -Y on the normals pointing up. This is what you’re seeing here in your two pictures. A quick fix would be to invert the G channel on your normal texture. It would be nice if you could specify which direction was used in the surface appearance object though…

1 Like

Did you UV unwrap the mesh? If not then that’s probably why

1 Like

Is there a way to enable PBRs for a TC or game to be public?

Asking for a friend and It’d be nice to know.

P.S. I already know how to use SurfaceAppearance, I just made a waxy, drippy candle for a friend and told him how to use SurfaceAppearance but its a TC so visually it isn’t loading

1 Like

Will it be possible to create a SurfaceAppearance texture from an id, instead of depending on :Clone?

My game needs to be massively scalable, and I don’t want my game to end up with thousands of SurfaceAppearance orphans used only for cloning. It’s much cheaper to create a string using string.pack that represents a compact array of content ids (this is what my game does for face paint.) This is cheap to replicate over RemoteEvents, and has a miniscule memory footprint when not in use.

I would also like to be able to create MeshParts from an id, but understand it’s a more complex problem due to RenderFidelity and CollisionFidelity data. My game already has 300+ MeshPart examples that are cloned to create client-side graphics and physics.

2 Likes

I have a question. Why aren’t the properties in the surface appearance properties of the MeshPart class itself? I mean, if the SurfaceAppearance object is only able to be used on MeshParts then it doesn’t make sense for it to exist as it’s own instance. It’d make more sense to instead have the properties of surface appearance appear under a new category in the properties panel of MeshParts called SurfaceAppearance. That’s why I’m confused at its existence being separate from MeshParts. Is it going to remain this way or are surface appearances going to be able to be used by normal parts one day? I hope it’s the latter because that would allow for easier development if you just wanted to add it to a normal part.

By any chance can we expect to see displacement/height map being added. It can toggle on at a certain graphics level?

There is mesh deformation currently in beta I believe. I don’t see how it won’t be possible.

1 Like

Yup. All I was playing in 2008 was Club Penguin and now that’s gone. Anyways, I digress. The surface appearance offerers a lot of opportunity for game graphics, but also requires a good computer to handle the graphics.

I have a feature request. The ability to add height maps to surface appearance. This would add more detail and also blend fabulously with the normal map if you knew what you were doing.

Height maps in games generally accompany some sort of tessellation system for terrain/certain objects. AFAIK, even Roblox’s smooth terrain does not get enough subdivisions to convey a heightmap well, and adding heightmaps for non-terrain objects would be even less likely. Most games use a hardware solution for this; hardware tessellation even exists on some mobile GPUs. Still, I feel that it would be a complex endeavor for Roblox to implement cross-platform, especially considering their performance concerns with mobile devices.

Do you mean Parallax Occulsion and Tessellation support?

Yes. I feel that this would add a lot more to the graphics system.

True. I forgot to consider mobile devices. However, couldn’t they just treat it like smooth terrain and have the detail shown dependent on your graphics quality?

I’m very curious how this is going to be used, because I already can see very interesting beautiful things, models, showcases coming up from this. :mechanical_arm:

I can’t wait for tile-able PBR materials.

2 Likes