Search Unity

  1. Unity 6 Preview is now available. To find out what's new, have a look at our Unity 6 Preview blog post.
    Dismiss Notice
  2. Unity is excited to announce that we will be collaborating with TheXPlace for a summer game jam from June 13 - June 19. Learn more.
    Dismiss Notice
  3. Dismiss Notice

Question Can we discuss the current design of LODs?

Discussion in 'Graphics for ECS' started by DreamingImLatios, Jan 22, 2024.

  1. DreamingImLatios

    DreamingImLatios

    Joined:
    Jun 3, 2017
    Posts:
    4,321
    While I have personally refactored LODs as part of my framework, I haven't really modified the design at all. I have just moved the code around and added the option to switch transform systems. But otherwise, I'm still using the same design and algorithms without a complete understanding of how they work.

    I know the Entities Graphics team is busy with GPU Resident Drawer and whatever it is you are planning to do with skinned meshes, so I am looking to take a stab at implementing LOD Crossfade myself. I'm hoping someone with a little more experience with Unity's design can share some knowledge with me on how LODs work and save me some frustration of having to reverse-engineer the codebase myself.

    I already have a strategy for getting an 8-bit crossfade IComponentData passed into the BRG VisibleInstances, so my focus is going to be exclusively on calculating that value. There are 8 different ICDs in Unity right now that deal with LODs. This brings a lot of questions.
    1) Why are there so many?
    2) What roles do each play?
    3) How are they each updated?
    4) What parts of the design could potentially be kept when implementing LOD Crossfade, and what parts would need to be rewritten?
     
    Neil-Corre likes this.