Hm, on that note, what about the shield and dithered water? Perhaps the purpose of the goggles was just to be an alternate graphic for the shields since they wouldn't work well here. Of course, the Sonic 2 shield just flashes and doesn't use dithering, but that's another game.
Sorry for being stupid, but I don't quite get the link between dithering and the air rooms. Could someone explain?
The palette swap affects the entire screen starting from its top going down. This means that you'd have to reserve some color slots to be identical between the two palettes in order to depict any air pockets underwater. Even if you do this, you still have the problem of sprites. The HUD and monitors use the same palette as the player, the HUD would be showing the wrong colors. And while you can change the palette as many times as you want, it causes buggy "CRAM dots" where the change occurred (the sprite water surface was meant to cover this up), so it's not like you could just go Underwater -> Air -> Underwater again on Sonic's palette line without causing junky noise on the screen. And if the HUD and Sonic are on the same lines, then either part of Sonic will be water colored, or part of the HUD will be air colored, you can only choose one. I mean you could pull it off with some clunky workarounds, but the results would invariably be flawed and therefore not worth the effort.
Right - even if you reserved some colors for the air pockets, something still doesn't look right about it:
Now that we have the magic of ✨technology✨, I kind of wonder if any potential future classic Sonic game could try the air pocket thing. The air bubbles are a series staple, but it can feel a little frustrating or unfair when you get to an air pocket and the bubble just won't spawn in time.
I don't think it fits the shield, those googles most likely overlayed when under water or were a power up to breave, there's a monitor graphic for them right? The more I think about the old labyrinth the more the alpha build comes together, solid background, square layouts and tiles, air pockets, seems like the original plan changed a lot beause of the water change alone.
Just throwing this out there, but perhaps the swimming goggles were supposed to allow the player to see clearer underwater by disabling the water effect? The dithering-based effect would have used checkerboard pixels to exploit the pixel blending in contemporary TVs and produce pseudo-transparency, but this would have caused slight distortion. Then they switched to the palette swap method, which doesn't suffer from this and looks pretty clear already, so the goggles became redundant and were scrapped.
You know -- either that, or that when they were on would stop the palette swap before they figured out how to do it mid-frame. It does make me curious.
The theory I posit with the air rooms was that ONLY the background layer would change in colour. Not the foreground. That way you could tell you were underwater by if the background was tinted. The foreground was still bright, the visual language presented by the game is that you're traversing a series of caverns, portions of which are still underwater. Maybe they hit playtesting issues with people still not quite getting they were underwater, so they just decided to make the entire screen tinted? I just figured the reason they never went that route would've been that dealing with the lack of colours in the palette wasn't worthwhile. But, it's just a theory. Not a proven fact. Being dithered does make just about as much sense. And it's 3:27AM, and already kind of regretting this post, so. :D
I wonder if the dithered water was ever actually implemented. The only builds we've seen either lack water entirely or already have the final effect. It occurred to me that the raising/lowering water levels would not likely be a part of the original design, unless they went out of their way to add a feature to fill the air 16x16 metatiles with water (and even then they'd have to have 8 variants of the tile to make it go smoothly). Since the water would likely be statically built-into the chunks, I wonder if the chunk IDs are used in specific enough context to indicate what the water level might've been throughout the level. One thing's for sure, you're not limited to a single height, you could have it vary throughout the level. And though they probably wouldn't do this, I thought of a little method that could make dithering a little nicer. Have an A/B alternating pattern that swaps every refresh (even when the game is paused). If the sum of the camera's X and Y movement in pixels is even, swap the pattern, but if the sum of pixels is odd, then do not swap the pattern (this way it would still effectively switch on-screen at all times).
Actually you have a super good point there. I bet you that the water level rising was just an added bonus of having to deal with the spots in the level where water varied originally. My guess is that the dithering was used like a tile throughout the level and then they figured out the mid level swap. It only made sense to compensate for the water sections by raising and lowering the water level.