Deprecating Outlines

I love this update! Lines haven’t been shown for a while now and now that they are being deprecated for more GPU power is awesome. I would love a feature that tracks the actual geometric edge of a brick and then puts an outline there, that would be very cool to cartoon styles!

It’s good to see this remaining for the small audience that utilizes it, I personally never had the visual effects to utilize outlines nor do I now ether way this is helpful.

I never liked the look of outlines around parts, I always set the surface property to, smooth-no outlines I still do even though I have outlines disabled.

It’s good that more gpu friendly updates are coming, something that is good for everyone, especially for us using non gaming pcs or laptops.

On another note since it’s the topic of outlines, it would be nice if we could either disable or make selection outlines smaller. It’s especially a pain when your trying to make something flush or in line with another part but you can’t see the edge because of the selection outline.
I remember when they weren’t a thing it was kinda nice, then again they also help some too

1 Like

I see some use cases for outlines:

  1. Seeing where bricks of the same material and color begin and end in walls in Studio. It’s hard to see those otherwise even with Grid Material on.
  2. Brick-style builds, like those featured in Super Nostalgia Zone. Though they are getting rare in games.
  3. Some cartoon-style builds.

Other than those, I don’t see developers using the current outlines much.

If the outlines feature does get removed completely, I might need to write a Show Brick Borders plugin for the first use case, depending on what replacements are offered then.

3 Likes

Something I figured is if the look is super important I’m sure the last few games could always use selection boxes/spheres, line handle adornments, decals, or inverted meshes or something along those lines to emulate the effect. So I think this is a reasonable change for most games :slight_smile:

this use case is… not really a thing. Not for me at least. And I always build in greyscale. (unless you literally want to build with the exact same color, and why would you want to punish yourself with that?)

image
There are plenty of varying types of gray. The ones to the right are tinted cooler while the ones are the left are more warmer. There are also more types of grey further into the color palette. But that argument isn’t a very great one to begin with.

Very, and I mean very thin outlines that impact performance are a terrible way to indicate a “cartoon” style to begin with. Often the style is displayed through proportions of objects and their colors, instead of what you’re saying.

This is the only remaining argument which I can’t really counter, since those rely on the outline behavior to begin with.

The best way to preserve this look is to:

  1. Upload custom mesh that mimic the look of outlines (it isn’t that hard, but you might want to make the outline meshparts in certain ratios to prevent reusing the same mesh on objects that are either too large in one specific dimension only.

  2. manually place textures on bricks, premade with certain ratios in mind and using texture instances to make the best of it. It’s the same method as the first one but using the same set of textures.

Edit: my bad, I didn’t see Elttob’s post. But yeah, what elttob said, pretty much.

1 Like

I never seen a reason for outlines to there to be honest. I know some people like it and all, but Imagine having a sportcar made with parts only! That would be lots of ugly outlines! :-1:

I’m kinda basic with building walls, so I tend to leave them the same color without using many details such as stripes. I also don’t like the idea of building in grey-scale first before recoloring everything just for the sake of seeing borders.

One reason I sometimes have walls split up into multiple blocks is I have doors, windows, or other passages embedded in them. Here’s an example:

This is why I need to make a Show Brick Borders plugin if these Outlines are removed. I’m just that lazy about building. :stuck_out_tongue:

I’m working on a grid based strategy game, and I use outlines to help distinguish between squares more easily.

On maps where the whole floor is the same color, it becomes much harder to see individual squares without outlines.

With outlines:


Without outlines:

There is a slight amount of color randomization for the parts when outlines are turned on, and honestly that would be enough to distinguish the grid squares even if the outlines themselves are removed. How much of the performance impact of outlines comes from outlines themselves vs. this color randomization? Would it be practical to have this as an option separate from actual outlines?

2 Likes

Since Color is RBG these days, you could randomize the color by script.

7 Likes

Not worth making into an engine feature, considering this should only take a few lines of code to make happen in the current build.

Couldn’t outlines be recreated with SurfaceGuis, with the soon to be released SurfaceGui changes, where the SurfaceGUI scales with the part correctly.

1 Like

Yea you could. You’d just have to amp up the borders.

I do have to say I am a little bit sad about this as my games dungeon generator is based around “tiles” and the outlines add a lot. I’d be okay with a post processing effect that lets me do something similar.

5 Likes

For tile based games I would advise using a Decal object with a texture that has the middle transparent and black opaque background at the borders. That way you get to have outlines of whatever thickness you want (although it will depend on camera distance).

Would SelectionBox work as well? Or would that have performance implications/not be suited.

Depending on the number of objects SelectionBox might work okay. I don’t know the performance implications there off the top of my head - if somebody measures this and it’s substantially slower for a real use case we’ll be happy to optimize it!

3 Likes

SelectionBoxes aren’t a viable alternative for a lot of uses. I looked into it once I found out that outlines were deprecated and found that while you can get them to replicate the look, it doesn’t replace the lighting changes that outlines cause (for better or for worse those aren’t replicatable) and the size they have to be at to not be obtrusive on the surface (they render on top of parts and not on their surface, obviously) means they start to disappear as you get further away, so you’re limited by camera distance.

1 Like

The lighting changes are a random color shift; it should be possible to emulate this using Color3 property - probably pretty easy to build a plugin? Note that the random color shift significantly predates ability to edit full 24-bit color as well…

2 Likes

From what I remember the bloom effect off of neon and super-reflective parts was muted or disabled with outlines.

Looking at it though, it looks like the neon thing is the result of the color shift, and the super-reflective parts just break. So, false alarm, sorry.

For reference, here's a comparison of super-reflective parts:

image
Left is without outlines, right is with them