{"id":9130,"date":"2023-01-26T21:37:18","date_gmt":"2023-01-26T12:37:18","guid":{"rendered":"https:\/\/minnano.app\/support\/?p=9130"},"modified":"2023-01-26T21:45:00","modified_gmt":"2023-01-26T12:45:00","slug":"env_pri_cat_26","status":"publish","type":"post","link":"https:\/\/minnano.app\/support\/2023\/01\/26\/env_pri_cat_26\/","title":{"rendered":"\u30b2\u30fc\u30e0\u5236\u4f5c \u74b0\u5883\u539f\u732b 26\u65e5\u76ee"},"content":{"rendered":"\n<p>\u672c\u65e5\u306f<a href=\"https:\/\/minnano.app\/support\/2023\/01\/25\/env_pri_cat_25\/\">\u6628\u65e5<\/a>\u306b\u5f15\u304d\u7d9a\u304d\u3001Mac\u306b\u304a\u3051\u308b\u958b\u767a\u74b0\u5883\u3092\u6574\u3048\u308b\u305f\u3081\u3001VSCode\u306b\u300crust-analyzer\u300d\u300cCodeLLDB\u300d\u300cShader languages support for VS Code\u300d\u306e3\u3064\u306e\u62e1\u5f35\u6a5f\u80fd\u3092\u5165\u308c\u307e\u3057\u305f\u3002<\/p>\n\n\n\n<p>\u307e\u305f\u3001FPS\u8a08\u6e2c\u30ed\u30b8\u30c3\u30af\u3092\u5b9f\u88c5\u3057\u3001Mac\u3067<\/p>\n\n\n\n<p class=\"has-large-font-size\">1\u5104\u500b\u306e\u30dd\u30a4\u30f3\u30c8\u30b9\u30d7\u30e9\u30a4\u30c8<\/p>\n\n\n\n<p>\u3092\u63cf\u753b\u3057\u3066\u4f55FPS\u51fa\u308b\u304b\u78ba\u8a8d\u3057\u307e\u3057\u305f\u3002<\/p>\n\n\n\n<p>FPS\u8a08\u6e2c\u30ed\u30b8\u30c3\u30af\u306f\u4ee5\u4e0b\u306e\u3088\u3046\u306a\u5b9f\u88c5\u3067\u3059\u3002<\/p>\n\n\n\n<pre class=\"wp-block-code has-small-font-size\"><code><strong><mark style=\"background-color:rgba(0, 0, 0, 0);color:#ff0000\" class=\"has-inline-color\">const B_FPS: bool = true;<\/mark><\/strong>           \/\/ FPS \u8868\u793a\u30d5\u30e9\u30b0\n<mark style=\"background-color:rgba(0, 0, 0, 0);color:#ff0000\" class=\"has-inline-color\"><strong>let mut draw_count_for_fps = 0;\nlet mut start_for_fps = Instant::now();<\/strong><\/mark>\n\nconst B_LIMIT_60FPS: bool = true;   \/\/ 60FPS\u5236\u9650\u30d5\u30e9\u30b0\nlet time_for_wait = 1_000_000_000u32 \/ 64;  \/\/ 60 \u3067\u5272\u308b\u306860FPS\u51fa\u306a\u3044\u306e\u3067\u4f59\u88d5\u3092\u6301\u305f\u305b\u3066\u304a\u304f\nlet mut start_loop = Instant::now();\n\n\u2019running: loop {\n    if B_LIMIT_60FPS {\n        start_loop = Instant::now();\n    }\n    \uff5e\u63cf\u753b\u51e6\u7406\u7701\u7565\uff5e\n    \/\/ swap window\n    window.gl_swap_window();\n    \/\/ calc fps\n<strong>    <mark style=\"background-color:rgba(0, 0, 0, 0);color:#ff0000\" class=\"has-inline-color\">if B_FPS {\n        draw_count_for_fps += 1;\n        let time_for_fps_ms = start_for_fps.elapsed().as_millis();\n        if 1000 &lt;= time_for_fps_ms {\n            println!(\"{:.2} FPS\", (draw_count_for_fps as f64 * 1000.0) \/ time_for_fps_ms as f64);\n            draw_count_for_fps = 0;\n            start_for_fps = Instant::now();\n        }\n    }<\/mark><\/strong>\n    if B_LIMIT_60FPS {\n        let time_nanos: u32 = start_loop.elapsed().as_nanos() as u32;\n        \/\/println!(\"{}\u30ca\u30ce\u79d2\u7d4c\u904e\u3057\u307e\u3057\u305f\u3002\", time_nanos);\n        if time_nanos &lt; time_for_wait {\n            \/\/println!(\"{}\u30ca\u30ce\u79d2\u5f85\u6a5f\u3057\u307e\u3057\u305f\u3002\", time_for_wait - time_nanos);\n            ::std::thread::sleep(::std::time::Duration::new(0, time_for_wait - time_nanos));\n        }\n    }\n}<\/code><\/pre>\n\n\n\n<p class=\"has-large-font-size\">1\u5104\u500b\u63cf\u753b\u3057\u305f\u7d50\u679c\u306f<\/p>\n\n\n\n<p>Windows(9900K + RTX3070)\u3067\u306f20FPS<\/p>\n\n\n\n<p class=\"has-large-font-size\">Mac(M1)\u3067\u306f1FPS\u672a\u6e80<\/p>\n\n\n\n<p>\u3067\u3057\u305f\u3002<\/p>\n\n\n\n<p>\u3061\u306a\u307f\u306b1000\u4e07\u500b\u306e\u5834\u5408\u3001<\/p>\n\n\n\n<p>Windows(9900K + RTX3070)\u3067\u306f60FPS\u5f35\u4ed8\u304d<\/p>\n\n\n\n<p class=\"has-large-font-size\">Mac(M1)\u3067\u306f8FPS<\/p>\n\n\n\n<p>\u3067\u3057\u305f\u3002<\/p>\n\n\n\n<p><a href=\"https:\/\/minnano.app\/support\/2023\/01\/27\/env_pri_cat_27\/\">\u6b21\u306e\u65e5<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>\u672c\u65e5\u306f\u6628\u65e5\u306b\u5f15\u304d\u7d9a\u304d\u3001Mac\u306b\u304a\u3051\u308b\u958b\u767a\u74b0\u5883\u3092\u6574\u3048\u308b\u305f\u3081\u3001VSCode\u306b\u300crust-analyzer\u300d\u300cCodeLLDB\u300d\u300cShader languages support for VS Code\u300d\u306e3\u3064\u306e\u62e1\u5f35\u6a5f\u80fd\u3092\u5165\u308c &hellip; <a href=\"https:\/\/minnano.app\/support\/2023\/01\/26\/env_pri_cat_26\/\" class=\"more-link\">\u7d9a\u304d\u3092\u8aad\u3080 <span class=\"screen-reader-text\">\u30b2\u30fc\u30e0\u5236\u4f5c \u74b0\u5883\u539f\u732b 26\u65e5\u76ee<\/span> <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[23],"tags":[],"class_list":["post-9130","post","type-post","status-publish","format-standard","hentry","category-23"],"_links":{"self":[{"href":"https:\/\/minnano.app\/support\/wp-json\/wp\/v2\/posts\/9130","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/minnano.app\/support\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/minnano.app\/support\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/minnano.app\/support\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/minnano.app\/support\/wp-json\/wp\/v2\/comments?post=9130"}],"version-history":[{"count":9,"href":"https:\/\/minnano.app\/support\/wp-json\/wp\/v2\/posts\/9130\/revisions"}],"predecessor-version":[{"id":9140,"href":"https:\/\/minnano.app\/support\/wp-json\/wp\/v2\/posts\/9130\/revisions\/9140"}],"wp:attachment":[{"href":"https:\/\/minnano.app\/support\/wp-json\/wp\/v2\/media?parent=9130"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/minnano.app\/support\/wp-json\/wp\/v2\/categories?post=9130"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/minnano.app\/support\/wp-json\/wp\/v2\/tags?post=9130"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}