Jump to content

Window Imposters - Better LODs and Lower Land Imapct


Chic Aeon
 Share

You are about to reply to a thread that has been inactive for 2269 days.

Please take a moment to consider if this thread is worth bumping.

Recommended Posts

This is NOT my info really. @Aquila Kytori  brought it up on this thread: 

but since the title of that thread and OP has NOTHING to do with the info that showed up on page 3 and will likely get lost in the archives (now why is that not news?), I am making a new topic linking to it and adding some of my own info to carry on the discussion. Be sure and go to page 3 and 4 and look for BIG PRETTY  Info shots. 

And here is my input ^^.

I had some warehouse buildings with complex and many-paned windows. They were certainly "on the edge" of what is practical for SL but they were great for the mood I was trying to create. I tried a lot of things, but they were primmy and still broke up. I COULD have made them even  MORE primmy by upping the lowest LOD but that was really going too far. 

The thread above -- which really most everyone should read because it does go into the real importance of LODs -- testing, setting et al; brought up that nasty crumpling of complex objects with one example being some multi-paned windows.  

Aquila as she often does, reproduced the item in question and gave a great idea on how to "solve" the problem.  This was talked about quite a bit when mesh was new to SL with the theme THEN being "but you will be uploading an extra texture and so that is not good".  So I had, long ago heard of this method in passing but didn't pay much attention then. 

Enter this week :D.

These are the windows I changed out today. They have no glass (but could if that is your choice) as I don't like all the issues that come up with baking and glass in windows and often use one LARGE mesh prim as the glass for a whole wall.  So ignore the no glass bit as being part of the work around :D.   

They are big windows for warehouses. They are fairly thick. Still nasty breaking up at LOD2 from a fair distance but not long enough for my tastes (full sim installation). 

5a74dc392b434_Imposterwindows.thumb.PNG.90d996909f63d5e5cdb6c23b7d96ffb0.PNG

With the new LOD information now in the Firestorm viewer thanks to @Beq Janus builders (and shoppers) can easily see the distances that the LODs will switch (hence often breaking up). 

5a74dd5500e73_imposterupload3.thumb.PNG.ed3a96dbfe4a3e9801966204a69dc251.PNG

I remade my windows (one in the middle of the night with a few tries as I had exported from inworld out to Blender and that made it more complex than if I would have done this to start with). It is actually a fairly simple process ONCE you understand the theory and work through it once. We all know how EASY things can get when we FINALLY (well, me anyway) understand them. 

After I did the closed window I tackled the open one which was a little trickier but with some logical thinking I got it working very well. It had a slightly higher land impact than the closed window but I was fine with that. 

5a74de192d535_imposterwindowsopenswaps.thumb.PNG.d8c4ca60fa4490d2cec0420b156a55ae.PNG

Not only did my windows HOLD (well, appear to hold anyway) much better at a distance, the land impact went way down from 75 to 45 for the building with ten windows, and down to 32 for the building with only five. 

Here is what they look like inworld. I can cam a long ways out now at LOD2 without any issues, you can notice the texture switch but most likely only if you are looking for it. 

5a74df2c0cd93_newwindows1200.thumb.jpg.da4a80ceeab5bc7d68f3f197ef6c40cf.jpg

So many many thanks to all the folks that contributed to that thread. Even if you are just starting to work with mesh and it is too complex right now, BOOKMARK it (or this one that references it) for the future. Eventually, if you make buildings, you will likely need to know how to do this!

And with that I am taking a "game" break and then going to play with some Fantasy Faire stuff. A gear change is called for, but this was a fairly pleasant redo and not all that time consuming. I have one more set of windows that could maybe use this help -- but that's for another day. 

 

Edited by Chic Aeon
  • Like 8
Link to comment
Share on other sites

Is there some simple way to generate a low LOD model by rendering an image of the object, making that a low-resolution texture, and pasting that onto a flat surface? For anything that's mostly flat, that would be better than triangle-reduction LOD.

Link to comment
Share on other sites

29 minutes ago, animats said:

Is there some simple way to generate a low LOD model by rendering an image of the object, making that a low-resolution texture, and pasting that onto a flat surface? For anything that's mostly flat, that would be better than triangle-reduction LOD.

Yes, see the explanation by Aquila on that thread.  You DO have to understand Blender fairly well to tackle the "simple" method. If not then the answer as far as I know is "no". What you are suggesting is what she showed how to do.  You need to read :D.

