Versão leve com os painéis de LED e a bomba do water cooler refeitos como na foto real; abre leve em notebook e celular, com o traçado de luz no botão Qualidade máxima.
Construído em código (three.js) com o kit teardown de elvarofficial e whaleyxbt (MIT), pela skill si3d. Publicado 2026-11-10T11:41-03:00.
# PC gamer em 3D · nível foto (leve, v2) Continuação de pc-real-nivel-foto-20261110-0741, que segue publicada sem mudança. O Lucas abriu essa versão no notebook dele (10/11, 10:26) e ela travou a máquina inteira: o traçado de luz rodava sempre, em qualquer aparelho. ## O que mudou - A página abre por padrão em render rasterizado leve: materiais PBR, ambiente, LEDs, luz colorida barata no lugar da luz rebatida e curva de câmera. O que entra depende do nível: - alta (placa de vídeo dedicada): sombra suave, AO (GTAO), bloom e anti-serrilhado 4x; - média (GPU integrada): sombra, bloom e anti-serrilhado 2x; - leve (celular, GPU por software ou máquina com ≤4 GB/≤4 núcleos): sem sombra, sem bloom, resolução 1x. - Malhas juntadas por material: de milhares de objetos para algumas dezenas de chamadas de desenho. - A tela só é desenhada quando a câmera muda. Com a aba escondida, nada é desenhado. - Se os quadros ficarem lentos enquanto o modelo gira, a página baixa sozinha um nível. - O traçado de luz (three-gpu-pathtracer) só é criado no botão "Qualidade máxima", que só fica ativo em placa de vídeo dedicada; em celular e GPU integrada o botão aparece desligado. Alvo: 300 amostras (era 600). Os blocos aumentam sozinhos se o quadro passar de 120 ms. - Enquadramento ajustado para tela larga (notebook) e para tela em pé (celular). ## Teste de carga (hill/leve.mjs, GPU real da máquina, CPU limitada pelo Chrome) Ver revisao/leve.jsonl. O notebook simula GPU integrada (o nível é escolhido pela string da GPU) com CPU 4x mais lenta. O celular usa 390x844 com toque e CPU 6x mais lenta. - PC forte: primeiro quadro em 1,1 s, nível alta, 60 fps girando, ~0,7 ms de GPU por quadro. - Notebook simulado: 2,9 s, nível média, 60 fps girando, ~3,7 ms de GPU por quadro. - Celular simulado: 3,6 s, nível leve, 60 fps girando, ~2,6 ms de GPU por quadro. - Aba escondida: 0 quadros desenhados nos três perfis. Nenhum erro de console. - testar.mjs (PC e celular): 0 erros, todos os botões mudam a tela e o arrasto mudou a tela nos dois perfis. No celular, "Qualidade máxima" fica desligado, de propósito. Limite do teste: não consegui forçar uma GPU fraca de verdade nesta máquina (o Chrome sempre pega a RTX). Com o renderizador por software (Mesa llvmpipe), os shaders do three falham ao validar e a tela fica preta, o que não representa um notebook real. O custo por quadro medido na RTX é a melhor prova que tenho: uma GPU integrada costuma ser 10 a 20 vezes mais lenta, o que dá de 7 a 40 ms por quadro no nível média, e a página só desenha quando a câmera se mexe. ## v2 (esta entrada): hill climbing no modo leve, que é o que abre para todo mundo Mesmo juiz cego (Opus 5.5 high, 3 leituras, foto real × render no mesmo enquadramento). Agora o render medido é o leve (nível alta), não o traçado de luz. - r12 modo leve publicado em pc-real-nivel-foto-leve-20261110-1044: 30,5 (base) - r13 luz-chave mais forte + bloom moderado: 30,0 (empate, mantido pelo visual) - r14 painéis de LED da frente encaixados como na foto: 32,4 (mantido) - r15 bomba do water cooler com aletas brancas de volume, cortadas no quadrado: 34,4 (mantido) - r16 mais luzes coloridas de rebatimento: 32,5 (desfeito) Também nesta versão: com o modelo parado, nenhum quadro é desenhado (a câmera encaixa no destino). Teste de carga desta versão (revisao/leve.jsonl): PC 1,2 s, notebook simulado 2,7 s, celular simulado 3,4 s até o primeiro quadro; 60 fps girando; 0 quadros parado e com a aba escondida; 0 erros. ## v2, segunda leva (mesmo link) - Testado na placa integrada AMD Radeon 610M do próprio PC (2 unidades de GPU, como um notebook barato), não só simulado. Achado: "AMD Radeon / radeonsi / Ryzen" não era reconhecido como integrado; agora é, e a página escolhe o nível média, com o botão Qualidade máxima desligado. - Traçado de luz com freio: se os quadros passam de 100 ms várias vezes, ele divide em blocos menores e, se continuar lento, desliga e volta ao modo leve com aviso. Na Radeon 610M, ?q=maxima forçado volta ao leve em ~6 s; antes ficava travado em 2 fps. - Nível média com resolução 1x (era 1,25x). - r17 ventoinhas do teto vistas de lado com treliça e luz vazando: 34,3 (mantido; o juiz deixou de apontar o teto) - r18 oclusão ambiente mais forte: 32,2 (desfeito) - r19 luz colorida com alcance maior: 31,5 (desfeito) Prova: revisao/leve-gpu-integrada.jsonl. ## v2, terceira leva: versão PC × versão celular (pedido do Lucas, 11:28) - Interface e controle separados por aparelho (lib/pagina/aparelho.js da skill si3d). Celular = toque como entrada principal + tela de telefone, não só largura; ?ui=cel|pc força. - Celular: barra fina em cima, modelo sozinho no meio (0% coberto), barra de polegar embaixo (Início · Vistas · Opções · Gestos, alvos de 58 px), gaveta que sobe e recolhe; dica de gestos na abertura. - Toque: 1 dedo gira, pinça aproxima, 2 dedos movem, toque duplo foca a peça tocada, Início volta; câmera com limites; página não rola nem dá zoom. - PC: o mesmo layout de antes, mais botão direito/Shift move, duplo clique foca, setas e +/- e R volta. - r20 ventoinha traseira de lado: desfeito. r21 janela ROG visível com moldura e STRIX: 31,9 / 35,4 (r17 relida: 32,3), mantido. Prova: revisao/cel.json e revisao/cel/*.png (toque real via CDP), revisao/leve-celular-novo.jsonl.