code/__DEFINES/layers.dm
SEETHROUGH_PLANE | Slightly above the game plane but does not catch mouse clicks. Useful for certain visuals that should be clicked through, like seethrough trees |
---|---|
LIGHTING_PLANE | Normal 1 per turf dynamic lighting underlays |
O_LIGHTING_VISUAL_PLANE | Lighting objects that are "free floating" |
EMISSIVE_RENDER_PLATE | This plane masks out lighting to create an "emissive" effect, ie for glowing lights in otherwise dark areas. |
LIGHT_MASK_PLANE | Masks the lighting plane with turfs, so we never light up the void Failing that, masks emissives and the overlay lighting plane |
ABOVE_LIGHTING_PLANE | Things that should render ignoring lighting |
PIPECRAWL_IMAGES_PLANE | ---------------- MISC ----------------------- Pipecrawling images |
CAMERA_STATIC_PLANE | AI Camera Static |
HIGH_GAME_PLANE | Anything that wants to be part of the game plane, but also wants to draw above literally everything else |
RUNECHAT_PLANE | --------------- FULLSCREEN RUNECHAT BUBBLES ------------ Popup Chat Messages |
BALLOON_CHAT_PLANE | Plane for balloon text (text that fades up) |
SPLASHSCREEN_PLANE | Plane of the "splash" icon used that shows on the lobby screen |
RENDER_PLANE_GAME_MASKED | If fov is enabled we'll draw game to this and do shit to it |
RENDER_PLANE_GAME_UNMASKED | The bit of the game plane that is let alone is sent here |
ESCAPE_MENU_PLANE | Plane related to the menu when pressing Escape. Needed so that we can apply a blur effect to EVERYTHING, and guarantee we are above all UI. |
PLANE_RANGE | The range unique planes can be in Try and keep this to a nice whole number, so it's easy to look at a plane var and know what's going on |
CATWALK_LAYER | catwalk overlay of /turf/open/floor/plating/catwalk_floor |
WATER_LEVEL_LAYER | Anything below this layer is to be considered completely (visually) under water by the immerse layer. |
WATER_VISUAL_OVERLAY_LAYER | The layer of the visual overlay used in the submerge element. The vis overlay inherits the planes of the movables it's attached to (that also have KEEP_TOGETHER added) We just have to make sure the visual overlay is rendered above all the other overlays of those movables. |
LIGHTING_MASK_LAYER | Typically overlays, that "hide" portions of the turf underlay layer I'm allotting 100 z levels before this breaks. That'll never happen --Lemon |
LIGHTING_PRIMARY_LAYER | Misc things that draw on the turf lighting plane Space, solar beams, etc |
LIGHTING_ABOVE_ALL | Stuff that needs to draw above everything else on this plane |
EMISSIVE_LAYER_UNBLOCKABLE | The layer you should use if you really don't want an emissive overlay to be blocked. |
FLASH_LAYER | --------------- FULLSCREEN IMAGES ------------ |
TYPING_LAYER | --------------- FULLSCREEN RUNECHAT BUBBLES ------------ Bubble for typing indicators |
RADIAL_CONTENT_LAYER | 1000 is an unimportant number, it's just to normalize copied layers |
SCREENTIP_LAYER | Layer for screentips |
TUTORIAL_INSTRUCTIONS_LAYER | Layer for tutorial instructions |
LIGHT_DEBUG_LAYER | Layer for light overlays |
LOBBY_BELOW_MENU_LAYER | Layer for lobby menu collapse button |
LOBBY_MENU_LAYER | Layer for lobby menu background image and main buttons (Join/Ready, Observe, Charater Prefs) |
LOBBY_SHUTTER_LAYER | Layer for lobby menu shutter, which covers up the menu to collapse/expand it |
LOBBY_BOTTOM_BUTTON_LAYER | Layer for lobby menu buttons that are hanging away from and lower than the main panel |
CINEMATIC_LAYER | cinematics are "below" the splash screen |
PLANE_MASTERS_GAME | Plane master controller keys |
PLANE_CRITICAL_DISPLAY | This plane master will not go away if its layer is culled. useful for preserving effects |
PLANE_CRITICAL_NO_RELAY | This plane master will temporarially remove relays to all other planes Allows us to retain the effects of a plane while cutting off the changes it makes |
PLANE_CRITICAL_CUT_RENDER | We assume this plane master has a render target starting with *, it'll be removed, forcing it to render in place |
MULTIZ_PERFORMANCE_DISABLE | A value of /datum/preference/numeric/multiz_performance that disables the option |
MAX_EXPECTED_Z_DEPTH | We expect at most 3 layers of multiz Increment this define if you make a huge map. We unit test for it too just to make it easy for you If you modify this, you'll need to modify the tsx file too |
Define Details
ABOVE_LIGHTING_PLANE
Things that should render ignoring lighting
BALLOON_CHAT_PLANE
Plane for balloon text (text that fades up)
CAMERA_STATIC_PLANE
AI Camera Static
CATWALK_LAYER
catwalk overlay of /turf/open/floor/plating/catwalk_floor
CINEMATIC_LAYER
cinematics are "below" the splash screen
EMISSIVE_LAYER_UNBLOCKABLE
The layer you should use if you really don't want an emissive overlay to be blocked.
EMISSIVE_RENDER_PLATE
This plane masks out lighting to create an "emissive" effect, ie for glowing lights in otherwise dark areas.
ESCAPE_MENU_PLANE
Plane related to the menu when pressing Escape. Needed so that we can apply a blur effect to EVERYTHING, and guarantee we are above all UI.
FLASH_LAYER
--------------- FULLSCREEN IMAGES ------------
HIGH_GAME_PLANE
Anything that wants to be part of the game plane, but also wants to draw above literally everything else
LIGHTING_ABOVE_ALL
Stuff that needs to draw above everything else on this plane
LIGHTING_MASK_LAYER
Typically overlays, that "hide" portions of the turf underlay layer I'm allotting 100 z levels before this breaks. That'll never happen --Lemon
LIGHTING_PLANE
Normal 1 per turf dynamic lighting underlays
LIGHTING_PRIMARY_LAYER
Misc things that draw on the turf lighting plane Space, solar beams, etc
LIGHT_DEBUG_LAYER
Layer for light overlays
LIGHT_MASK_PLANE
Masks the lighting plane with turfs, so we never light up the void Failing that, masks emissives and the overlay lighting plane
LOBBY_BELOW_MENU_LAYER
Layer for lobby menu collapse button
LOBBY_BOTTOM_BUTTON_LAYER
Layer for lobby menu buttons that are hanging away from and lower than the main panel
LOBBY_MENU_LAYER
Layer for lobby menu background image and main buttons (Join/Ready, Observe, Charater Prefs)
LOBBY_SHUTTER_LAYER
Layer for lobby menu shutter, which covers up the menu to collapse/expand it
MAX_EXPECTED_Z_DEPTH
We expect at most 3 layers of multiz Increment this define if you make a huge map. We unit test for it too just to make it easy for you If you modify this, you'll need to modify the tsx file too
MULTIZ_PERFORMANCE_DISABLE
A value of /datum/preference/numeric/multiz_performance that disables the option
O_LIGHTING_VISUAL_PLANE
Lighting objects that are "free floating"
PIPECRAWL_IMAGES_PLANE
---------------- MISC ----------------------- Pipecrawling images
PLANE_CRITICAL_CUT_RENDER
We assume this plane master has a render target starting with *, it'll be removed, forcing it to render in place
PLANE_CRITICAL_DISPLAY
This plane master will not go away if its layer is culled. useful for preserving effects
PLANE_CRITICAL_NO_RELAY
This plane master will temporarially remove relays to all other planes Allows us to retain the effects of a plane while cutting off the changes it makes
PLANE_MASTERS_GAME
Plane master controller keys
PLANE_RANGE
The range unique planes can be in Try and keep this to a nice whole number, so it's easy to look at a plane var and know what's going on
RADIAL_CONTENT_LAYER
1000 is an unimportant number, it's just to normalize copied layers
RENDER_PLANE_GAME_MASKED
If fov is enabled we'll draw game to this and do shit to it
RENDER_PLANE_GAME_UNMASKED
The bit of the game plane that is let alone is sent here
RUNECHAT_PLANE
--------------- FULLSCREEN RUNECHAT BUBBLES ------------ Popup Chat Messages
SCREENTIP_LAYER
Layer for screentips
SEETHROUGH_PLANE
Slightly above the game plane but does not catch mouse clicks. Useful for certain visuals that should be clicked through, like seethrough trees
SPLASHSCREEN_PLANE
Plane of the "splash" icon used that shows on the lobby screen
TUTORIAL_INSTRUCTIONS_LAYER
Layer for tutorial instructions
TYPING_LAYER
--------------- FULLSCREEN RUNECHAT BUBBLES ------------ Bubble for typing indicators
WATER_LEVEL_LAYER
Anything below this layer is to be considered completely (visually) under water by the immerse layer.
WATER_VISUAL_OVERLAY_LAYER
The layer of the visual overlay used in the submerge element. The vis overlay inherits the planes of the movables it's attached to (that also have KEEP_TOGETHER added) We just have to make sure the visual overlay is rendered above all the other overlays of those movables.