Link to comment
Share on other sites

21 hours ago, Chic Aeon said:

This was talked about quite a bit when mesh was new to SL with the theme THEN being "but you will be uploading an extra texture and so that is not good".

That extra texture is still the downside of that imposter method indeed. With the fact that all materials will have to be present on all LOD models, it will increase draw calls/state changes in the render pipeline. Which is something SL has to many of already. Plus it's an alpha texture usually, which is extra expensive as well. It would be better if materials would not have to be present on all LOD models indeed.

While the imposter method is totally viable for windows and the like, I rather would like to have a slightly higher triangle budget on the lowest LOD for smaller props, while keeping the land impact as low as with imposters.

However, I used the imposter method on a couple of items myself for sure.

A chair.
SafariChairLOD01.jpg.cbc866d52aab5ce66d44c5d2610436df.jpg

Where the High LOD model is projected onto some planes.
LowestLODChairProjection01.jpg.1a5c995fe7c0c83a5c69c4f74c78c4c4.jpg

Result:
SafariChair_Lowest_LOD_Projection_128_01.png.642611516bdc6563efca64c640c3d7f8.png

Another model using the same method:
CO2RifleLOD01.jpg.f4ec33b8e8143bc71e50098963069cf9.jpg

For the rifle I baked out a lowest LOD normal map as well, to keep the shading consitent. Which I put onto the diffuse map as well, to cut down the map count.
CO2RifleLowestLODProjection128_01.png.5f154d86225c4850e61029fd5440afab.png

Both of these models have a land impact of 2.

LowestLODChairProjection02.jpg

Edited by arton Rotaru
  • Like 4
Link to comment
Share on other sites

1 hour ago, arton Rotaru said:

That extra texture is still the downside of that imposter method indeed. With the fact that all materials will have to be present on all LOD models, it will increase draw calls/state changes in the render pipeline. Which is something SL has to many of already. Plus it's an alpha texture usually, which is extra expensive as well. It would be better if materials would not have to be present on all LOD models indeed.

Well in my example WINDOW (which was what this was about :D) the extra texture was a 512 with NO alpha and no materials were used in the build (cycles). In order to get the same end result via more triangles the build would have been well over 120 land impact instead of 45.  

So of course it depends on the project and testing is always necessary. No argument there. 

The comments on the forums that I was referring to was only about houses. I don't see this method being of much use for objects that will be seen from many directions at once.  Actually  Beq remarked on that in the thread I referenced. 

Edited by Chic Aeon
Link to comment
Share on other sites

39 minutes ago, Chic Aeon said:

Well in my example WINDOW (which was what this was about :D) the extra texture was a 512 with NO alpha and no materials were used in the build (cycles).

Even a 512 sounds like a bit of overkill for an impostor. How many pixels will it actually use on the screen anyway?

I don't usually go for impostors since there are always shading issues and they make it extremely difficult for the buyer to retexture to their needs. It's certianly not a technique builders should use reguarly but it can be useful on some special occasions and it seems to me Chic's windows here are a good exaple of that.

One variant I sometimes use, is to use the same texture for the impostor anf the main model. Here is an old build, one of the first meshes I ever made:

5a7630c8c4831_Skjermbilde(1019).png.a2c95e44125eae467d4ff26d3e6cc242.png

 

The lowest LoD model looks like this:

5a7630efa0f27_Skjermbilde(1020).png.178be5b9f0e614ece53cf1e9c4fe477b.png

Just a flat sheet with the cracks between the planks presented as black lines. It's the same texture on both LoD models but on the high one, those black lines are hidden by the actual cracks.

  • Like 3
Link to comment
Share on other sites

5 hours ago, Chic Aeon said:

The comments on the forums that I was referring to was only about houses. I don't see this method being of much use for objects that will be seen from many directions at once.  Actually  Beq remarked on that in the thread I referenced. 

Yeah, but there is more than just houses in Second Life. The imposter method works for a variety of objects quite well. It's problematic for cilyndrical shapes indeed. But these can be lodded down quite easily the convential way.

Link to comment
Share on other sites

My general answer to typical H and G items is to keep the tris low to start out with and let textures do their job.  I have a few items that have over 1000 tris for the top level, but many more that are under that. So I don't have to worry about most of the issues that are talked about here. I just keep it simple to start with.  We all work differently though so what ever gets the job done well -- is good to know. 

