Search Unity

  1. Welcome to the Unity Forums! Please take the time to read our Code of Conduct to familiarize yourself with the forum rules and how to post constructively.
  2. Let us know your feedback about the Global Illumination changes in the 2023.2 beta.
    Dismiss Notice
  3. Dismiss Notice

Render mode: chunk vs individual - any more info?

Discussion in '2D Experimental Preview' started by AssembledVS, Dec 6, 2016.

  1. AssembledVS

    AssembledVS

    Joined:
    Feb 23, 2014
    Posts:
    248
    I'm trying to figure out the purposes of the new render mode. From the sticky:
    • New Render mode for Tilemap Renderer to determine how Tilemap sprites are rendered
      • Chunk - Tilemap sprites are grouped by location and rendered as a whole
      • Individual - Each Tilemap sprite is rendered individually and can interleave with other renderers
    What are the functions of these "individual" tilemap sprites? What do you mean by "interleave with other renderers"? Is it something for y sorting/other sorting (I see that the isometric example scene with y sorting uses the individual render mode, not chunk)? Are there any other functions?

    Is individual more performance intensive than the other?
     
  2. TSabos

    TSabos

    Joined:
    Mar 8, 2015
    Posts:
    94
    The chunk mode seems like a performance gain and the individual is helpful for doing things like putting tree trunks on 1 render layer and the leaves on a 2nd so that your character is always underneath.

    This is oversimplified though, I'd like to see them set a dynamic sort order like I did in a prototype where the y position determined the order in layer of anything on a "Dynamic sort" layer. In isometric it's not as easy as just making an "always under" layer. I tried my hand at it and failed and was hoping they'd so something more complex for us that allowed us to make iso games with full movement but tile based art.. not just locked movement to tiles.

    If you create a script that sets each Individual tile's Order In Layer to rend.sortingOrder = Mathf.FloorToInt(transform.position.y * 10f) * -1; that gives you a 90% solution but falls apart on multi tile high objects, so that's where I need them to help us out. It would work if they let you group many tiles to 1 object and use that 1 objects order in layer for all of the grouped tiles.. I think.

    I definitely would like them to explain their intentions of the tools as well and work with us.. hopefully we'll get some answers.
     
  3. AssembledVS

    AssembledVS

    Joined:
    Feb 23, 2014
    Posts:
    248
    Thanks.

    Though it seems to me like an automatic x/y/z sorting system as well. Putting things on a different layer is easy enough to do with tilemaps as they are now via sorting order.

    I haven't considered isometric games, though I can see how much more complex that situation would be for them than oblique projection that needs to be sorted purely on the y axis.

    I do know that games like Shadowrun Returns and Pillars of Eternity resolved these issues in Unity. It would be great to be able to open them and see how they did it, though!
     
  4. TSabos

    TSabos

    Joined:
    Mar 8, 2015
    Posts:
    94
    Pillars did some insanely weird stuff. They actually used 3d with Y for polygon shaped walk paths laid on top of giant 2d images. The art was done in 3d and converted to 2d. Bumpmaps and lots of things for lighting in scenes.. nothing peons like me can achieve. I'm relying on Unity to give us a full solution for sort order issues or else we'll just have to make our next game in frontal projection like you are referring to. Too bad there's no example of that. Top down 2d Zelda style.
     
  5. AssembledVS

    AssembledVS

    Joined:
    Feb 23, 2014
    Posts:
    248
    By the way, how do you know what they did for Pillars of Eternity? Did they document it somewhere or put out some project files or something?
     
  6. TSabos

    TSabos

    Joined:
    Mar 8, 2015
    Posts:
    94

    Check out around 1:50.. voodoo.
     
    unitygnoob008 and AssembledVS like this.