{"action":"created","issue":{"url":"https://api.github.com/repos/fabiangreffrath/crispy-doom/issues/324","repository_url":"https://api.github.com/repos/fabiangreffrath/crispy-doom","labels_url":"https://api.github.com/repos/fabiangreffrath/crispy-doom/issues/324/labels{/name}","comments_url":"https://api.github.com/repos/fabiangreffrath/crispy-doom/issues/324/comments","events_url":"https://api.github.com/repos/fabiangreffrath/crispy-doom/issues/324/events","html_url":"https://github.com/fabiangreffrath/crispy-doom/issues/324","id":326605702,"node_id":"MDU6SXNzdWUzMjY2MDU3MDI=","number":324,"title":"FPS capping while paused / non-playable game states","user":{"login":"JNechaevsky","id":21193394,"node_id":"MDQ6VXNlcjIxMTkzMzk0","avatar_url":"https://avatars0.githubusercontent.com/u/21193394?v=4","gravatar_id":"","url":"https://api.github.com/users/JNechaevsky","html_url":"https://github.com/JNechaevsky","followers_url":"https://api.github.com/users/JNechaevsky/followers","following_url":"https://api.github.com/users/JNechaevsky/following{/other_user}","gists_url":"https://api.github.com/users/JNechaevsky/gists{/gist_id}","starred_url":"https://api.github.com/users/JNechaevsky/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/JNechaevsky/subscriptions","organizations_url":"https://api.github.com/users/JNechaevsky/orgs","repos_url":"https://api.github.com/users/JNechaevsky/repos","events_url":"https://api.github.com/users/JNechaevsky/events{/privacy}","received_events_url":"https://api.github.com/users/JNechaevsky/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":4,"created_at":"2018-05-25T17:27:08Z","updated_at":"2018-06-04T10:59:44Z","closed_at":null,"author_association":"COLLABORATOR","body":"Since we have taking a good way of rejecting full uncapping, I would like to suggest yet another one, maybe a bit fanatical step - reducing fps to 35 in some non-playable game states. \r\n\r\n**Possible benefits**\r\n\r\nLess CPU usage = less noise... Oh, should I really say that again? In other words: don't need to abuse CPU in the states, where it's really not necessary. Let's take care about hardware and thermal grease.\r\n\r\nLet's see a difference in CPU usage on simple and extreme detailed places:\r\n\r\n- MAP18 (unpaused, uncapped. CPU usage is 7.2%) - http://priscree.ru/img/5c41a06a26fb28.png\r\n- MAP18 (paused, capped. CPU usage is 2.8%) - http://priscree.ru/img/c0db7677f4ea76.png\r\n- Nova MAP31 (unpaused, uncapped. CPU usage is 27.4%) - http://priscree.ru/img/c4a981aa43028c.png\r\n- Nova MAP31 (paused, capped. 17.4%) - http://priscree.ru/img/c5fa0927a6eae7.png\r\n\r\nNote: CPU usage value is always floating about 1%.\r\n\r\n**Approach**\r\n\r\nPlease take a look at my current approach as a template (there are no `gamestate ` conditions yet):\r\nhttps://github.com/JNechaevsky/russian-doom/commit/675d921963750a0057a3e9fa5f9e8d203e04165f\r\n\r\nSwitching between 35/60 fps does not seems to have a notable delay, despite of both FPS counters (`IDRATE` and video capturing software) are indicating it. Just try to run with full speed and pause/unpause the game, you will not see any framerate changes. Hopefully.\r\n\r\n**What should be capped?**\r\n\r\n- Paused game state (`paused`)\r\n- Paused game state in non-network game (`(!menuactive || demoplayback || netgame)`)\r\n- Intermission and text screens (`gamestate == ...?`)\r\n- Something else?\r\n\r\n**What should not happen**\r\n\r\nNotable slow down of fuzz effect by changing 60 fps to 35 fps. It's looking aesthetically awful! But you are already taking care about fuzz, eh? :)\r\n\r\nAlso beware, Heretic and Hexen are using `MenuActive` instead of `menuactive`, that's why I have made a full replacements in commit from above.\r\n\r\n_Taking full responsibility to declare this is a suggestion №94_"},"comment":{"url":"https://api.github.com/repos/fabiangreffrath/crispy-doom/issues/comments/394315767","html_url":"https://github.com/fabiangreffrath/crispy-doom/issues/324#issuecomment-394315767","issue_url":"https://api.github.com/repos/fabiangreffrath/crispy-doom/issues/324","id":394315767,"node_id":"MDEyOklzc3VlQ29tbWVudDM5NDMxNTc2Nw==","user":{"login":"fabiangreffrath","id":6449237,"node_id":"MDQ6VXNlcjY0NDkyMzc=","avatar_url":"https://avatars2.githubusercontent.com/u/6449237?v=4","gravatar_id":"","url":"https://api.github.com/users/fabiangreffrath","html_url":"https://github.com/fabiangreffrath","followers_url":"https://api.github.com/users/fabiangreffrath/followers","following_url":"https://api.github.com/users/fabiangreffrath/following{/other_user}","gists_url":"https://api.github.com/users/fabiangreffrath/gists{/gist_id}","starred_url":"https://api.github.com/users/fabiangreffrath/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/fabiangreffrath/subscriptions","organizations_url":"https://api.github.com/users/fabiangreffrath/orgs","repos_url":"https://api.github.com/users/fabiangreffrath/repos","events_url":"https://api.github.com/users/fabiangreffrath/events{/privacy}","received_events_url":"https://api.github.com/users/fabiangreffrath/received_events","type":"User","site_admin":false},"created_at":"2018-06-04T10:59:44Z","updated_at":"2018-06-04T10:59:44Z","author_association":"OWNER","body":"> because I've made gamestate_t global.\r\n\r\nSorry, but this won't happen."}}
{"actor":{"display_login":"fabiangreffrath"}}