And certainly -- and in some cases -- baking a high rez version of a model and using that texture on a low rez version works well. Not so much on the things I make though :D. 

Link to comment
Share on other sites

On 2/2/2018 at 10:15 PM, Chic Aeon said:

Yes, see the explanation by Aquila on that thread.  You DO have to understand Blender fairly well to tackle the "simple" method. If not then the answer as far as I know is "no". What you are suggesting is what she showed how to do.  You need to read :D.

She already has a Blender model of the object to work on. What I want to do is take some object of which I am not the creator but for which I have full perms, and create an impostor. I realize I can't download the mesh. But I can render it in-world against a green screen, and get views from six sides. I'd like to turn those images into a texture, paste them on a rectangular block, and import that back into SL as the lower levels of detail.

Why? To solve problems like this.

chairhighlod.png.acf7dcb1a7d5b842a74d9654974d140b.pngchairlowlod.png.a0874ce99e694f2e296351c5aeeea6f1.png

Chair from Marketplace, full perms, high and medium level of detail.

High model is fine. Medium model is crap, and kicks in at 3.9 meters. To see the high model, you have to be in mouselook. Don't even ask about the lower level models. Of course, it looks great until you buy it, because the marketplace only shows the high res model.

Some semi-automated process to generate and import simple block-like impostors would allow upgrading many existing models.

 

Link to comment
Share on other sites

6 hours ago, animats said:

What I want to do is take some object of which I am not the creator but for which I have full perms, and create an impostor.

A mesh asset, with all it's LODs is created at upload time. So to alter it's LODs you need to have the model to reupload it with your custom LOD models.

Adding another asset to cover a poor object sounds pretty clumsy to me. Would be better to not purchasing such objects in the first place. 

Most of my builder buddies do make proper LOD models, and we mention that at least in the description of the listing. I do show the LOD models on some of my listings in an image even.

There are automated LOD systems like Simplygon (which Microsoft aquired recently) around. But that's something Linden Lab would have to implement, to create the asset at upload time with.

  • Like 1
  • Thanks 1
Link to comment
Share on other sites

7 hours ago, animats said:

High model is fine. Medium model is crap, and kicks in at 3.9 meters. To see the high model, you have to be in mouselook. Don't even ask about the lower level models. Of course, it looks great until you buy it, because the marketplace only shows the high res model.

That's a common problem unfortuantely and there is no real solution, except leave a negative review and make sure you never ever buy from that store again.

You can't add an impostor to a mesh after it has been uploaded. It has to be planned for and accounted for before that since you need a specially designed face for it.

 

37 minutes ago, arton Rotaru said:

There are automated LOD systems like Simplygon (which Microsoft aquired recently) around. But that's something Linden Lab would have to implement, to create the asset at upload time with.

Well, LL does have GLOD. /me makes the sign of the cross

Link to comment
Share on other sites

53 minutes ago, ChinRey said:

make sure you never ever buy from that store again.

Demo, demo, demo as Pamela correctly says, and not encouraging these bad mesh practices by not buying any (or any more). It's a far clearer choice than a boycott of NoMod... it's a boycott of things you can see more than 10 meters away.

On the positive though; This whole discussion around imposters has been amazing, I have learnt so much from it, and I love to learn. Now it's just practice and more practice.

The hugest thanks possible to everyone who has been showing and explaining all these imposter techniques, normals too!

  • Like 3
Link to comment
Share on other sites

9 hours ago, Callum Meriman said:

it's a boycott of things you can see more than 10 meters away.

Should that be "can't see"?

Part of the problem is that SL's land impact system rewards you for crappy level of detail. Mesh furniture is expected to have a land impact of about 1 prim. To get that, you have to have a really low triangle count in the LOD models below "high". SL has a reward metric which rewards the wrong thing.

From a graphics card point of view, everything within 10 meters could easily have a few hundred triangles, and probably should. That's not going to choke any decent graphics chip from the last five years. That's about where medium level of detail should be. Around 25 meters, an impostor should replace the real object for furniture-sized objects.

Triangle reduction, at least as Blender does it with Decimate Geometry, is for reducing a curved surface of 20,000 triangles to 2,000.  Not for reducing 200 to 20.  That's where all those awful long thin spiky triangles come from.  Reducing a surface to one triangle is a terrible thing. Now if triangle reduction used quads, it wouldn't be so bad. Objects that were more or less rectangular would stay rectangular. Extreme mesh reduction needs a better tool than Decimate.

