2026-06-08 – Uso de fontes Bitmap, melhoria de performance, e menus GUI no meu Explorador de Fractais e Game Engine em C++…
Após 6 meses de pausa total, voltei aos meus projectos.
O que decidi fazer, até porque preciso de ter o meu software de Exploração de Espaços/Mapas de Dados (DataSpace/MapSpace/VisualSpace Exploring) completo, até para o meu livro, porque há exemplos gráficos que quero ter nele gerados pelo meu próprio software.
Para ter exemplos bonitos, usei não fórmulas diversas usadas em Matemática ou Física mas sim Fractais, porque são lindos e demonstram bem o meu software.
E também porque pretendo com este explorador lançar um dia um software grátis de estudo de Fractais, que seja bom para ensino dos mesmos para professores de Matemática.
Por um lado tive de aplicar menus da minha GUI ao software, porque vou precisar de usar menus:

Por outro, quis livrar-me das fontes TTF que usava, até porque não são minhas e quero que o software fosse 100% gratuito e sem problemas legais com fontes que não são minhas:

Quanto às fontes: Decidi usar Bitmap Fonts, até porque não preciso de True Type Fonts vectoriais, pois não preciso de fazer zoom às mesmas. E na imagem podem ver uma fonte funcional que dá para qualquer língua Europeia, e que tentei adaptar o melhor possível para ser bonita, aliás duas dessas fontes:

Apliquei-a também ao meu Game Engine (que não precisa de fontes TTF), e notei uma subida de uns 800 FPS para uns 1200 FPS (aqui nota-se menos pois tenho a máquina sobrecarregada), mesmo usando as minhas fontes de cache, porque o TTF era muito pesado.
Nas imagem podem ver que o Game Engine de cima tem as fontes TTF, que é mais smooth porque tem partes das letras suavizadas por ser vectorial, e abaixo a minha bitmap font menos suavizada porque não é vectorial. Mas penso não ter ficado mal.
Os FPS lembrem-se que se eu usasse por igual os 16 cores que tenho neste portátil barato, seriam não uns 1200 FPS máximos mas sim perto de 19.000 FPS. Claro que eu nunca usarei tantos cores para jogos retro, e nunca conseguimos distribuir totalmente a carga por todos.
Claro que isto é apenas uma estimativa teórica por escala linear simples: Pegar nos FPS de um core/thread e multiplicar pelo número de cores disponíveis. Na prática, nenhum motor escala assim de forma perfeita, porque há sempre custos de sincronização entre threads, acessos à memória/cache, partes do código que continuam sequenciais, coordenação do render, sistema operativo, drivers, limites de largura de banda e muitos outros factores. Por isso não digo isto como valor real atingível, mas como indicação de que a base do motor está bastante optimizada e que existe muita margem de processamento numa máquina comum.
Outro problema é que há sistemas de renderização que acabam por ficar limitados a um só core/thread, o que baixa muito o limite real de FPS. Por outro lado, estes valores mostram que existe uma grande margem de processamento que poderia ser usada com multi-threading para adicionar muitas funcionalidades pesadas ao jogo, como simulação, Física, partículas, IA, streaming de mapas, efeitos, etc, sem afectar a jogabilidade.
Mas é só para vos lembrar que este meu Game Engine numa máquina barata de 500€ teria muitos milhares de FPS, tal é a forma como está optimizado, mesmo tendo mapas gigantes, com inimigos a mexer-se em todo o mapa não visível, com dezenas de milhares de objectos no ecrã a mover em real time (chuva, bolhas de ar, etc).
Quanto ao meu explorador de mapas visuais ou o futuro “Explorador de Fractais”, podem ver que já tem um menu bonito, só falta adicionar as features várias para qualquer estudioso da Matemática ou alunos que aprendam Fractais poderem usar.
Este foi um ligeiro regresso à Programação, até porque quando falamos de C/C++ não devemos estar meses sem programar para não perdermos alguma da nossa eficiência em Programação.
Vou desenvolver este projecto até porque exemplos visuais de fórmulas matemáticas que usarei no meu livro, terão de ser feitos no meu próprio software para que tudo no livro seja meu.
Quanto ao livro, vou finalmente ter tempo para pegar nele e transformar as perto de 6000 páginas de notas que tenho em perto de 1000-1500 e com imagens limitar tudo a umas 2000 páginas.
A ver se até ao fim do ano já tenho publicados uns 3 ou 4 livros da obra total de 7.
Mais notícias um dia.
Hasta!
2026-06-08.
#Matemática #Fractais #GameEngine #Cpp #Programação
Publicado no mesmo dia no LinkedIn, em:
Próximo post sobre este software matemático:
(A ser publicado um dia).
Próximo post associado ao meu futuro livro de Matemática e Física:
(A ser publicado um dia).
Próximo post sobre o meu Game Engine em C++:
(A ser publicado um dia).
Post anterior sobre o meu Game Engine:
Ũltimo post associado ao meu futuro livro de Matemática/Física:


