Chaosforge Forum

DoomRL => Requests For Features => Topic started by: Potman on May 15, 2012, 11:53

Title: Smoother liquid transition
Post by: Potman on May 15, 2012, 11:53
As observed here, (http://i.imgur.com/8IwTM.png) different sorts of tiles, such as water and acid in this case, look really blocky when put together. Any chance smoothening it out a little? Maybe even make the border tiles do damage, albeit a bit less, than full acid does?
Title: Re: Smoother liquid transition
Post by: Game Hunter on May 15, 2012, 12:47
I think that's doable. Currently the partial liquid tiles mesh with the floor tile they're adjacent to, so I imagine something similar can be done for liquid-to-liquid transitions. It might require some fine-tuning with regards to looks, but I agree that two liquids mixing is clunky and some degree of smoothness should be attempted. (It does sound a little complicated to ensure that one acts as the foreground and the other as the background, however, so this is really Kornel's call.)

Maybe even make the border tiles do damage, albeit a bit less, than full acid does?
This is a no, because the game is wholly tile-based: when you move onto a particular cell, you'll be affected by the cell regardless of neighboring positions. It would be easier to consider this from the perspective of a console player: as there are no partial visuals there, everything is all or nothing, and the same has to hold when it's displayed with more detailed graphics.
Title: Re: Smoother liquid transition
Post by: Kornel Kisielewicz on May 15, 2012, 14:08
Actually that's not doable :P. Or doable, but surprisingly hard. Moreover it would increase the number of layers needed to be rendered, which would increase the GFX requirements even more (possibly beyond netbooks unfortunately).

There are cheap tricks that would allow to circumvent that, but we would loose what is most important for me in the engine -- flexibility.

So for now -- no, unfortunately that's not possible.
Title: Re: Smoother liquid transition
Post by: ParaSait on May 15, 2012, 17:26
Actually that's not doable :P. Or doable, but surprisingly hard. Moreover it would increase the number of layers needed to be rendered, which would increase the GFX requirements even more (possibly beyond netbooks unfortunately).
Why is the transition doable with liquids to floor tiles, then?
Title: Re: Smoother liquid transition
Post by: Creepy on May 15, 2012, 19:07
Floor tiles could be on a lower layer than liquids, which could have all ended up sharing a layer for ease of use.

Transition from floor to liquid would just be putting the liquid tiles with the appropriate transparent bits above a generic floor tile on the layer below them. Transitioning between different liquids would then require adding two more layers (Current liquid layer becomes dedicated water layer, add a layer for acid and a layer lava). I don't know how many layers are in use at the moment (floor, liquids, walls, objects?), but adding two more would probably add a sizable amount to the graphical-version's requirements.
Title: Re: Smoother liquid transition
Post by: tehtmi on May 15, 2012, 20:19
What about using the existing floor-fluid boundary tiles to provide the transition between fluid types?  It would look like a thin strip of floor between the fluids, and shouldn't require any new art or additional layers.
Title: Re: Smoother liquid transition
Post by: Matt_S on May 15, 2012, 21:32
What about using the existing floor-fluid boundary tiles to provide the transition between fluid types?  It would look like a thin strip of floor between the fluids, and shouldn't require any new art or additional layers.
I was about to suggest this myself.
Title: Re: Smoother liquid transition
Post by: IronBeer on May 15, 2012, 22:55
Semi-related: there is one particular fluid interaction that console diehards like myself may appreciate being examined. In Hell levels, small blocks (1 square, isolated or diagonally attached) blocks of lava can sometimes have the same color as the surrounding floor. Despite the different ASCII character, it can still be difficult to differentiate the floor types. Would it be possible to force single (orthogonally-connected) tiles of lava to use only the brighter colors from the "lava palette"?