I wrote my own extensions to the SDL2_gfx library to draw antialiased figures (ellipses, polygons, etc.) which call only the standard integer functions. So I have no need for the new float functions (until all the Linux repositories have updated to SDL 2.0.10 or later I can’t even assume that those functions will be available to my users).
However my SDL2_gfx extensions rely crucially on being able to draw horizontal and vertical lines with a precise position and length. SDL_RenderDrawLine()
should be suitable because the docs explicitly state that the line includes both end points, but in practice that has never been reliable. On Linux there is code in SDL which explicitly causes one end point to be omitted, and a bug in SDL 2.0.10 means that one end point is omitted (actually plotted in the wrong place) on all platforms!
So basically that means I cannot trust SDL_RenderDrawLine()
to plot precisely the pixels I need it to, and currently I am calling SDL_RenderDrawPoints()
simply to draw a horizontal or vertical line! This is very wasteful and potentially slow, so my interest in SDL_RenderDrawLineF()
was in part to see if it could be relied upon to plot exactly the same pixels on every platform. To the extent that its behavior depends on graphics card settings it would seem not.