Site Tools


tutorial:how-drawgroups-and-displaygroups-work

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Next revision
Previous revision
tutorial:how-drawgroups-and-displaygroups-work [2025/02/26 01:23] – created admintutorial:how-drawgroups-and-displaygroups-work [2025/02/26 01:51] (current) admin
Line 1: Line 1:
 ====== How Drawgroups and DisplayGroups Work ====== ====== How Drawgroups and DisplayGroups Work ======
 +Authors: Thegreatgramcracker
 +
 TL;DR: Drawgroups are the groups that are used for drawing objects. Displaygroups are the groups you get from walking on collision which say which drawgroups to draw. TL;DR: Drawgroups are the groups that are used for drawing objects. Displaygroups are the groups you get from walking on collision which say which drawgroups to draw.
  
-Every part (map piece, collision, object, enemy, and player) in a map has it's own collections of groups used to determine if that part will be enabled based on the collision the player is standing (known as **Drawgroups**), and in the case of collision, also include the groups inherited by the player standing on it for what they will have enabled (known as **Displaygroups**). The term "enabled" in this context means that it is both rendered and updated. If a part is not enabled, it is not drawn (rendered) by the game nor is it updated (for things such as playing animations, running AI/talk scripts, etc). Therefore, when editing maps, it is very important to match the groups of nearby parts when placing down new parts, in order to avoid issues with your edits not being displayed. It's also important to know for creating new maps if you wish to optimize how many things need to be loaded at a given time. Note that Elden Ring does **NOT** use this system of Drawgroups and Displaygroups for the overworld map, rather it loads things in chunks at different levels of detail based on the chunk you currently occupy. However, it does use them in most legacy dungeons, and every game Demon's Souls onwards also uses the draw/display group system.+Every part (map piece, collision, object, enemy, and player) in a map has it's own collections of groups used to determine if that part will be enabled based on the collision the player is standing (known as **Drawgroups**), and in the case of collision, also include the groups inherited by the player standing on it for what they will have enabled (known as **Displaygroups**).  
 + 
 +The term "enabled" in this context means that it is both rendered and updated. If a part is not enabled, it is not drawn (rendered) by the game nor is it updated (for things such as playing animations, running AI/talk scripts, etc).  
 + 
 +Therefore, when editing maps, it is very important to match the groups of nearby parts when placing down new parts, in order to avoid issues with your edits not being displayed.  
 + 
 +It's also important to know for creating new maps if you wish to optimize how many things need to be loaded at a given time. Note that Elden Ring does **NOT** use this system of Drawgroups and Displaygroups for the overworld map, rather it loads things in chunks at different levels of detail based on the chunk you currently occupy.  
 + 
 +However, it does use them in most legacy dungeons, and every game Demon's Souls onwards also uses the draw/display group system.
  
 The easiest way to view these groups is in DSMapStudio/Smithbox. Click on any map part and go to your "Render Groups" window. You will see a big 32x4 matrix of checkboxes like this: The easiest way to view these groups is in DSMapStudio/Smithbox. Click on any map part and go to your "Render Groups" window. You will see a big 32x4 matrix of checkboxes like this:
  
-[{drawgroup_example.png}}+{{drawgroup_example.png}}
  
-Likely if you clicked a map piece then you will see some checkboxes highlighted ##green|Green##. If you clicked collision then you may see some highlighted ##red|Red## or ##gold|Yellow##. These represent the bits of the objects 4 draw and display groups, each being 32 bits long. The actual values of the Drawgroups and Displaygroups in the part's properties are the 32 bit unsigned integer representation of these bits, but since we are more concerned with the individual bits, the "Render Groups" window makes it easier to read and adjust these values.+Likely if you clicked a map piece then you will see some checkboxes highlighted green. If you clicked collision then you may see some highlighted red or yellow. These represent the bits of the objects 4 draw and display groups, each being 32 bits long. The actual values of the Drawgroups and Displaygroups in the part's properties are the 32 bit unsigned integer representation of these bits, but since we are more concerned with the individual bits, the "Render Groups" window makes it easier to read and adjust these values.
 This is what each symbol in this menu means: This is what each symbol in this menu means:
   * **Checkmark**: In DSMapStudio, you are choosing to render parts that have this bit enabled in their Drawgroups. Can be toggled on and off with a click.   * **Checkmark**: In DSMapStudio, you are choosing to render parts that have this bit enabled in their Drawgroups. Can be toggled on and off with a click.
-  * **##green|Green##**: Selected part has this bit in it's Drawgroups enabled. Use the "Get Draw" button to set your checkmarked bits to the bits that this object has set for it's drawgroups, and the "Assign Draw" button to set all checkmarked bits to ON and all not checkmarked bits to OFF.  +  * **Green**: Selected part has this bit in it's Drawgroups enabled. Use the "Get Draw" button to set your checkmarked bits to the bits that this object has set for it's drawgroups, and the "Assign Draw" button to set all checkmarked bits to ON and all not checkmarked bits to OFF.  
-  * **##red|Red##**: Selected part has this bit in it's Displaygroups enabled. Use the "Get Disp" button to set your checkmarked bits to the bits that this object has set for it's displaygroups, and the "Assign Disp" button to set all checkmarked bits to ON and all not checkmarked bits to OFF.  +  * **Red**: Selected part has this bit in it's Displaygroups enabled. Use the "Get Disp" button to set your checkmarked bits to the bits that this object has set for it's displaygroups, and the "Assign Disp" button to set all checkmarked bits to ON and all not checkmarked bits to OFF.  
-  * **##gold|Yellow##**: Selected part has this bit in both it's Drawgroups and Displaygroups enabled.+  * **Yellow**: Selected part has this bit in both it's Drawgroups and Displaygroups enabled.
  
  
tutorial/how-drawgroups-and-displaygroups-work.1740532981.txt.gz · Last modified: by admin