| Summary: | Rendering platform differences | ||
|---|---|---|---|
| Product: | SDL | Reporter: | Mike <michrublev> |
| Component: | video | Assignee: | Sam Lantinga <slouken> |
| Status: | RESOLVED FIXED | QA Contact: | Sam Lantinga <slouken> |
| Severity: | normal | ||
| Priority: | P2 | ||
| Version: | HG 2.0 | ||
| Hardware: | x86 | ||
| OS: | All | ||
| Attachments: |
Sample program
Snapshot on Linux Snapshot on Vista Snapshot on XP Line rendering difference Sample program: line rendering - one pixel difference demo |
||
Created attachment 346 [details]
Snapshot on Linux
Created attachment 347 [details]
Snapshot on Vista
Created attachment 348 [details]
Snapshot on XP
Can you retest with the current SDL snapshot? http://www.libsdl.org/tmp/SDL-1.3.zip Thanks! Expecting that
{{{
SDL_SetRenderDrawColor(255, 0, 0, SDL_ALPHA_OPAQUE);
SDL_RenderPoint(point1X, point1Y);
SDL_RenderPoint(point2X, point2Y);
SDL_SetRenderDrawColor(255, 255, 0, SDL_ALPHA_OPAQUE);
SDL_RenderLine(point1X, point1Y, point2X, point2Y);
}}}
works similar, but for linux a line covers both points, for win32 - only one: top (for vertical lines) or left (for horizontal).
Linux: software renderer
Win32: D3D renderer
Tested with SDL-1.3.0-5097 snapshot.
Attaching an image for comparison and code of the test program
Created attachment 416 [details]
Line rendering difference
Created attachment 417 [details]
Sample program: line rendering - one pixel difference demo
Thanks, I'll take a look at this after I get the 1.2 release wrapped up. Whew, it took a while, but I've got the automated tests working and fixed lots of problems with the line rendering on various platforms. Can you try in the latest snapshot? http://www.libsdl.org/tmp/SDL-1.3.zip Thanks! The issue was solved! Thanks! Yay, thanks! |
Created attachment 345 [details] Sample program SDL_RenderLine() and SDL_RenderFill() are mismatch in the reference grid. I've attached a listing of the program that draws a cross, using both this functions, in the same coordinates. Linux: one "extra" pixel at the bottom and right for SDL_RenderLine() Windows: both XP and Vista has shifting to one pixel to right-bottom for SDL_RenderFill() against SDL_RenderLine().