[WIP] Screen space based LOD system

Hey
I’m currently developing a LOD system that is not based on distance rather than on the space that the object occupies on screen (like the build in LOD in the Pro version)
I would like to get some feedback from you, and if there is any interest in my system?

here is a demo:
http://dl.dropbox.com/u/10920821/lod/lod.html

To Do List:

  • optimisation as always
  • full Editor integration
  • some minor bug fixes

greetings from Germany

35 FPS without LOD
30 fps with LOD …

Bad Idea ? XD.

I think you must change how you Active/Disable your LOD.
I think you use Vector3.Distance(Observer) on Update() or FixedUpate() method.

Use multithreading , you check distance on another thread and you set value to True/false , and in FixedUpdate() Function of you gameobject you Enable or Disable LOD.

lol thats strange I get more fps with lod enabled…
I dont use the distance between Objects to calculate the LOD stats, I calculate a 2D bounding box and use that to get how much % its occupies from the screen.

And I think multithreading is PRO only, isn’t it?

Wich operating system do you have and what browser do you use?

Similar results to dyox here., around 59fps with Lod enabled, 60 without lod enabled :slight_smile:
Windows 7, Chrome

Firefox :
AMD 8 core
Geforce 9600 gt.

And no multithreading is native in C#

Nice idea, unfortunately I’m the same as the other guys I get 30fps without LOD and about 15FPS with LOD switched on.

Same. Worse with LOD on although the differences arent quite so large on mine.

Same , 40 FPS with LOD and 50 FPS with out LOD…

I myself tried to write Occlusion / LOD system, and I had the same problem.For the system to be truly effective it was really the scene is very load in objects, otherwise the system will lose performance instead of to win.

Ok thanks @ all for your feedback.
I will try to optimise the system and hopefully come back soon with a better implementation.
But I think its going to be hard :frowning: because I dont have the same experience with it. I get 30-60 fps with lod enabled and around 10 without … really strange :face_with_spiral_eyes:
will see how it goes.

have a nice day :slight_smile:

Hey,
Don’t wont to bother you guys but can anyone have a look at my new demo’s?
I worked a bit on it.

2000 obj Demo
http://dl.dropbox.com/u/10920821/lod/lodv.02/lodv.html

8000 obj Demo
http://dl.dropbox.com/u/10920821/lod/8000obj_lodv.02/8000obj_lodv.html

PS: maybe an admin or mod can move this thread to the WIP section :smile:

Just as bad for me 10fps with the 8000 obect scene with LOD off and then 3fps when it’s On.

This is being view the right way around when the coloured version (yellow and red rocks) is with LOD on?

Interesting - I get a decent performance increase (5-10 fps) in every demo.

Using an early 2011 MacBook Pro, in Windows (BootCamp).

I’m looking for LOD screen space based,

but there is a problem in the preview, seems unpoly related that drops the fps, so it makes no differences using a LOD
if it will be fixed and work, I’ll buy it.

Unity’s LOD is bad as you can’t access it from runtime.

same here but on OSX. That makes it very difficult for me :face_with_spiral_eyes:

yes when the Objects are colored than LOD is turn on

I think the main reason must be the calculation from 3D bounds to 2D bounds, but that method is only called when the object is in front of the camera and every .05 sec…

Next I will try a queue, maybe I can get a bit performance out of that ^^

what especially would you like to access at runtim?

if I’ll want to change something in the model (combine, morph, attach, etc…) and re add it to the LOD list in the runtime
it won’t be possible in Unity’s LOD.

rest of the LOD systems in the assets store are Vector3.Distance base which is bad for performances

Someone may wont to have a look at my standalone Build?
I would really appreciate it :slight_smile:

Windows
https://dl.dropbox.com/u/10920821/lod/lodv0.25standaloneWindows.zip

Mac
https://dl.dropbox.com/u/10920821/lod/lodv0.25standaloneMac.zip

Please dont forget to post your system specs

50fps with LOD
30fps without

PC:
geforce 8800 GTX
4gb ram
quad core cpu

getting better

implemented multithreading :wink:
still quite a lot things on my ToDo list…

would love to get some feedback
Demos:
4000 Objects Demo
8000 Objects Demo

4000 objects version.

14-16 fps without LOD

30 fps with LOD

Could not try out the 8000 object version because it crashed my browser.

still working on the system. Today I did a more “real life” approce, instead of just some rocks (bumpy spheres). Discovered a few things that need to be changed. How ever, just did a quick screencast and want to share it :wink: