{"id":1434,"date":"2021-07-26T16:35:03","date_gmt":"2021-07-26T16:35:03","guid":{"rendered":"http:\/\/www.goncalo.pt\/por\/?p=1434"},"modified":"2023-10-07T03:06:40","modified_gmt":"2023-10-07T03:06:40","slug":"2021-07-26-chuva-ja-com-vento-e-teste-de-performance-para-o-meu-game-engine-em-c-c","status":"publish","type":"post","link":"https:\/\/www.goncalo.pt\/por\/2021\/07\/26\/2021-07-26-chuva-ja-com-vento-e-teste-de-performance-para-o-meu-game-engine-em-c-c\/","title":{"rendered":"2021-07-26 &#8211; Chuva j\u00e1 com vento, e teste de performance, para o meu Game Engine em C\/C++&#8230;"},"content":{"rendered":"\n<p>O teste final de performance \u00e0 chuva, e j\u00e1 com vento. Cliquem na imagem acima para ver a anima\u00e7\u00e3o, ou abaixo.<\/p>\n\n\n\n<p>Est\u00e3o at\u00e9 21.000 objectos no ecr\u00e3, desta chuva aleat\u00f3ria e com vento aleat\u00f3rio, gastando apenas 2% a 5% do CPU de um fraquinho I5 quando no auge da chuva. Isto inclui a aleatoriedade da chuva, tamanhos, transpar\u00eancias, \u00e2ngulo, vento, velocidade, etc.<\/p>\n\n\n\n<p>Pois h\u00e1 v\u00e1rias layers, pois h\u00e1 gotas mais pr\u00f3ximas de n\u00f3s e outras mais longe, a velocidade de queda varia obviamente consoante a gravidade (a Gravidade \u00e9 a mesma mas o \u00e2ngulo de vis\u00e3o n\u00e3o), bem como o tamanho, e transpar\u00eancias (mais distantes, mais transparentes), sem implicar varia\u00e7\u00f5es dentro de cada layer de proximidade tamb\u00e9m, claro est\u00e1! Meti tamb\u00e9m os splashes, o \u00e2ngulo consoante o vento, os rastos de ilus\u00e3o \u00f3ptica das gotas, a gota mais vis\u00edvel que o rasto, e um movimento horizontal pelo vento, de acordo com o \u00e2ngulo.<\/p>\n\n\n\n<p>Para n\u00e3o falar das vagas de intensidade. Por vezes a chuva fica muito amena e quase que p\u00e1ra, e por outras vem em for\u00e7a como se fosse um dil\u00favio (poderia meter ainda mais forte). \ud83d\ude1b<\/p>\n\n\n\n<p>Tudo isto \u00e9 calculado. N\u00e3o optimizei demasiado, mas est\u00e1 relativamente bem optimizado.<\/p>\n\n\n\n<p>21.000 part\u00edculas como? Se repararem, cada gota de chuva tem um tra\u00e7o, e quando atinge o ch\u00e3o, nasce outra gota de chuva para a substituir (para ter umas at\u00e9 7.000 gotas no ecr\u00e3 em simult\u00e2neo), e d\u00e1 origem a pelo menos duas gotas no ch\u00e3o para fazer o efeito de &#8220;splash&#8221;, que aqui \u00e9 t\u00e3o r\u00e1pido que n\u00e3o d\u00e1 para ver bem. Assim, chegamos a ter 21.000 ou mais objectos em simult\u00e2neo no ecr\u00e3, sem chegar a entre 2% a 5% do CPU. \u00c9 o poder do C\/C++&#8230;<\/p>\n\n\n\n<p>O vento aqui n\u00e3o meti vari\u00e1vel, e assim apesar de n\u00e3o estar t\u00e3o realista, d\u00e1 para ver melhor como mexe a chuva com o vento, fiz com que andasse para os dois lados, um de cada vez, mas poderei meter aleat\u00f3rio depois.<\/p>\n\n\n\n<p>Eu tinha prometido a mim mesmo que s\u00f3 comprava um computador novo 5 anos depois, e andava com um port\u00e1til j\u00e1 meio avariado, mas j\u00e1 passaram os 5 anos, e agora ando com um I5 melhor, mas tempor\u00e1rio, pois depois ofere\u00e7o este \u00e0 minha m\u00e3e quando souber bem o que vou comprar (ser\u00e1 bem mais potente) para os pr\u00f3ximos 5 anos.<\/p>\n\n\n\n<p>Mas pode-se dizer que o meu Game Engine que no outro dava uns 5 a 20 FPS j\u00e1 nos limites em Fevereiro (quando come\u00e7ou a dar o berro de vez), neste fraco I5 d\u00e1 uns 2000 FPS facilmente, podendo ir milhares de FPS acima.<\/p>\n\n\n\n<p>Poderia ainda definir a altura dos splashes consoante a dist\u00e2ncia, ainda n\u00e3o o fiz (est\u00e1 &#8220;aleat\u00f3rio&#8221;), sou capaz de o fazer depois, mas ficar\u00e1 assim, mais ou menos.<\/p>\n\n\n\n<p>Recordo que na vida real, gotas s\u00e3o s\u00f3 gotas, e parecem-nos riscos no ch\u00e3o, por &#8220;ilus\u00e3o \u00f3ptica&#8221;, e nas fotos tamb\u00e9m, porque as m\u00e1quinas n\u00e3o capturam t\u00e3o r\u00e1pido de forma a captarem s\u00f3 gotas, por isso capturam riscos. Uma m\u00e1quina a s\u00e9rio j\u00e1 capturaria gotas sem riscos. Para simular essa nossa ilus\u00e3o \u00f3ptica, e at\u00e9 a das c\u00e2meras, eu desenhei os riscos \u00e0 pata.<\/p>\n\n\n\n<p>Meti como \u00e9 \u00f3bvio o c\u00e1lculo do \u00e2ngulo consoante o vento, e a velocidade a que se move horizontalmente de acordo com a mesma.<\/p>\n\n\n\n<p>Sou capaz de ainda trabalhar numa surpresa para adicionar \u00e0 chuva, mas depois partirei para outros projectos, e deixar de lado este umas semanas (o Game Engine).<\/p>\n\n\n\n<p>2021-07-26.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"640\" height=\"480\" src=\"http:\/\/www.goncalo.pt\/por\/wp-content\/uploads\/2021\/07\/ScreenAnimation_2021-07-26_171338.gif\" alt=\"2021-07-26 - Chuva j\u00e1 com vento, e teste de performance, para o meu Game Engine em C\/C++...\" class=\"wp-image-1436\"\/><figcaption>2021-07-26 &#8211; Chuva j\u00e1 com vento, e teste de performance, para o meu Game Engine em C\/C++&#8230;<\/figcaption><\/figure>\n\n\n\n<p>Publicado no LinkedIn em 2021-07-26:<\/p>\n\n\n\n<p>\u00abA minha simula\u00e7\u00e3o de chuva, j\u00e1 com vento, para o meu Game Engine, em C\/C++. Para uma simula\u00e7\u00e3o mais longa, ver o gif no link do meu website abaixo.<\/p>\n\n\n\n<p>Num fraco I5, com mais de 2 dezenas de milhares de objectos no ecr\u00e3, n\u00e3o gasta mais de 2% a 5% do processador. Fiz assim algo optimizado qb, para adicionar ao meu Game Engine.<\/p>\n\n\n\n<p>Tem muitas layers de proximidade, e isso influenciar\u00e1 como na realidade, as transpar\u00eancias das gotas de chuva, a velocidade com que caem (aparentemente, devido ao \u00e2ngulo de vis\u00e3o, j\u00e1 que a Gravidade \u00e9 a mesma), os seus tamanhos, etc, com &#8220;aleatoriedade&#8221; inserida, e com os splashes das gotas ao baterem no ch\u00e3o, e at\u00e9 uma gota mais fortemente vis\u00edvel que o seu rasto, o \u00e2ngulo causado pelo vento, a velocidade horizontal de acordo com o \u00e2ngulo, etc. Tudo \u00e9 calculado.<\/p>\n\n\n\n<p>Ah, e tem intensidade vari\u00e1vel, podem ver que por vezes fica mais ameno, e por outras: &#8220;It&#8217;s raining cats and dogs&#8221;!<\/p>\n\n\n\n<p>O rasto \u00e9 adicionado para simular a ilus\u00e3o \u00f3ptica de parecer um risco (tamb\u00e9m vis\u00edvel nas fotos), apesar de ser apenas uma gota.<\/p>\n\n\n\n<p>Num fraco I5 conseguiria ter 140.000 a 350.000 objectos no ecr\u00e3 a correr nos 60 FPS. \u00c9 o poder do C\/C++.<\/p>\n\n\n\n<p>O vento aqui est\u00e1 manualmente programado, mais tarde meto aleat\u00f3rio.<\/p>\n\n\n\n<p>2021-07-26.\u00bb<\/p>\n\n\n\n<p>In: <a href=\"https:\/\/www.linkedin.com\/feed\/update\/urn:li:activity:6825468069582831616\/\" target=\"_blank\" rel=\"noreferrer noopener\">https:\/\/www.linkedin.com\/feed\/update\/urn:li:activity:6825468069582831616\/<\/a>.<\/p>\n\n\n\n<p>E no Twitter, no mesmo dia, em: <a href=\"https:\/\/twitter.com\/GonzaloNuno\/status\/1419712517715243010\" target=\"_blank\" rel=\"noreferrer noopener\">https:\/\/twitter.com\/GonzaloNuno\/status\/1419712517715243010<\/a>.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"640\" height=\"480\" src=\"http:\/\/www.goncalo.pt\/por\/wp-content\/uploads\/2021\/07\/ScreenAnimation_2021-07-26_171338.gif\" alt=\"2021-07-26 - Chuva j\u00e1 com vento, e teste de performance, para o meu Game Engine em C\/C++...\" class=\"wp-image-1436\"\/><figcaption>2021-07-26 &#8211; Chuva j\u00e1 com vento, e teste de performance, para o meu Game Engine em C\/C++&#8230;<\/figcaption><\/figure>\n","protected":false},"excerpt":{"rendered":"<p>O teste final de performance \u00e0 chuva, e j\u00e1 com vento. Cliquem na imagem acima para ver a anima\u00e7\u00e3o, ou<\/p>\n","protected":false},"author":1,"featured_media":1436,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[6,284,5,3,285,289,4,162,292,133],"tags":[7,186,118,207,24,23,117,281,120,187,128,126,166,172,188,26,25],"class_list":["post-1434","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-game-development","category-platformers","category-programacao","category-projectos","category-shoot-em-up","category-horizontal-shooter","category-softwares","category-top-game-engine","category-varios-simuladores","category-video-jogos","tag-c","tag-chuva","tag-desenvolvimento-de-jogos","tag-dev","tag-game-dev","tag-game-engine","tag-motor-de-jogos","tag-platformer","tag-programacao","tag-rain","tag-shoot-em-up","tag-shooter","tag-simulacao","tag-simulacoes","tag-vento","tag-videogames","tag-videojogos"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v25.4 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>2021-07-26 - Chuva j\u00e1 com vento, e teste de performance, para o meu Game Engine em C\/C++... - Gon\u00e7alo Ferreira<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.goncalo.pt\/por\/2021\/07\/26\/2021-07-26-chuva-ja-com-vento-e-teste-de-performance-para-o-meu-game-engine-em-c-c\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"2021-07-26 - Chuva j\u00e1 com vento, e teste de performance, para o meu Game Engine em C\/C++... - Gon\u00e7alo Ferreira\" \/>\n<meta property=\"og:description\" content=\"O teste final de performance \u00e0 chuva, e j\u00e1 com vento. Cliquem na imagem acima para ver a anima\u00e7\u00e3o, ou\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.goncalo.pt\/por\/2021\/07\/26\/2021-07-26-chuva-ja-com-vento-e-teste-de-performance-para-o-meu-game-engine-em-c-c\/\" \/>\n<meta property=\"og:site_name\" content=\"Gon\u00e7alo Ferreira\" \/>\n<meta property=\"article:published_time\" content=\"2021-07-26T16:35:03+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2023-10-07T03:06:40+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.goncalo.pt\/por\/wp-content\/uploads\/2021\/07\/ScreenAnimation_2021-07-26_171338.gif?v=1631286463\" \/>\n\t<meta property=\"og:image:width\" content=\"640\" \/>\n\t<meta property=\"og:image:height\" content=\"480\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/gif\" \/>\n<meta name=\"author\" content=\"gnmf\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"gnmf\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"5 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/www.goncalo.pt\/por\/2021\/07\/26\/2021-07-26-chuva-ja-com-vento-e-teste-de-performance-para-o-meu-game-engine-em-c-c\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.goncalo.pt\/por\/2021\/07\/26\/2021-07-26-chuva-ja-com-vento-e-teste-de-performance-para-o-meu-game-engine-em-c-c\/\"},\"author\":{\"name\":\"gnmf\",\"@id\":\"https:\/\/www.goncalo.pt\/por\/#\/schema\/person\/28a9f845c4de91a7c067707279b1d8dd\"},\"headline\":\"2021-07-26 &#8211; Chuva j\u00e1 com vento, e teste de performance, para o meu Game Engine em C\/C++&#8230;\",\"datePublished\":\"2021-07-26T16:35:03+00:00\",\"dateModified\":\"2023-10-07T03:06:40+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.goncalo.pt\/por\/2021\/07\/26\/2021-07-26-chuva-ja-com-vento-e-teste-de-performance-para-o-meu-game-engine-em-c-c\/\"},\"wordCount\":925,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/www.goncalo.pt\/por\/#organization\"},\"image\":{\"@id\":\"https:\/\/www.goncalo.pt\/por\/2021\/07\/26\/2021-07-26-chuva-ja-com-vento-e-teste-de-performance-para-o-meu-game-engine-em-c-c\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.goncalo.pt\/por\/wp-content\/uploads\/2021\/07\/ScreenAnimation_2021-07-26_171338.gif?v=1631286463\",\"keywords\":[\"C++\",\"Chuva\",\"Desenvolvimento de Jogos\",\"Dev\",\"Game Dev\",\"Game Engine\",\"Motor de Jogos\",\"Platformer\",\"Programa\u00e7\u00e3o\",\"Rain\",\"Shoot Em Up\",\"Shooter\",\"Simula\u00e7\u00e3o\",\"Simula\u00e7\u00f5es\",\"Vento\",\"VideoGames\",\"VideoJogos\"],\"articleSection\":[\"Desenvolvimento de Jogos\",\"Platformers\",\"Programa\u00e7\u00e3o\",\"Projectos\",\"Shoot 'Em Up\",\"Shooter Horizontal\",\"Softwares\",\"Top Game Engine\",\"V\u00e1rios Simuladores\",\"Video Jogos\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/www.goncalo.pt\/por\/2021\/07\/26\/2021-07-26-chuva-ja-com-vento-e-teste-de-performance-para-o-meu-game-engine-em-c-c\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.goncalo.pt\/por\/2021\/07\/26\/2021-07-26-chuva-ja-com-vento-e-teste-de-performance-para-o-meu-game-engine-em-c-c\/\",\"url\":\"https:\/\/www.goncalo.pt\/por\/2021\/07\/26\/2021-07-26-chuva-ja-com-vento-e-teste-de-performance-para-o-meu-game-engine-em-c-c\/\",\"name\":\"2021-07-26 - Chuva j\u00e1 com vento, e teste de performance, para o meu Game Engine em C\/C++... - Gon\u00e7alo Ferreira\",\"isPartOf\":{\"@id\":\"https:\/\/www.goncalo.pt\/por\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/www.goncalo.pt\/por\/2021\/07\/26\/2021-07-26-chuva-ja-com-vento-e-teste-de-performance-para-o-meu-game-engine-em-c-c\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/www.goncalo.pt\/por\/2021\/07\/26\/2021-07-26-chuva-ja-com-vento-e-teste-de-performance-para-o-meu-game-engine-em-c-c\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.goncalo.pt\/por\/wp-content\/uploads\/2021\/07\/ScreenAnimation_2021-07-26_171338.gif?v=1631286463\",\"datePublished\":\"2021-07-26T16:35:03+00:00\",\"dateModified\":\"2023-10-07T03:06:40+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/www.goncalo.pt\/por\/2021\/07\/26\/2021-07-26-chuva-ja-com-vento-e-teste-de-performance-para-o-meu-game-engine-em-c-c\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.goncalo.pt\/por\/2021\/07\/26\/2021-07-26-chuva-ja-com-vento-e-teste-de-performance-para-o-meu-game-engine-em-c-c\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.goncalo.pt\/por\/2021\/07\/26\/2021-07-26-chuva-ja-com-vento-e-teste-de-performance-para-o-meu-game-engine-em-c-c\/#primaryimage\",\"url\":\"https:\/\/www.goncalo.pt\/por\/wp-content\/uploads\/2021\/07\/ScreenAnimation_2021-07-26_171338.gif?v=1631286463\",\"contentUrl\":\"https:\/\/www.goncalo.pt\/por\/wp-content\/uploads\/2021\/07\/ScreenAnimation_2021-07-26_171338.gif?v=1631286463\",\"width\":640,\"height\":480,\"caption\":\"2021-07-26 - Chuva j\u00e1 com vento, e teste de performance, para o meu Game Engine em C\/C++...\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.goncalo.pt\/por\/2021\/07\/26\/2021-07-26-chuva-ja-com-vento-e-teste-de-performance-para-o-meu-game-engine-em-c-c\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.goncalo.pt\/por\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"2021-07-26 &#8211; Chuva j\u00e1 com vento, e teste de performance, para o meu Game Engine em C\/C++&#8230;\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.goncalo.pt\/por\/#website\",\"url\":\"https:\/\/www.goncalo.pt\/por\/\",\"name\":\"Gon\u00e7alo Ferreira\",\"description\":\"[Game Engine\/Software\/Simulation\/Trading Systems\/Full Stack] Developer, Musician, Composer, Painter, Writer, IT Trainer, Sys Admin, Ex-Trader, Skater, Strongman, Vegan, Self-Taught Neuro-Divergent Polymath, and 1001 things more. Welcome to my world!\",\"publisher\":{\"@id\":\"https:\/\/www.goncalo.pt\/por\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.goncalo.pt\/por\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/www.goncalo.pt\/por\/#organization\",\"name\":\"Gon\u00e7alo Ferreira\",\"url\":\"https:\/\/www.goncalo.pt\/por\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.goncalo.pt\/por\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/www.goncalo.pt\/por\/wp-content\/uploads\/2023\/08\/cropped-Goncalo-Ferreira-Logo-With-Face.png\",\"contentUrl\":\"https:\/\/www.goncalo.pt\/por\/wp-content\/uploads\/2023\/08\/cropped-Goncalo-Ferreira-Logo-With-Face.png\",\"width\":389,\"height\":90,\"caption\":\"Gon\u00e7alo Ferreira\"},\"image\":{\"@id\":\"https:\/\/www.goncalo.pt\/por\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"http:\/\/www.linkedin.com\/in\/GoncaloPT\/\"]},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.goncalo.pt\/por\/#\/schema\/person\/28a9f845c4de91a7c067707279b1d8dd\",\"name\":\"gnmf\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.goncalo.pt\/por\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/78a295ef7300b60da1d67d4ce84359da?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/78a295ef7300b60da1d67d4ce84359da?s=96&d=mm&r=g\",\"caption\":\"gnmf\"},\"sameAs\":[\"http:\/\/www.goncalo.pt\/por\"],\"url\":\"https:\/\/www.goncalo.pt\/por\/author\/gnmf\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"2021-07-26 - Chuva j\u00e1 com vento, e teste de performance, para o meu Game Engine em C\/C++... - Gon\u00e7alo Ferreira","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.goncalo.pt\/por\/2021\/07\/26\/2021-07-26-chuva-ja-com-vento-e-teste-de-performance-para-o-meu-game-engine-em-c-c\/","og_locale":"en_US","og_type":"article","og_title":"2021-07-26 - Chuva j\u00e1 com vento, e teste de performance, para o meu Game Engine em C\/C++... - Gon\u00e7alo Ferreira","og_description":"O teste final de performance \u00e0 chuva, e j\u00e1 com vento. Cliquem na imagem acima para ver a anima\u00e7\u00e3o, ou","og_url":"https:\/\/www.goncalo.pt\/por\/2021\/07\/26\/2021-07-26-chuva-ja-com-vento-e-teste-de-performance-para-o-meu-game-engine-em-c-c\/","og_site_name":"Gon\u00e7alo Ferreira","article_published_time":"2021-07-26T16:35:03+00:00","article_modified_time":"2023-10-07T03:06:40+00:00","og_image":[{"url":"https:\/\/www.goncalo.pt\/por\/wp-content\/uploads\/2021\/07\/ScreenAnimation_2021-07-26_171338.gif?v=1631286463","width":640,"height":480,"type":"image\/gif"}],"author":"gnmf","twitter_card":"summary_large_image","twitter_misc":{"Written by":"gnmf","Est. reading time":"5 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.goncalo.pt\/por\/2021\/07\/26\/2021-07-26-chuva-ja-com-vento-e-teste-de-performance-para-o-meu-game-engine-em-c-c\/#article","isPartOf":{"@id":"https:\/\/www.goncalo.pt\/por\/2021\/07\/26\/2021-07-26-chuva-ja-com-vento-e-teste-de-performance-para-o-meu-game-engine-em-c-c\/"},"author":{"name":"gnmf","@id":"https:\/\/www.goncalo.pt\/por\/#\/schema\/person\/28a9f845c4de91a7c067707279b1d8dd"},"headline":"2021-07-26 &#8211; Chuva j\u00e1 com vento, e teste de performance, para o meu Game Engine em C\/C++&#8230;","datePublished":"2021-07-26T16:35:03+00:00","dateModified":"2023-10-07T03:06:40+00:00","mainEntityOfPage":{"@id":"https:\/\/www.goncalo.pt\/por\/2021\/07\/26\/2021-07-26-chuva-ja-com-vento-e-teste-de-performance-para-o-meu-game-engine-em-c-c\/"},"wordCount":925,"commentCount":0,"publisher":{"@id":"https:\/\/www.goncalo.pt\/por\/#organization"},"image":{"@id":"https:\/\/www.goncalo.pt\/por\/2021\/07\/26\/2021-07-26-chuva-ja-com-vento-e-teste-de-performance-para-o-meu-game-engine-em-c-c\/#primaryimage"},"thumbnailUrl":"https:\/\/www.goncalo.pt\/por\/wp-content\/uploads\/2021\/07\/ScreenAnimation_2021-07-26_171338.gif?v=1631286463","keywords":["C++","Chuva","Desenvolvimento de Jogos","Dev","Game Dev","Game Engine","Motor de Jogos","Platformer","Programa\u00e7\u00e3o","Rain","Shoot Em Up","Shooter","Simula\u00e7\u00e3o","Simula\u00e7\u00f5es","Vento","VideoGames","VideoJogos"],"articleSection":["Desenvolvimento de Jogos","Platformers","Programa\u00e7\u00e3o","Projectos","Shoot 'Em Up","Shooter Horizontal","Softwares","Top Game Engine","V\u00e1rios Simuladores","Video Jogos"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.goncalo.pt\/por\/2021\/07\/26\/2021-07-26-chuva-ja-com-vento-e-teste-de-performance-para-o-meu-game-engine-em-c-c\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.goncalo.pt\/por\/2021\/07\/26\/2021-07-26-chuva-ja-com-vento-e-teste-de-performance-para-o-meu-game-engine-em-c-c\/","url":"https:\/\/www.goncalo.pt\/por\/2021\/07\/26\/2021-07-26-chuva-ja-com-vento-e-teste-de-performance-para-o-meu-game-engine-em-c-c\/","name":"2021-07-26 - Chuva j\u00e1 com vento, e teste de performance, para o meu Game Engine em C\/C++... - Gon\u00e7alo Ferreira","isPartOf":{"@id":"https:\/\/www.goncalo.pt\/por\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.goncalo.pt\/por\/2021\/07\/26\/2021-07-26-chuva-ja-com-vento-e-teste-de-performance-para-o-meu-game-engine-em-c-c\/#primaryimage"},"image":{"@id":"https:\/\/www.goncalo.pt\/por\/2021\/07\/26\/2021-07-26-chuva-ja-com-vento-e-teste-de-performance-para-o-meu-game-engine-em-c-c\/#primaryimage"},"thumbnailUrl":"https:\/\/www.goncalo.pt\/por\/wp-content\/uploads\/2021\/07\/ScreenAnimation_2021-07-26_171338.gif?v=1631286463","datePublished":"2021-07-26T16:35:03+00:00","dateModified":"2023-10-07T03:06:40+00:00","breadcrumb":{"@id":"https:\/\/www.goncalo.pt\/por\/2021\/07\/26\/2021-07-26-chuva-ja-com-vento-e-teste-de-performance-para-o-meu-game-engine-em-c-c\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.goncalo.pt\/por\/2021\/07\/26\/2021-07-26-chuva-ja-com-vento-e-teste-de-performance-para-o-meu-game-engine-em-c-c\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.goncalo.pt\/por\/2021\/07\/26\/2021-07-26-chuva-ja-com-vento-e-teste-de-performance-para-o-meu-game-engine-em-c-c\/#primaryimage","url":"https:\/\/www.goncalo.pt\/por\/wp-content\/uploads\/2021\/07\/ScreenAnimation_2021-07-26_171338.gif?v=1631286463","contentUrl":"https:\/\/www.goncalo.pt\/por\/wp-content\/uploads\/2021\/07\/ScreenAnimation_2021-07-26_171338.gif?v=1631286463","width":640,"height":480,"caption":"2021-07-26 - Chuva j\u00e1 com vento, e teste de performance, para o meu Game Engine em C\/C++..."},{"@type":"BreadcrumbList","@id":"https:\/\/www.goncalo.pt\/por\/2021\/07\/26\/2021-07-26-chuva-ja-com-vento-e-teste-de-performance-para-o-meu-game-engine-em-c-c\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.goncalo.pt\/por\/"},{"@type":"ListItem","position":2,"name":"2021-07-26 &#8211; Chuva j\u00e1 com vento, e teste de performance, para o meu Game Engine em C\/C++&#8230;"}]},{"@type":"WebSite","@id":"https:\/\/www.goncalo.pt\/por\/#website","url":"https:\/\/www.goncalo.pt\/por\/","name":"Gon\u00e7alo Ferreira","description":"[Game Engine\/Software\/Simulation\/Trading Systems\/Full Stack] Developer, Musician, Composer, Painter, Writer, IT Trainer, Sys Admin, Ex-Trader, Skater, Strongman, Vegan, Self-Taught Neuro-Divergent Polymath, and 1001 things more. Welcome to my world!","publisher":{"@id":"https:\/\/www.goncalo.pt\/por\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.goncalo.pt\/por\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/www.goncalo.pt\/por\/#organization","name":"Gon\u00e7alo Ferreira","url":"https:\/\/www.goncalo.pt\/por\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.goncalo.pt\/por\/#\/schema\/logo\/image\/","url":"https:\/\/www.goncalo.pt\/por\/wp-content\/uploads\/2023\/08\/cropped-Goncalo-Ferreira-Logo-With-Face.png","contentUrl":"https:\/\/www.goncalo.pt\/por\/wp-content\/uploads\/2023\/08\/cropped-Goncalo-Ferreira-Logo-With-Face.png","width":389,"height":90,"caption":"Gon\u00e7alo Ferreira"},"image":{"@id":"https:\/\/www.goncalo.pt\/por\/#\/schema\/logo\/image\/"},"sameAs":["http:\/\/www.linkedin.com\/in\/GoncaloPT\/"]},{"@type":"Person","@id":"https:\/\/www.goncalo.pt\/por\/#\/schema\/person\/28a9f845c4de91a7c067707279b1d8dd","name":"gnmf","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.goncalo.pt\/por\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/78a295ef7300b60da1d67d4ce84359da?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/78a295ef7300b60da1d67d4ce84359da?s=96&d=mm&r=g","caption":"gnmf"},"sameAs":["http:\/\/www.goncalo.pt\/por"],"url":"https:\/\/www.goncalo.pt\/por\/author\/gnmf\/"}]}},"_links":{"self":[{"href":"https:\/\/www.goncalo.pt\/por\/wp-json\/wp\/v2\/posts\/1434"}],"collection":[{"href":"https:\/\/www.goncalo.pt\/por\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.goncalo.pt\/por\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.goncalo.pt\/por\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.goncalo.pt\/por\/wp-json\/wp\/v2\/comments?post=1434"}],"version-history":[{"count":7,"href":"https:\/\/www.goncalo.pt\/por\/wp-json\/wp\/v2\/posts\/1434\/revisions"}],"predecessor-version":[{"id":1447,"href":"https:\/\/www.goncalo.pt\/por\/wp-json\/wp\/v2\/posts\/1434\/revisions\/1447"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.goncalo.pt\/por\/wp-json\/wp\/v2\/media\/1436"}],"wp:attachment":[{"href":"https:\/\/www.goncalo.pt\/por\/wp-json\/wp\/v2\/media?parent=1434"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.goncalo.pt\/por\/wp-json\/wp\/v2\/categories?post=1434"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.goncalo.pt\/por\/wp-json\/wp\/v2\/tags?post=1434"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}