|View Issue Details|
|ID||Project||Category||View Status||Date Submitted||Last Update|
|0001870||OpenClonk||Engine||public||2016-12-18 17:03||2017-12-23 11:15|
|Target Version||git master||Fixed in Version|
|Summary||0001870: SetObjDrawTransform causes unintended distortion on certain objects|
|Description||SetObjDrawTransform() causes a distortion that is not intended. For example, in objects with a large width and a small height, it causes distortion if the width parameter is low - in this case the graphics are drawn about twice as high as they should be.|
This depends on the window size, see "Steps to Reproduce"
|Steps To Reproduce||An object with|
was created. The phenomenon appears, regardless whether you transform a layer of the object itself or if you give another object these graphics and transform them.
To reproduce the phenomenon, do the following:
var dummy = CreateObject(foo);
dummy->SetGraphics("bar", nil, 1, 1);
dummy->SetGraphics("bar", nil, 2, 1);
dummy->SetClrModulation(RGB(0, 0, 0), 1);
dummy->SetObjDrawTransform(x, 0, 0, 0, 1000, 0, 2);
Change the parameter x to different values, for example x=50, and x=1000; If x is very small, then the object should appear with more distortion in the height than intended.
|Additional Information||* You can determine a certain boundary value for the distortion. In my case this was x_distorted=106, x_undistorted=107). Once I changed the size of the editor window, so that the window was less wide, the values changed to x_distorted=137 and x_undistorted=138;|
* If you use a dummy object the values may be different.
* The phenomenon seems not to appear on square shaped object graphics, such as the rock.
* See bug http://ccf.striver.net/bugtrack.php?shbug=13355, the object in question is Hazard_HUD from the following pack https://ccan.de/cgi-bin/ccan/ccan-view.pl?a=view&i=6270
|Tags||No tags attached.|
I'd guess it's an issue with float precision somewhere? It only happens for small screen sizes because in OpenGL, screen coordinates are always between 0 and 1.
If that's the case, I don't know if we can do anything about it. It doesn't seem to be much of an issue if it only happens for tiny editor viewports.
|It happens not only for tiny editor viewports, but with "normal" screen resolution when playing the Hazard pack.|
|2016-12-18 17:03||Marky||New Issue|
|2016-12-19 17:02||Luchs||Status||new => confirmed|
|2016-12-19 17:02||Luchs||Note Added: 0005549|
|2016-12-20 08:52||Marky||Note Added: 0005552|
|2017-08-05 13:58||Maikel||Target Version||=> 8.0|
|2017-12-23 11:15||Luchs||Product Version||git master => 8.0|
|2017-12-23 11:15||Luchs||Target Version||8.0 => git master|