(Now if LL was really on the ball, they'd have parcel-level impostors and sim-level impostors generated in background by their own systems. Around 100m, parcel-level impostors would kick in, and around 250m, sim-level impostors. You'd be able to see for kilometers. No more water where land should be. All the big-world games have something like that.)

 

 

Edited by animats
Graphics card performance
Link to comment
Share on other sites

15 hours ago, animats said:

Part of the problem is that SL's land impact system rewards you for crappy level of detail. Mesh furniture is expected to have a land impact of about 1 prim. To get that, you have to have a really low triangle count in the LOD models below "high". SL has a reward metric which rewards the wrong thing.

Yes and no. Even with the obvious limitations of SL's land impact system and its tendency to reward unwanted building practices, it is possible to make very detailed models with proper LoD and quite low land impact.

The chair in your previous post, is a good example. A skilled mesh maker wouldn't have had any serious problems making that model with LoD good enough to work with LoD factor 1.25 (the default medium of the SL viewer) and still keep it at 1 LI.

Edited by ChinRey
  • Like 3
Link to comment
Share on other sites

1 hour ago, animats said:

What might help is is for SL to modify the land impact computation so that 12 triangles or less (a box) have the minimal land weight at any level of detail.

That's how it is already:

5a7a0f5d8ab2a_Skjermbilde(1033).png.2d1be1525c348a325f06e8c354e1de37.png

I'm not sure if replacing all those dodgy LoD models with cubes would be a huge improvement but well, this does illustrate how ignorant the LoD butchers are about even the most fundamental principles of good SL mesh.

Link to comment
Share on other sites

1 hour ago, ChinRey said:

That's how it is already. I'm not sure if replacing all those dodgy LoD models with cubes would be a huge improvement but well, this does illustrate how ignorant the LoD butchers are about even the most fundamental principles of good SL mesh.

That's good to know.

So where did Linden Labs document that?

(Most of the SL documentation that goes into details was written by users who reverse-engineered the system. Of course people use it badly.)

Link to comment
Share on other sites

24 minutes ago, animats said:

So where did Linden Labs document that?

Ummmm... document? You mean like writing stuff down in an understandable way? :P

 

31 minutes ago, animats said:

(Most of the SL documentation that goes into details was written by users who reverse-engineered the system. Of course people use it badly.)

Yes, you have a point there. But we've had mesh for over six years now. When you've been at it that long and still haven't noticed you're doing it wrong, you can't blame it all on poor documentation anymore. Besides, there is documentation now. No thanks to Linden Lab but there is.

I happened to take a look at the profile of a well known and prestigious mesh faker earlier today. The first words I saw there were "Qaulity plants". After six years he's still a noob and hasn't bothered to learn anything at all and he still has the nerve to claim quality. It's not a unique case and you can't blame that on Linden Lab.

  • Haha 1
Link to comment
Share on other sites

5 hours ago, ChinRey said:

When you've been at it that long and still haven't noticed you're doing it wrong, you can't blame it all on poor documentation anymore. Besides, there is documentation now. No thanks to Linden Lab but there is.

YES. 

 

 

Link to comment
Share on other sites

On the impostor front, in-world editing tools would be a big help. Put something in the Edit UI for automatically creating a lower level impostor. Select a level of detail below the top one, select "Impostor", select "Box", "Cylinder", "Cross", or "Sphere", select "Texture resolution" (16x16 through 512x512), and click "Generate". A server then generates an enclosing prim, renders the most detailed LOD  in isolation from each viewpoint needed, and pastes the resulting texture on the prim. Instant impostor.

  • Like 1
  • Thanks 1
Link to comment
Share on other sites

3 hours ago, animats said:

On the impostor front, in-world editing tools would be a big help.

Oh, that would be a dream come true!

 

Edit, forgot to comment on this:

3 hours ago, animats said:

select "Texture resolution" (16x16 through 512x512)

Yes, except is there any possible situtation where an impostor texture needs to be more than 128x128? Maybe even a 128 is a bit too much?

Edited by ChinRey
  • Like 1
Link to comment
Share on other sites

You are about to reply to a thread that has been inactive for 2269 days.

Please take a moment to consider if this thread is worth bumping.

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now
 Share

×
×
  • Create New...