{"action":"created","issue":{"url":"https://api.github.com/repos/clintbellanger/flare-engine/issues/1366","labels_url":"https://api.github.com/repos/clintbellanger/flare-engine/issues/1366/labels{/name}","comments_url":"https://api.github.com/repos/clintbellanger/flare-engine/issues/1366/comments","events_url":"https://api.github.com/repos/clintbellanger/flare-engine/issues/1366/events","html_url":"https://github.com/clintbellanger/flare-engine/pull/1366","id":62081939,"number":1366,"title":"Scaled internal resolution; Resizable window; Drop SDL 1.2","user":{"login":"dorkster","id":913982,"avatar_url":"https://avatars.githubusercontent.com/u/913982?v=3","gravatar_id":"","url":"https://api.github.com/users/dorkster","html_url":"https://github.com/dorkster","followers_url":"https://api.github.com/users/dorkster/followers","following_url":"https://api.github.com/users/dorkster/following{/other_user}","gists_url":"https://api.github.com/users/dorkster/gists{/gist_id}","starred_url":"https://api.github.com/users/dorkster/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/dorkster/subscriptions","organizations_url":"https://api.github.com/users/dorkster/orgs","repos_url":"https://api.github.com/users/dorkster/repos","events_url":"https://api.github.com/users/dorkster/events{/privacy}","received_events_url":"https://api.github.com/users/dorkster/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":11,"created_at":"2015-03-16T13:28:15Z","updated_at":"2015-03-17T18:42:51Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/clintbellanger/flare-engine/pulls/1366","html_url":"https://github.com/clintbellanger/flare-engine/pull/1366","diff_url":"https://github.com/clintbellanger/flare-engine/pull/1366.diff","patch_url":"https://github.com/clintbellanger/flare-engine/pull/1366.patch"},"body":"This is a big one, and something I've had on the back of my mind since switching to SDL 2.\r\n\r\n[Video demo](http://a.pomf.se/ezsfhi.webm) and summary:\r\n\r\n- The game now has a \"virtual\" rendering area that is independent of the window size. We give it a height (virtual_height), and then calculate the appropriate width to match the window's aspect ratio. This is really nice because:\r\n - Windows are now filled completely. The only exception is windows that are \"tall\", in which case we letterbox the output.\r\n - The scale of the in-game camera is always the same. This prevents the problem where the player has a high resolution monitor, only to end up squinting at our tiny art resources.\r\n- Just about all of our menus were overwriting widget positions during construction. This made it impossible to update their positions as the window is resized. So widgets and menus have been redesigned to account for this.\r\n- The \"resolution\" setting has been removed from the Video options. It didn't make sense to keep this, since the window size can be changed on-the-fly. GameStateResolution was removed, since fullscreen mode just changes the window size to the desktop resolution.\r\n- Texture Filtering has been added as a Video option. When off, we use nearest neighbor filtering. When on, we use linear filtering.\r\n- Double Buffering has been renamed to V-Sync, since double buffering was an SDL 1.2 thing. V-Sync is what we're actually doing with SDL 2.\r\n"},"comment":{"url":"https://api.github.com/repos/clintbellanger/flare-engine/issues/comments/82518406","html_url":"https://github.com/clintbellanger/flare-engine/pull/1366#issuecomment-82518406","issue_url":"https://api.github.com/repos/clintbellanger/flare-engine/issues/1366","id":82518406,"user":{"login":"pennomi","id":832972,"avatar_url":"https://avatars.githubusercontent.com/u/832972?v=3","gravatar_id":"","url":"https://api.github.com/users/pennomi","html_url":"https://github.com/pennomi","followers_url":"https://api.github.com/users/pennomi/followers","following_url":"https://api.github.com/users/pennomi/following{/other_user}","gists_url":"https://api.github.com/users/pennomi/gists{/gist_id}","starred_url":"https://api.github.com/users/pennomi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/pennomi/subscriptions","organizations_url":"https://api.github.com/users/pennomi/orgs","repos_url":"https://api.github.com/users/pennomi/repos","events_url":"https://api.github.com/users/pennomi/events{/privacy}","received_events_url":"https://api.github.com/users/pennomi/received_events","type":"User","site_admin":false},"created_at":"2015-03-17T18:42:51Z","updated_at":"2015-03-17T18:42:51Z","body":"Ah, a mod to change scale... Yeah that actually sounds better than a setting. Now I'm 110% on board. :)"}}