• 0 Posts
  • 39 Comments
Joined 5 个月前
cake
Cake day: 2026年3月9日

help-circle



  • The Nintendo controller has the same button names as the Xbox (defacto standard PC controller) but different placement. If buttons are mapped based on physical position but using Xbox glyphs, Nintendo buttons are called out incorrectly. If buttons are mapped based on name, Nintendo buttons are called out correctly but the controls are positioned weird and displayed wrong if displayed on screen in button layout. PS controllers have no chance of making sense when dealing with lazy devs.

    It’s super easy to implement multiple sets of glyphs and mappings for the three main controller types. Pretty much anything else is a clone of those three. I have no clue why so many don’t bother.





  • Rectangular area lights can create softer shadows and more realistic reflections for your scenes.

    In real time rendering, the first half of this is false. The shadow casting for area lights is identical to point lights. They aren’t casting from everywhere on the surface of the area, just from the center point.

    They may be handling it correctly when baking.


  • If you have a dynamic container, it is sized based on its contents and everything inside of it is positioned based on everything else. If you move something, that impacts everything around it, including the container itself. There are workarounds like having an invisible placeholder and a separate graphical element, but they aren’t user-friendly.

    Offset transforms allow you to leave the logical version of a thing in place while moving the visual. The demo in the release notes has a grid of icons which get bigger and move when you mouse over them, which would have reflowed the other icons or resized the box before.




  • To do what you are trying to do, you need the TileMapLayer to already be rendered before the shader runs. That’s called a post processing effect. There are two routes, the easy and the hard way:

    Easy: Put an object in front of the camera, covering the whole view. Put your screen-reading shader on it. It needs to be sorted on top of the things you want it to shade. This is conceptually similar to what you tried with 2b, but what matters is the sort order on screen, not the node structure.

    Hard but better: Compositor effects. These are true post processing shaders that can be ran at various points in the rendering process. They require a bunch of boilerplate gdscript to run and use a slightly different shader language, but they are the proper method of doing post-fx. I don’t know if they work in 2D, however.