Changelog
Mudanças técnicas recentes, por data. Para a versão detalhada de como o projeto chegou até aqui (o protótipo V1, a expansão de escopo da V2, a reescrita de física da V3 e a reconstrução de UI da V4), veja a página Marcos.
4.3.0 - relatórios dentro do app + painel de feedback (junho de 2026)
- Relate um problema, de dentro do próprio app - uma nova página Relatar, tanto na versão Pro quanto na Grátis, envia um relatório de erro ou de recurso direto do OLED Guard. Ela anexa automaticamente um instantâneo de diagnóstico (versão, edição, GPU, layout de monitores) e um trecho final do
engine.logcom os dados pessoais (PII) removidos, com uma pré-visualização antes do envio: você vê e pode editar exatamente o que será transmitido, remover qualquer linha de log ou enviar apenas texto. Nada sai da sua máquina até você apertar Enviar. - Painel de feedback público - relatórios e pedidos de recursos agora são publicados em um painel público em board.oledguard.com, onde você pode acompanhar, comentar e votar neles; as ideias mais pedidas sobem para o topo. Os novos envios passam por revisão antes de aparecerem publicamente.
- Remoção de dados do log com a privacidade em primeiro lugar - o log anexado remove automaticamente nomes de apps/exe em primeiro plano, caminhos de pastas de usuário, e-mails e endereços de IP. As strings de modelo do monitor são mantidas de propósito, porque dados específicos do painel são justamente o que ajuda a diagnosticar um problema de OLED.
- Vinheta desacoplada do modo Ausente - o escurecimento das bordas agora é uma configuração global e persistente própria, que não é mais redefinida entre sessões, com uma nova opção "Sempre escurecer as bordas".
- A Vinheta ativa agora é óbvia - uma opção na barra de status mais uma linha de limite no mapa de calor deixam claro quando o escurecimento das bordas está ligado (corrige os relatos de que a "vinheta parece invisível").
- O modo Ausente cede espaço para a tela cheia - o modo Ausente não ativa mais sobre jogos em tela cheia, e a cadência de leitura é limitada para reduzir os engasgos dentro do jogo.
- Correções de estabilidade da Vinheta - as alças de arrasto das bordas não tremem mais (uma corrida de hidratação somada a uma gravação em disco a cada movimento), e a opção Sempre escurecer não fica mais alternando no primeiro clique.
- O filtro de lacunas de ruído agora vem como Off por padrão (antes era Morfológico), reduzindo o custo de GPU na configuração de fábrica.
- Janela padrão mais espaçosa - o painel abre um pouco mais largo na primeira inicialização.
4.2.1 - Edição gratuita + pausa automática em tela cheia (maio de 2026)
- OLED Guard Free na Microsoft Store - uma edição gratuita que oferece proteção automática contra burn-in para um único display no desktop, na intensidade Equilibrada, com a camada de mapa de calor, o modo Ausente e a Soneca. Ela deliberadamente não protege apps em tela cheia; isso continua sendo um recurso Pro.
- Pausa automática em tela cheia (Grátis) - quando um jogo ou vídeo em tela cheia cobre o display principal, a versão Grátis para o motor para que ele nunca fique sobre o seu conteúdo nem custe desempenho, e retoma automaticamente quando você volta ao desktop.
- O desktop não é mais confundido com um app em tela cheia - o detector de tela cheia do motor agora exclui a shell do desktop do Windows (Progman / WorkerW). Isso também corrige um caso do Modo automático da versão Pro em que ficar no desktop vazio podia direcionar para uma predefinição de jogo/vídeo em tela cheia em vez da predefinição Work para conteúdo estático.
- Versionamento unificado - Pro e Grátis agora compartilham uma única linha de versão 4.2.1.
4.2.0 - acabamento de lançamento (maio de 2026)
A passagem de prontidão para o lançamento da 4.2.0 na Steam e na Microsoft Store.
- Lançamento na Steam - o OLED Guard Pro agora está disponível na Steam (Steam App ID 4558060), ao lado das edições existentes da Microsoft Store.
- Imposição de instância única - iniciar uma segunda cópia agora traz a janela existente para a frente em vez de gerar um motor duplicado que disputa recursos de captura D3D.
- Persistência do posicionamento da janela - o painel lembra seu tamanho, posição e estado maximizado entre as inicializações, validado contra o layout atual de monitores para que um display desconectado não deixe a janela presa fora da tela.
- Filtro morfológico de lacunas de ruído agora é o padrão no Modo automático (antes era Off). Todas as predefinições de fábrica vêm com ele ativado.
- Override de Intensity por perfil - os Perfis de Aplicativo agora podem ajustar apenas o controle deslizante de Intensity para um aplicativo, sem editar a própria predefinição.
- UI de colisão de reivindicação de exe - a página Perfis de Aplicativo mostra o conflito inline se dois perfis tentarem reivindicar o mesmo executável, e rejeita o salvamento até que seja resolvido.
- Browse... - diálogo de arquivo nativo para escolher um executável quando a lista de apps em execução e o navegador da biblioteca Steam não têm o que você quer.
- Exclusão de captura ciente de oclusão - as janelas de app registradas agora contribuem apenas com sua região visível para a máscara de exclusão, fechando a lacuna de app atrás de uma janela que a encobre.
- Exclusão WDA ciente de visibilidade - a flag de proteção contra captura de tela agora alterna com base em quanto da janela do OLED Guard está visível, eliminando a lacuna de app residual em janelas totalmente visíveis.
- Piso de visibilidade da camada de proteção (gamma 0.6) para que os HUDs detectados fiquem em um nível de proteção visível em vez de um piso de mapa de calor verde quase invisível.
- Recuperação de
.bakdo settings.json - um arquivo de configurações ilegível agora é colocado em quarentena emsettings.json.bake registrado em log, em vez de silenciosamente voltar aos padrões sem deixar rastro. - Balão na bandeja ao fechar - notificação "ainda em execução na bandeja" na primeira vez da sessão, para que os usuários não pensem que o app foi encerrado ao clicar no X.
- Atualização da versão do app.manifest - adicionado
longPathAware, adicionado o GUID supportedOS do Windows 11, optado pela página de código ativa UTF-8. engine.loga partir deLog.Warn/Error- os blocos catch do bridge e do motor agora gravam entradas estruturadas em%LOCALAPPDATA%\OLEDGuard\engine.logem vez de depender deDebug.WriteLine(que é removido no Release).- Correção de CA2014 stackalloc-in-loop no caminho crítico de renderização.
- HUD de ajuste in-game (
Ctrl+Shift+G) - um HUD compacto opcional sempre no topo que expõe o raciocínio ao vivo do Modo automático, vinculável a uma tecla de atalho pela página Hotkeys.
V4 - a reconstrução de UI (a partir de 27 de abril)
- Consciência de hot-plug em toda a lista de monitores. Conecte um OLED USB-C, o motor o detecta; desconecte, e a proteção para de forma limpa sem perturbar os outros displays.
- Reanálise de DDC/CI por monitor quando as capacidades mudam em tempo de execução.
- Anel de histórico de ameaças de 24h persistido para a linha do tempo de Statistics.
- Persistência do tempo de tela por app entre reinicializações.
- Pontuação de confiança do classificador no fluxo de métricas, para que o controlador Auto exponha a incerteza.
- Sondagem de inicialização do DDC estendida de 150 ms para 1,2 s - elimina uma classe de falsos relatos de "No DDC" em monitores que levam um momento para acordar.
- Roteamento de links externos - cliques dentro da shell do WebView2 agora abrem no seu navegador padrão em vez de desaparecer dentro da view incorporada.
- Sistema visual v4 em todas as páginas: dashboard, monitors, overlay, vignette, settings, advanced, profiles, hotkeys e about, cada uma reconstruída para corresponder à fonte de design v4.
- Novo logo de escudo substitui o monograma OG no app de desktop e no site.
V3 - motor de física (18 de abril a 26 de abril)
- Shader de exposição por pixel (
ExposureAccumulatePS_v3) substitui o acumulador heurístico da v2. - Envelope de movimento + comporta de estabilidade como passes de GPU separados.
- Controlador Modo automático V3 com sincronização explícita de UI e um banner de pausa que acompanha as edições manuais.
- Leitura ao vivo do classificador na página Avançado, transmitindo o histórico dos botões do controlador a 60 Hz.
- Envelope de movimento por pixel substitui a camada de inteligência baseada em células (que produzia artefatos em escada nas bordas do conteúdo e agora foi aposentada de vez).
- Suítes de ajuste L4 por predefinição - 24/24 em verde antes de cada lançamento.
- A Window Border Protection foi aposentada (era uma heurística da era v2 que o motor V3 incorpora).
- A Fase 8 do redesenho da V3 foi encerrada com a exclusão dos campos de predefinição da v2, das propriedades do motor e dos controles deslizantes legados da UI.
V2 - o app completo (13 de fevereiro a 17 de abril)
- Arquitetura multi-monitor com pipelines independentes de captura e renderização por display.
- Brilho e contraste via DDC/CI por meio de comandos VESA MCCS.
- Perfis por app com um observador de janela em primeiro plano e troca com debounce.
- Modo automático v1/v2 - o controlador é anterior ao redesenho da V3.
- Conjunto de modos de proteção Ruído / Vinheta / Mosaico com shaders separados.
- Predefinições de jogos com proteção ponderada nas bordas e comporta de brilho proporcional.
- Harness de teste hierárquico (L1 unitário / L2 física / L3 cenários / L4 por predefinição) com 81 asserções etiquetadas.
- Predefinições de qualidade (Low / Medium / High / Ultra a 432p) trocam precisão de detecção por custo de captura.
- Fluxo de avaliação da Microsoft Store mais a separação de direitos Grátis / Pro.
V1 - prova de conceito (2024)
A primeira versão. Captura de tela acelerada por hardware, composição da camada de proteção em monitor único através do DWM, o núcleo do motor sobre o qual tudo desde então foi construído. Anterior a este repositório público.