When piston moves a light source, for the duration of the transition there's no light emitted at either the old or new location of said light source.
Now, if moving piston (MP) were to additionally have a "light" blockstate - exactly like in Light blocks - then the MP block currently at the new location of a moved light source could emit that light source's light lvl. This way, the same tick the light source is replaced by a MP and stops emitting light in old location, would be the same tick it starts emitting the light in the new location.
This approach might positively impact not just the visual aspect, but also reduce lag - when piston moves a light source, the game had to recalculate the light levels in the affected area... just to recalculate it again 3 ticks later. This can especially be felt when moving many light blocks at once.
2 additional blockstate suggestions:
- "waterlogged" (bool) - air pocket that appears during underwater piston movement, would also be seen less. For water mechanics it'd be treated as enclosed block (like leaves&mangrove roots). Could be true if:
a) moving waterlogged block(s)
b) to the left&right of moved blocks (moving dir.-wise) there was water source/valid (open) waterlogged block
- "transparent" (bool) - flickering of light during the motion, from higher light levels behind the piston&moved blocks, could be somewhat minimalized. Like with light, the value would be based on the moved blocks' transparency
Please sign in to leave a comment.
0 Comments