CSSQuake
Renderização e Implementação
- O jogo usa CSS e HTML apenas para renderização; toda a lógica central do jogo é escrita em JavaScript/TypeScript.
- Elementos DOM e transformações CSS 3D substituem a renderização tradicional em canvas/WebGL.
- A etapa de build extrai dados de QuakeC/progs.dat para JSON (estados, modelos, ataques, sons) consumidos pelo runtime em TypeScript para uma jogabilidade “Quake-like”.
- Alguns comentaristas mencionam recursos de áudio em CSS (folhas de estilo aural), mas o som nesta demo é controlado por uma opção no jogo / atalho de teclado, e não por CSS puro.
Relação com Outros Projetos e Linhagem
- Várias pessoas comparam isso a um projeto semelhante de “CSS Doom”; a discussão esclarece que são projetos separados.
- Ambos são vistos como parte de uma longa linha de engines experimentais em CSS3D e demos de FPS que vieram antes deles.
Jogabilidade, Controles e Problemas de UX
- Foram relatadas várias peculiaridades de controle: movimento com efeito de elasticidade, ficar preso em cantos e inclinações, atravessar objetos e dificuldade para sair do jogo.
- O menu pode desaparecer ao clicar na janela; a solução alternativa é usar Tab para mostrar o menu, Esc para sair ou fechar a aba.
- Alguns botões originalmente exigiam atirar em vez de tocar; esse comportamento foi ajustado depois.
- Extensões de modo escuro podem tornar partes do mapa quase invisíveis.
Desempenho e Diferenças entre Navegadores
- As experiências variam bastante: alguns veem 60 FPS suaves até em hardware modesto, enquanto outros relatam travamentos severos ou crashes.
- Safari/WebKit é frequentemente descrito como instável e com falhas; Chrome e Firefox em várias plataformas costumam ser mais suaves.
- Muitos contrastam o desempenho irregular com o quão bem o Quake original rodava em hardware muito mais fraco dos anos 1990, destacando o custo de usar CSS como pipeline de renderização.
Reações ao CSS como Meio
- Há forte admiração pelo feito técnico e pelo espírito de “porque podemos”.
- Alguns veem isso como um uso impressionante, mas inerentemente ineficiente, de uma linguagem declarativa de estilo.
- Outros argumentam que é simplesmente aproveitar os recursos existentes de transformações 3D e um desafio divertido, não uma escolha séria de engine.
Nostalgia e Notas Culturais
- Há inúmeras reações nostálgicas de pessoas que jogaram Quake décadas atrás e ainda lembram dos níveis e do movimento pela memória muscular.
- A discussão também inclui brincadeiras leves sobre piadas de CSS (float, z-index, centralizar divs) e comentários no estilo “a ciência foi longe demais?”.