{"id":2566,"date":"2023-08-29T06:07:21","date_gmt":"2023-08-29T06:07:21","guid":{"rendered":"http:\/\/www.goncalo.pt\/por\/?page_id=2566"},"modified":"2023-10-30T01:08:55","modified_gmt":"2023-10-30T01:08:55","slug":"game-engine-criacao-de-jogos-de-estrategia","status":"publish","type":"page","link":"https:\/\/www.goncalo.pt\/por\/game-engine-criacao-de-jogos-de-estrategia\/","title":{"rendered":"Estrat\u00e9gia"},"content":{"rendered":"\n<p>Aqui deixo registo de tudo o que eu fa\u00e7a relacionado com o meu Game Engine, criado do zero usando C++ (e algum C), mas que seja relacionado com o estilo de jogos de Estrat\u00e9gia, porque eu vou adaptar o meu Game Engine a v\u00e1rios estilos de jogos, e este ser\u00e1 apenas um deles.<\/p>\n\n\n\n<p>Mas o de Estrat\u00e9gia \u00e9 no fundo um daqueles em que mexo mais e que ter\u00e1 mais destaque, ap\u00f3s ter tido a ideia de criar um jogo 4X com base no original Master of Orion:<\/p>\n\n\n\n<figure class=\"wp-block-video\"><video controls src=\"http:\/\/www.goncalo.pt\/por\/wp-content\/uploads\/2023\/08\/2023-08-07-Improvements-on-my-galaxy-travelling-for-my-Master-of-Orion-clone-project-in-Cpp.mp4\"><\/video><\/figure>\n\n\n\n<p>Alguns posts associados abaixo:<\/p>\n\n\n<ul class=\"wp-block-latest-posts__list is-grid columns-3 wp-block-latest-posts\"><li><div class=\"wp-block-latest-posts__featured-image\"><a href=\"https:\/\/www.goncalo.pt\/por\/2025\/02\/27\/2025-02-27-reducao-da-memoria-de-200-mb-para-61-mb-no-nivel-mais-pesado-de-testes-no-meu-game-engine-em-c\/\" aria-label=\"2025-02-27 &#8211; Redu\u00e7\u00e3o da mem\u00f3ria de 200 MB para 61 MB no n\u00edvel mais pesado de testes, no meu Game Engine em C++\u2026\"><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/www.goncalo.pt\/por\/wp-content\/uploads\/2025\/02\/2025-02-27-Memory-footprint-reduced-to-61-MB-on-my-Cpp-Game-Engine-150x150.gif\" class=\"attachment-thumbnail size-thumbnail wp-post-image\" alt=\"2025-02-27 - Redu\u00e7\u00e3o da mem\u00f3ria de 200 MB para 61 MB no n\u00edvel mais pesado de testes, no meu Game Engine em C++\u2026\" style=\"\" \/><\/a><\/div><a class=\"wp-block-latest-posts__post-title\" href=\"https:\/\/www.goncalo.pt\/por\/2025\/02\/27\/2025-02-27-reducao-da-memoria-de-200-mb-para-61-mb-no-nivel-mais-pesado-de-testes-no-meu-game-engine-em-c\/\">2025-02-27 &#8211; Redu\u00e7\u00e3o da mem\u00f3ria de 200 MB para 61 MB no n\u00edvel mais pesado de testes, no meu Game Engine em C++\u2026<\/a><div class=\"wp-block-latest-posts__post-excerpt\">Mais um marco na optimiza\u00e7\u00e3o do meu Game Engine. Reduzido o n\u00edvel mais pesado de 205 MB de mem\u00f3ria para 61 MB de mem\u00f3ria, e mantendo perto de 450 a 500 FPS, usando apenas metade de uma das minhas 8 threads, uns 3% a 6% de todo o potencial de CPU que tenho, num port\u00e1til<\/div><\/li>\n<li><div class=\"wp-block-latest-posts__featured-image\"><a href=\"https:\/\/www.goncalo.pt\/por\/2025\/02\/09\/2025-02-09-o-meu-game-engine-em-c-a-ocupar-apenas-27-mb-de-memoria-e-com-binarios-de-300k\/\" aria-label=\"2025-02-09 &#8211; O meu Game Engine em C++ a ocupar apenas 27 MB de mem\u00f3ria e com bin\u00e1rios de 300K&#8230;\"><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/www.goncalo.pt\/por\/wp-content\/uploads\/2025\/02\/2025-02-09-My-Cpp-Game-Engine-using-only-27-MB-of-memory-and-300K-binaries-150x150.gif\" class=\"attachment-thumbnail size-thumbnail wp-post-image\" alt=\"2025-02-09 - O meu Game Engine em C++ a ocupar apenas 27 MB de mem\u00f3ria e com bin\u00e1rios de 300K...\" style=\"\" \/><\/a><\/div><a class=\"wp-block-latest-posts__post-title\" href=\"https:\/\/www.goncalo.pt\/por\/2025\/02\/09\/2025-02-09-o-meu-game-engine-em-c-a-ocupar-apenas-27-mb-de-memoria-e-com-binarios-de-300k\/\">2025-02-09 &#8211; O meu Game Engine em C++ a ocupar apenas 27 MB de mem\u00f3ria e com bin\u00e1rios de 300K&#8230;<\/a><div class=\"wp-block-latest-posts__post-excerpt\">Aqui mostro-vos como o meu Game Engine, se funcionar com um jogo de apenas um ecr\u00e3, ocupa apenas perto de 20 e tal MB de mem\u00f3ria, e poder\u00e1 ter execut\u00e1veis de 300 KB de tamanho (onde a chuva est\u00e1 mais optimizada, a neve um pouco menos, e o Orion menos): Ah, e o &#8220;Orion&#8221; com<\/div><\/li>\n<li><div class=\"wp-block-latest-posts__featured-image\"><a href=\"https:\/\/www.goncalo.pt\/por\/2025\/01\/20\/2025-01-20-optimizacao-do-uso-de-memoria-90-do-meu-game-engine-em-c-criacao-dos-meus-proprios-containers-e-adaptando-o-para-multi-threading-em-simultaneo\/\" aria-label=\"2025-01-20 &#8211; Optimiza\u00e7\u00e3o do uso de mem\u00f3ria (-90%) do meu Game Engine em C++ (Cria\u00e7\u00e3o dos meus pr\u00f3prios containers), e adaptando-o para Multi-Threading em simult\u00e2neo&#8230;,\"><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/www.goncalo.pt\/por\/wp-content\/uploads\/2025\/01\/2025-01-20-Optimizing-memory-usage-and-speed-on-my-Cpp-Game-Engine-150x150.gif\" class=\"attachment-thumbnail size-thumbnail wp-post-image\" alt=\"2025-01-20 - Optimiza\u00e7\u00e3o do uso de mem\u00f3ria (-90%) do meu Game Engine em C++ (Cria\u00e7\u00e3o dos meus pr\u00f3prios containers), e adaptando-o para Multi-Threading em simult\u00e2neo...\" style=\"\" \/><\/a><\/div><a class=\"wp-block-latest-posts__post-title\" href=\"https:\/\/www.goncalo.pt\/por\/2025\/01\/20\/2025-01-20-optimizacao-do-uso-de-memoria-90-do-meu-game-engine-em-c-criacao-dos-meus-proprios-containers-e-adaptando-o-para-multi-threading-em-simultaneo\/\">2025-01-20 &#8211; Optimiza\u00e7\u00e3o do uso de mem\u00f3ria (-90%) do meu Game Engine em C++ (Cria\u00e7\u00e3o dos meus pr\u00f3prios containers), e adaptando-o para Multi-Threading em simult\u00e2neo&#8230;,<\/a><div class=\"wp-block-latest-posts__post-excerpt\">Pois \u00e9, reduzi o uso da mem\u00f3ria do meu Game Engine em perto de 90%, e ainda consegui manter ou aumentar ligeiramente a velocidade do mesmo (mesmos FPS), sem contar que preparei o meu Game Engine tamb\u00e9m para uso em Multi-Threading, sendo que esta opera\u00e7\u00e3o levou semanas de trabalho \u00e1rduo que afectou centenas de ficheiros<\/div><\/li>\n<li><div class=\"wp-block-latest-posts__featured-image\"><a href=\"https:\/\/www.goncalo.pt\/por\/2024\/06\/19\/2024-06-19-varios-exemplos-de-galaxias-criadas-com-o-meu-simulador-de-galaxias-em-c-ja-com-regioes-de-h2\/\" aria-label=\"2024-06-19 &#8211; V\u00e1rios exemplos de gal\u00e1xias criadas com o meu simulador de gal\u00e1xias em C++, j\u00e1 com regi\u00f5es de H2&#8230;\"><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/www.goncalo.pt\/por\/wp-content\/uploads\/2024\/06\/2024-06-19-Blue-Galaxy-Pixelized-on-my-Cpp-Game-Engine-and-with-H2-Regions-already-and-Zoom-150x150.gif\" class=\"attachment-thumbnail size-thumbnail wp-post-image\" alt=\"2024-06-19 - Uma Gal\u00e1xia Azul Pixelizada com o meu Simulador de Gal\u00e1xias em C++, e j\u00e1 com regi\u00f5es de H2...\" style=\"\" \/><\/a><\/div><a class=\"wp-block-latest-posts__post-title\" href=\"https:\/\/www.goncalo.pt\/por\/2024\/06\/19\/2024-06-19-varios-exemplos-de-galaxias-criadas-com-o-meu-simulador-de-galaxias-em-c-ja-com-regioes-de-h2\/\">2024-06-19 &#8211; V\u00e1rios exemplos de gal\u00e1xias criadas com o meu simulador de gal\u00e1xias em C++, j\u00e1 com regi\u00f5es de H2&#8230;<\/a><div class=\"wp-block-latest-posts__post-excerpt\">Este ser\u00e1 provavelmente o meu \u00faltimo post relacionado com o meu simulador de gal\u00e1xias em C++. Primeiro quero deixar um exemplo do mesmo mas com resolu\u00e7\u00e3o baixa (pixelizado) e cores vivas, bem como as regi\u00f5es de H2 j\u00e1 adicionadas, para usar um dia talvez em jogos meus como o meu futuro remake to Master of<\/div><\/li>\n<li><div class=\"wp-block-latest-posts__featured-image\"><a href=\"https:\/\/www.goncalo.pt\/por\/2024\/03\/18\/2024-03-18-de-volta-ao-game-engine-melhorando-a-performance-das-linhas-dinamicas-para-usar-depois-tambem-no-software-de-analise-tecnica-em-c\/\" aria-label=\"2024-03-18 &#8211; De volta ao Game Engine, melhorando a performance das linhas din\u00e2micas, para usar depois tamb\u00e9m no software de An\u00e1lise T\u00e9cnica em C++&#8230;\"><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/www.goncalo.pt\/por\/wp-content\/uploads\/2024\/03\/2024-03-18-Back-to-my-Game-Engine-Master-or-Orion-Remake-with-increased-performance-Thumb-150x150.gif\" class=\"attachment-thumbnail size-thumbnail wp-post-image\" alt=\"2024-03-18 - De volta ao Game Engine, melhorando a performance das linhas din\u00e2micas, para usar depois tamb\u00e9m no software de An\u00e1lise T\u00e9cnica em C++\u2026\" style=\"\" \/><\/a><\/div><a class=\"wp-block-latest-posts__post-title\" href=\"https:\/\/www.goncalo.pt\/por\/2024\/03\/18\/2024-03-18-de-volta-ao-game-engine-melhorando-a-performance-das-linhas-dinamicas-para-usar-depois-tambem-no-software-de-analise-tecnica-em-c\/\">2024-03-18 &#8211; De volta ao Game Engine, melhorando a performance das linhas din\u00e2micas, para usar depois tamb\u00e9m no software de An\u00e1lise T\u00e9cnica em C++&#8230;<\/a><div class=\"wp-block-latest-posts__post-excerpt\">Eu sei que disse que s\u00f3 ap\u00f3s terminar o software de An\u00e1lise T\u00e9cnica e o Trading System&#8217;s Back-Tester (vers\u00e3o GUI) \u00e9 que retornaria ao maravilhoso mundo dos videojogos, e desenvolver o meu pr\u00f3prio Game Engine do 0 em C++. Mas tive de regressar por umas horas ao meu remake futuro do Master of Orion, porque<\/div><\/li>\n<li><div class=\"wp-block-latest-posts__featured-image\"><a href=\"https:\/\/www.goncalo.pt\/por\/2023\/12\/04\/2023-12-04-videolog-do-meu-game-engine-parte-vi-chuva-neve-relampagos-cascatas-isometricos-3d-fogo-luzes-e-sombras-armas-e-1001-coisas-mais\/\" aria-label=\"2023-12-04 &#8211; VideoLog do Meu Game Engine &#8211; Parte VI &#8211; Chuva, Neve, Rel\u00e2mpagos, Cascatas, Isom\u00e9tricos, 3D, Fogo, Luzes e Sombras, Armas, e 1001 coisas mais&#8230;\"><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/www.goncalo.pt\/por\/wp-content\/uploads\/2023\/12\/2023-11-30-O-Meu-Game-Engine-em-Cpp-VideoLog-de-Desenvolvimento-Parte-VI-Thumbnail-150x150.png\" class=\"attachment-thumbnail size-thumbnail wp-post-image\" alt=\"2023-12-04 - VideoLog do Meu Game Engine - Parte VI - Chuva, Neve, Rel\u00e2mpagos, Cascatas, Isom\u00e9tricos, 3D, Fogo, Luzes e Sombras, Armas, e 1001 coisas mais...\" style=\"\" \/><\/a><\/div><a class=\"wp-block-latest-posts__post-title\" href=\"https:\/\/www.goncalo.pt\/por\/2023\/12\/04\/2023-12-04-videolog-do-meu-game-engine-parte-vi-chuva-neve-relampagos-cascatas-isometricos-3d-fogo-luzes-e-sombras-armas-e-1001-coisas-mais\/\">2023-12-04 &#8211; VideoLog do Meu Game Engine &#8211; Parte VI &#8211; Chuva, Neve, Rel\u00e2mpagos, Cascatas, Isom\u00e9tricos, 3D, Fogo, Luzes e Sombras, Armas, e 1001 coisas mais&#8230;<\/a><div class=\"wp-block-latest-posts__post-excerpt\">Aqui t\u00eam o meu 6\u00ba V\u00eddeo da minha s\u00e9rie de VideoLogs de Desenvolvimento sobre o meu Game Engine, criado do zero em C++, com a descri\u00e7\u00e3o do v\u00eddeo abaixo (English Version at the end of this page)&#8230; V\u00eddeo seguinte: https:\/\/www.goncalo.pt\/por\/2025\/03\/24\/2025-03-24-o-meu-game-engine-em-c-parte-vii-debug-multi-threading-optimizacoes-memoria-etc-2025-03-24\/ Descri\u00e7\u00e3o no V\u00eddeo: \u00abEsta \u00e9 a 6\u00aa parte do meu VideoLog de Desenvolvimento do meu<\/div><\/li>\n<li><div class=\"wp-block-latest-posts__featured-image\"><a href=\"https:\/\/www.goncalo.pt\/por\/2023\/11\/24\/2023-11-24-o-inicio-do-meu-mini-curso-sobre-criacao-e-design-de-videojogos\/\" aria-label=\"2023-11-24 &#8211; O In\u00edcio do meu Mini-Curso sobre Cria\u00e7\u00e3o e Design de VideoJogos\"><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/www.goncalo.pt\/por\/wp-content\/uploads\/2023\/12\/2023-11-24-Curso-sobre-Criacao-de-VideoJogos-Game-Design-e-Game-Engines-150x150.jpg\" class=\"attachment-thumbnail size-thumbnail wp-post-image\" alt=\"O Meu Mini-Curso Sobre Cria\u00e7\u00e3o e Design de VIdeoJogos (2023-11-24)\" style=\"\" \/><\/a><\/div><a class=\"wp-block-latest-posts__post-title\" href=\"https:\/\/www.goncalo.pt\/por\/2023\/11\/24\/2023-11-24-o-inicio-do-meu-mini-curso-sobre-criacao-e-design-de-videojogos\/\">2023-11-24 &#8211; O In\u00edcio do meu Mini-Curso sobre Cria\u00e7\u00e3o e Design de VideoJogos<\/a><div class=\"wp-block-latest-posts__post-excerpt\">Pois \u00e9, aqui est\u00e1 o v\u00eddeo introdut\u00f3rio ao meu futuro mini-curso sobre Design de VideoJogos:https:\/\/www.youtube.com\/watch?v=RyfbThWMroU Isto porque, me perguntei, porque raios s\u00f3 dou mat\u00e9ria mais complexa (e chata para os formandos), como Linux e Programa\u00e7\u00e3o C, C++, etc, quando posso dar mat\u00e9ria divertida, e quando sou a pessoa indicada (mod\u00e9stia \u00e0 parte), para dar esta<\/div><\/li>\n<li><div class=\"wp-block-latest-posts__featured-image\"><a href=\"https:\/\/www.goncalo.pt\/por\/2023\/10\/01\/2023-10-01-melhorias-na-minha-versao-do-master-of-orion-cursor-seleccionar-planetas-efeitos-etc\/\" aria-label=\"2023-10-01 &#8211; Melhorias na minha vers\u00e3o do &#8220;Master of Orion&#8221;: Cursor, seleccionar planetas, efeitos, etc&#8230;\"><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/www.goncalo.pt\/por\/wp-content\/uploads\/2023\/10\/2023-10-01-Travelling-through-the-stars-in-my-Master-of-Orion-clone-project-Thumb-150x150.gif\" class=\"attachment-thumbnail size-thumbnail wp-post-image\" alt=\"2023-10-01 - Melhorias na minha vers\u00e3o do &quot;Master of Orion&quot;: Cursor, seleccionar planetas, efeitos, etc...\" style=\"\" \/><\/a><\/div><a class=\"wp-block-latest-posts__post-title\" href=\"https:\/\/www.goncalo.pt\/por\/2023\/10\/01\/2023-10-01-melhorias-na-minha-versao-do-master-of-orion-cursor-seleccionar-planetas-efeitos-etc\/\">2023-10-01 &#8211; Melhorias na minha vers\u00e3o do &#8220;Master of Orion&#8221;: Cursor, seleccionar planetas, efeitos, etc&#8230;<\/a><div class=\"wp-block-latest-posts__post-excerpt\">Mais umas pequenas melhorias ao meu clone do Master of Orion. Neste caso, criei: E resolvi v\u00e1rios bugs, sendo que um deles causava um pequeno desfasamento entre a posi\u00e7\u00e3o das estrelas e o rato. Quanto \u00e0s linhas animadas, baseiam-se nas existentes no jogo original: E por estranho que pare\u00e7a, no jogo original, s\u00f3 servem para<\/div><\/li>\n<li><div class=\"wp-block-latest-posts__featured-image\"><a href=\"https:\/\/www.goncalo.pt\/por\/2023\/08\/19\/2023-08-19-linhas-rectas-animadas-e-dinamicas-para-os-jogos-de-estrategia-criados-com-o-meu-game-engine-em-c\/\" aria-label=\"2023-08-19 &#8211; Linhas rectas animadas e din\u00e2micas para os jogos de estrat\u00e9gia criados com o meu Game Engine, em C++&#8230;\"><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/www.goncalo.pt\/por\/wp-content\/uploads\/2023\/08\/2023-08-19-Dynamic-Animated-Lines-for-my-Strategy-Game-Engine-Demo-using-Cpp-Thumb-150x150.gif\" class=\"attachment-thumbnail size-thumbnail wp-post-image\" alt=\"2023-08-19 - Linhas rectas animadas e din\u00e2micas para os jogos de estrat\u00e9gia criados com o meu Game Engine, em C++...\" style=\"\" \/><\/a><\/div><a class=\"wp-block-latest-posts__post-title\" href=\"https:\/\/www.goncalo.pt\/por\/2023\/08\/19\/2023-08-19-linhas-rectas-animadas-e-dinamicas-para-os-jogos-de-estrategia-criados-com-o-meu-game-engine-em-c\/\">2023-08-19 &#8211; Linhas rectas animadas e din\u00e2micas para os jogos de estrat\u00e9gia criados com o meu Game Engine, em C++&#8230;<\/a><div class=\"wp-block-latest-posts__post-excerpt\">Aqui est\u00e3o, as minhas novas linhas din\u00e2micas\/animadas, baseadas no jogo Master of Orion, do qual planeio construir um clone, e s\u00e3o as linhas que l\u00e1 aparecem (com as mesmas cores), no jogo, quando movemos uma nave para outro sistema solar, e a linha fica l\u00e1 animada para demonstrar o sentido de movimento das naves. H\u00e1<\/div><\/li>\n<li><div class=\"wp-block-latest-posts__featured-image\"><a href=\"https:\/\/www.goncalo.pt\/por\/2023\/08\/07\/2023-08-07-melhorias-ao-meu-futuro-jogo-de-estrategia-no-espaco-o-clone-do-master-of-orion-em-c\/\" aria-label=\"2023-08-07 &#8211; Melhorias ao meu futuro jogo de estrat\u00e9gia no espa\u00e7o, o clone do Master of Orion, em C++&#8230;\"><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/www.goncalo.pt\/por\/wp-content\/uploads\/2023\/08\/2023-08-07-Improvements-on-my-galaxy-travelling-for-my-Master-of-Orion-clone-project-in-Cpp-Thumb-150x150.gif\" class=\"attachment-thumbnail size-thumbnail wp-post-image\" alt=\"2023-08-07 - Melhorias ao meu futuro jogo de estrat\u00e9gia no espa\u00e7o, o clone do Master of Orion, em C++...\" style=\"\" \/><\/a><\/div><a class=\"wp-block-latest-posts__post-title\" href=\"https:\/\/www.goncalo.pt\/por\/2023\/08\/07\/2023-08-07-melhorias-ao-meu-futuro-jogo-de-estrategia-no-espaco-o-clone-do-master-of-orion-em-c\/\">2023-08-07 &#8211; Melhorias ao meu futuro jogo de estrat\u00e9gia no espa\u00e7o, o clone do Master of Orion, em C++&#8230;<\/a><div class=\"wp-block-latest-posts__post-excerpt\">Aqui est\u00e1 o 2\u00ba passo do meu remake do jogo Master of Orion. Como continuo sem ter muito tempo dispon\u00edvel, achei que esta era uma forma r\u00e1pida de me entreter com jogos com um bocadinho de tempo livre. Eu j\u00e1 tinha criado um sistema de gera\u00e7\u00e3o de mapas aleat\u00f3rios de estrelas, para cada jogo ser<\/div><\/li>\n<li><div class=\"wp-block-latest-posts__featured-image\"><a href=\"https:\/\/www.goncalo.pt\/por\/2023\/07\/24\/2023-07-24-o-comeco-de-um-novo-projecto-dentro-do-meu-game-engine-um-clone-do-master-of-orion-jogo-de-estrategia-de-1993-em-c\/\" aria-label=\"2023-07-24 &#8211; O come\u00e7o de um novo projecto dentro do meu Game Engine &#8211; Um clone do Master of Orion (Jogo de Estrat\u00e9gia de 1993), em C++&#8230;\"><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/www.goncalo.pt\/por\/wp-content\/uploads\/2023\/07\/2023-07-24-My-next-Game-Engine-project-a-clone-of-Master-of-Orion-Strategy-Game-Thumb-150x150.gif\" class=\"attachment-thumbnail size-thumbnail wp-post-image\" alt=\"2023-07-24 - O come\u00e7o de um novo projecto dentro do meu Game Engine - Um clone do Master of Orion (Jogo de Estrat\u00e9gia de 1993), em C++...\" style=\"\" \/><\/a><\/div><a class=\"wp-block-latest-posts__post-title\" href=\"https:\/\/www.goncalo.pt\/por\/2023\/07\/24\/2023-07-24-o-comeco-de-um-novo-projecto-dentro-do-meu-game-engine-um-clone-do-master-of-orion-jogo-de-estrategia-de-1993-em-c\/\">2023-07-24 &#8211; O come\u00e7o de um novo projecto dentro do meu Game Engine &#8211; Um clone do Master of Orion (Jogo de Estrat\u00e9gia de 1993), em C++&#8230;<\/a><div class=\"wp-block-latest-posts__post-excerpt\">Aqui est\u00e1 a raz\u00e3o pela qual meti um controlo da c\u00e2mera no ecr\u00e3 com o rato, no meu Game Engine: O meu futuro projecto &#8211; Um clone do Master of Orion (podem ver um excerto do jogo neste v\u00eddeo). Isto porque eu voltei a jogar a este jogo, e encontrei coisas com as quais n\u00e3o<\/div><\/li>\n<li><div class=\"wp-block-latest-posts__featured-image\"><a href=\"https:\/\/www.goncalo.pt\/por\/2021\/07\/24\/2021-07-18-a-criacao-de-uma-media-layer-para-tornar-o-codigo-mais-portavel-no-meu-game-engine-em-c-c\/\" aria-label=\"2021-07-18 &#8211; A cria\u00e7\u00e3o de uma Media Layer para tornar o c\u00f3digo mais port\u00e1vel, no meu Game Engine, em C\/C++&#8230;\"><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/www.goncalo.pt\/por\/wp-content\/uploads\/2021\/07\/2021-07-18-FIM-DO-DIA-DML-20210718_231054-Screenshot_20210718_231054-150x150.png?v=1631286076\" class=\"attachment-thumbnail size-thumbnail wp-post-image\" alt=\"2021-07-18 - A cria\u00e7\u00e3o de uma Media Layer para tornar o c\u00f3digo mais port\u00e1vel, no meu Game Engine, em C\/C++...\" style=\"\" \/><\/a><\/div><a class=\"wp-block-latest-posts__post-title\" href=\"https:\/\/www.goncalo.pt\/por\/2021\/07\/24\/2021-07-18-a-criacao-de-uma-media-layer-para-tornar-o-codigo-mais-portavel-no-meu-game-engine-em-c-c\/\">2021-07-18 &#8211; A cria\u00e7\u00e3o de uma Media Layer para tornar o c\u00f3digo mais port\u00e1vel, no meu Game Engine, em C\/C++&#8230;<\/a><div class=\"wp-block-latest-posts__post-excerpt\">DML &#8211; Direct Media Layer. \u00c9 o nome que dei \u00e0 layer que tenho entre o c\u00f3digo e o hardware da m\u00e1quina, e j\u00e1 explico o que \u00e9. E podem ver \u00e0 direita o tamanho do execut\u00e1vel com uns 11 megas (enorme) e j\u00e1 explicarei porqu\u00ea tamb\u00e9m. E chamei DML (Direct Media Layer ou Multimedia<\/div><\/li>\n<li><div class=\"wp-block-latest-posts__featured-image\"><a href=\"https:\/\/www.goncalo.pt\/por\/2020\/09\/04\/2020-09-04-o-comeco-de-uma-carreira-como-game-developer-no-dia-em-que-cumpri-45-anos\/\" aria-label=\"2020-09-04 &#8211; O come\u00e7o de uma carreira como Game Developer no dia em que cumpri 45 anos&#8230;\"><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/www.goncalo.pt\/por\/wp-content\/uploads\/2021\/01\/2020-09-04-Starting-my-career-as-videogame-developer-at-my-45th-birthday-150x150.png?v=1618147704\" class=\"attachment-thumbnail size-thumbnail wp-post-image\" alt=\"2020-09-04 - O come\u00e7o de uma carreira como Game Developer no dia em que cumpri 45 anos...\" style=\"\" \/><\/a><\/div><a class=\"wp-block-latest-posts__post-title\" href=\"https:\/\/www.goncalo.pt\/por\/2020\/09\/04\/2020-09-04-o-comeco-de-uma-carreira-como-game-developer-no-dia-em-que-cumpri-45-anos\/\">2020-09-04 &#8211; O come\u00e7o de uma carreira como Game Developer no dia em que cumpri 45 anos&#8230;<\/a><div class=\"wp-block-latest-posts__post-excerpt\">Gon\u00e7alo Ferreira &#8211; Projectos Pessoais No dia em que cumpro 45 anos de idade, partilho simbolicamente os dois projectos aos quais vou dedicar mais tempos livres durante este pr\u00f3ximo ano de vida, e \u00e9 importante para mim porque nos \u00faltimos dias estive a optimizar o game engine e percebi que \u00e9 a coisa que mais<\/div><\/li>\n<li><div class=\"wp-block-latest-posts__featured-image\"><a href=\"https:\/\/www.goncalo.pt\/por\/2020\/08\/26\/2020-08-26-o-retomar-do-game-engine-em-c-c-que-deixei-a-meio-em-2007\/\" aria-label=\"2020-08-26- O retomar do Game Engine em C\/C++ que deixei a meio em 2017&#8230;\"><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/www.goncalo.pt\/por\/wp-content\/uploads\/2021\/01\/2020-08-26-Resuming-a-C-Cpp-Game-Engine-that-I-Started-in-2017-150x150.png?v=1618147702\" class=\"attachment-thumbnail size-thumbnail wp-post-image\" alt=\"2020-08-26- O retomar do Game Engine em C\/C++ que deixei a meio em 2017...\" style=\"\" \/><\/a><\/div><a class=\"wp-block-latest-posts__post-title\" href=\"https:\/\/www.goncalo.pt\/por\/2020\/08\/26\/2020-08-26-o-retomar-do-game-engine-em-c-c-que-deixei-a-meio-em-2007\/\">2020-08-26- O retomar do Game Engine em C\/C++ que deixei a meio em 2017&#8230;<\/a><div class=\"wp-block-latest-posts__post-excerpt\">O meu Game Engine em C++. Num jogo assim com muitos inimigos, num computador port\u00e1til lento e sobrecarregado, ele d\u00e1 umas entre 300 a 1200 FPS (\u00e9 o poder de criar algo do zero em C++). Em 2017 dediquei uns meses a cri\u00e1-lo, porque tinha lido algures que uma das coisas de topo em termos<\/div><\/li>\n<\/ul>\n\n\n<figure class=\"wp-block-image size-large is-resized\"><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/www.goncalo.pt\/por\/wp-content\/uploads\/2023\/08\/2023-08-07-Improvements-on-my-galaxy-travelling-for-my-Master-of-Orion-clone-project-in-Cpp-Thumb.gif\" alt=\"2023-08-07 - Melhorias ao meu futuro jogo de estrat\u00e9gia no espa\u00e7o, o clone do Master of Orion, em C++...\" class=\"wp-image-2456\" width=\"1136\" height=\"639\"\/><figcaption>2023-08-07 &#8211; Melhorias ao meu futuro jogo de estrat\u00e9gia no espa\u00e7o, o clone do Master of Orion, em C++&#8230;<\/figcaption><\/figure>\n","protected":false},"excerpt":{"rendered":"<p>Aqui deixo registo de tudo o que eu fa\u00e7a relacionado com o meu Game Engine, criado do zero usando C++<\/p>\n","protected":false},"author":1,"featured_media":2641,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-2566","page","type-page","status-publish","has-post-thumbnail","hentry"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v25.4 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Estrat\u00e9gia - 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\/game-engine-criacao-de-jogos-de-estrategia\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Estrat\u00e9gia - Gon\u00e7alo Ferreira\" \/>\n<meta property=\"og:description\" content=\"Aqui deixo registo de tudo o que eu fa\u00e7a relacionado com o meu Game Engine, criado do zero usando C++\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.goncalo.pt\/por\/game-engine-criacao-de-jogos-de-estrategia\/\" \/>\n<meta property=\"og:site_name\" content=\"Gon\u00e7alo Ferreira\" \/>\n<meta property=\"article:modified_time\" content=\"2023-10-30T01:08:55+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.goncalo.pt\/por\/wp-content\/uploads\/2023\/10\/2023-10-01-Travelling-through-the-stars-in-my-Master-of-Orion-clone-project-Thumb.gif\" \/>\n\t<meta property=\"og:image:width\" content=\"600\" \/>\n\t<meta property=\"og:image:height\" content=\"337\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/gif\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data1\" content=\"1 minute\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.goncalo.pt\/por\/game-engine-criacao-de-jogos-de-estrategia\/\",\"url\":\"https:\/\/www.goncalo.pt\/por\/game-engine-criacao-de-jogos-de-estrategia\/\",\"name\":\"Estrat\u00e9gia - Gon\u00e7alo Ferreira\",\"isPartOf\":{\"@id\":\"https:\/\/www.goncalo.pt\/por\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/www.goncalo.pt\/por\/game-engine-criacao-de-jogos-de-estrategia\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/www.goncalo.pt\/por\/game-engine-criacao-de-jogos-de-estrategia\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.goncalo.pt\/por\/wp-content\/uploads\/2023\/10\/2023-10-01-Travelling-through-the-stars-in-my-Master-of-Orion-clone-project-Thumb.gif\",\"datePublished\":\"2023-08-29T06:07:21+00:00\",\"dateModified\":\"2023-10-30T01:08:55+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/www.goncalo.pt\/por\/game-engine-criacao-de-jogos-de-estrategia\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.goncalo.pt\/por\/game-engine-criacao-de-jogos-de-estrategia\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.goncalo.pt\/por\/game-engine-criacao-de-jogos-de-estrategia\/#primaryimage\",\"url\":\"https:\/\/www.goncalo.pt\/por\/wp-content\/uploads\/2023\/10\/2023-10-01-Travelling-through-the-stars-in-my-Master-of-Orion-clone-project-Thumb.gif\",\"contentUrl\":\"https:\/\/www.goncalo.pt\/por\/wp-content\/uploads\/2023\/10\/2023-10-01-Travelling-through-the-stars-in-my-Master-of-Orion-clone-project-Thumb.gif\",\"width\":600,\"height\":337,\"caption\":\"2023-10-01 - Melhorias na minha vers\u00e3o do \\\"Master of Orion\\\": Cursor, seleccionar planetas, efeitos, etc...\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.goncalo.pt\/por\/game-engine-criacao-de-jogos-de-estrategia\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.goncalo.pt\/por\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Estrat\u00e9gia\"}]},{\"@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\/\"]}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Estrat\u00e9gia - 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\/game-engine-criacao-de-jogos-de-estrategia\/","og_locale":"en_US","og_type":"article","og_title":"Estrat\u00e9gia - Gon\u00e7alo Ferreira","og_description":"Aqui deixo registo de tudo o que eu fa\u00e7a relacionado com o meu Game Engine, criado do zero usando C++","og_url":"https:\/\/www.goncalo.pt\/por\/game-engine-criacao-de-jogos-de-estrategia\/","og_site_name":"Gon\u00e7alo Ferreira","article_modified_time":"2023-10-30T01:08:55+00:00","og_image":[{"url":"https:\/\/www.goncalo.pt\/por\/wp-content\/uploads\/2023\/10\/2023-10-01-Travelling-through-the-stars-in-my-Master-of-Orion-clone-project-Thumb.gif","width":600,"height":337,"type":"image\/gif"}],"twitter_card":"summary_large_image","twitter_misc":{"Est. reading time":"1 minute"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/www.goncalo.pt\/por\/game-engine-criacao-de-jogos-de-estrategia\/","url":"https:\/\/www.goncalo.pt\/por\/game-engine-criacao-de-jogos-de-estrategia\/","name":"Estrat\u00e9gia - Gon\u00e7alo Ferreira","isPartOf":{"@id":"https:\/\/www.goncalo.pt\/por\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.goncalo.pt\/por\/game-engine-criacao-de-jogos-de-estrategia\/#primaryimage"},"image":{"@id":"https:\/\/www.goncalo.pt\/por\/game-engine-criacao-de-jogos-de-estrategia\/#primaryimage"},"thumbnailUrl":"https:\/\/www.goncalo.pt\/por\/wp-content\/uploads\/2023\/10\/2023-10-01-Travelling-through-the-stars-in-my-Master-of-Orion-clone-project-Thumb.gif","datePublished":"2023-08-29T06:07:21+00:00","dateModified":"2023-10-30T01:08:55+00:00","breadcrumb":{"@id":"https:\/\/www.goncalo.pt\/por\/game-engine-criacao-de-jogos-de-estrategia\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.goncalo.pt\/por\/game-engine-criacao-de-jogos-de-estrategia\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.goncalo.pt\/por\/game-engine-criacao-de-jogos-de-estrategia\/#primaryimage","url":"https:\/\/www.goncalo.pt\/por\/wp-content\/uploads\/2023\/10\/2023-10-01-Travelling-through-the-stars-in-my-Master-of-Orion-clone-project-Thumb.gif","contentUrl":"https:\/\/www.goncalo.pt\/por\/wp-content\/uploads\/2023\/10\/2023-10-01-Travelling-through-the-stars-in-my-Master-of-Orion-clone-project-Thumb.gif","width":600,"height":337,"caption":"2023-10-01 - Melhorias na minha vers\u00e3o do \"Master of Orion\": Cursor, seleccionar planetas, efeitos, etc..."},{"@type":"BreadcrumbList","@id":"https:\/\/www.goncalo.pt\/por\/game-engine-criacao-de-jogos-de-estrategia\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.goncalo.pt\/por\/"},{"@type":"ListItem","position":2,"name":"Estrat\u00e9gia"}]},{"@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\/"]}]}},"_links":{"self":[{"href":"https:\/\/www.goncalo.pt\/por\/wp-json\/wp\/v2\/pages\/2566"}],"collection":[{"href":"https:\/\/www.goncalo.pt\/por\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/www.goncalo.pt\/por\/wp-json\/wp\/v2\/types\/page"}],"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=2566"}],"version-history":[{"count":1,"href":"https:\/\/www.goncalo.pt\/por\/wp-json\/wp\/v2\/pages\/2566\/revisions"}],"predecessor-version":[{"id":2567,"href":"https:\/\/www.goncalo.pt\/por\/wp-json\/wp\/v2\/pages\/2566\/revisions\/2567"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.goncalo.pt\/por\/wp-json\/wp\/v2\/media\/2641"}],"wp:attachment":[{"href":"https:\/\/www.goncalo.pt\/por\/wp-json\/wp\/v2\/media?parent=2566"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}