CSSQuake

(cssquake.com)

352 points | by msalsas 8 hours ago ago

75 comments

  • jedberg 4 hours ago ago

    This is an awesome achievement, but I can't help but notice that Quake ran smoother on my Pentium-133 PC in the 90s than it runs on my Mac M1 Pro...

    • poisonfountain 3 hours ago ago

      This engine is not optimised for performance. It's using CSS, after all.

      • jedberg 2 hours ago ago

        Of course, but you'd think after 30 years the compute power should be enough to overcome any lack of optimization. It's a testament to the engineering that went into the original Quake engine.

        • culi 2 hours ago ago

          Decades of optimizing a toaster to make better toast will not make the toaster any better at making meatloaf

          • libria 4 minutes ago ago

            Is this the right analogy? The product is the same, the appliance is different.

            It should be "Decades of inventions from toasters to IOT AI Smart Air Fryers will not make better toast than the original"

            But I'd argue the IOT AI Smart Air Fryer should make really good toast. Which is what GP is saying.

          • rustystump an hour ago ago

            I am on the ground. This is great.

            Still, why css is as slow as it is given what tech like imgui can do is a little wild.

            • harrall an hour ago ago

              CSS is a general rendering solution, not something built for rendering 3D games.

              And no one has spent any time optimizing 3D transforms to make a game workable because no one would be able to justify the use of their time like that. It wouldn’t even give you brownie points ‘cause most people would just ask “why?”

              • Akronymus 21 minutes ago ago

                Id assume "a fun challenge" could be enough of a reason

      • Insanity 3 hours ago ago

        Yeah this is a case of “not the right tool for the job”.

        It is awesome though.

    • jamal-kumar an hour ago ago

      For what it's worth it works like smooth butter under Chrome on an M2, on Safari it's clunky and seems to clip alot

    • to11mtm 2 hours ago ago

      Either you had a Voodoo on your P133 or whatever the M1 is doing is having a bad time...

      On my 7945HX this is plenty fast.

    • DanielHB 3 hours ago ago

      Wait, did Quack run on Pentium-133? I had a Pentium MMX 233mhz and I always assumed it didn't ran well so I never bother to get it.

      • iamphilrae 2 hours ago ago

        If you had a 3dfx card it would run silky smooth on a Pentium-120 (what I had at the time)! Quake 2 ran pretty well too if I recall.

      • bluedino an hour ago ago

        Bare minimum for it being playable was a 486DX4 100MHz or similar, but with the floating point Quake really wanted a Pentium

        • Garlef an hour ago ago

          I played it on a Pentium with 60mhz - it was allright

      • UltraSane 2 hours ago ago

        Quake ran well on my 100Mhz Pentium.

      • jedberg 2 hours ago ago

        It must have, because that's what I had in 1996 and I played it.

      • lightedman 2 hours ago ago

        Quake ran on a P75 with 8MB RAM in DOS mode. Not the best but it worked at 320x200.

    • jonplackett 2 hours ago ago

      I think you’re missing the point

  • elinear 7 minutes ago ago

    I noticed my cursor was continuously sliding upward first in Neal.fun's latest canvas multiplayer game and I experienced it here as well. Anyone else see this behavior?

    And maybe a skill issue but I was unable to jump out of the slime...

  • glerk 15 minutes ago ago

    Wow this is really awesome. Really really smooth. It's insane how after 25 years or so my muscle memory is still intact.

  • AzzieElbab 6 hours ago ago

    Awesome! Harder to exit than vim.

    • pgt an hour ago ago

      In case you want to view the menu, press Tab. Click outside menu items to resume game.

    • deskamess 5 hours ago ago

      how did you exit? because nothing seems to be working.

      • calgoo 5 hours ago ago

        Back button worked for me

      • ChrisClark 4 hours ago ago

        I pressed escape, then just closed the tab

      • axus 4 hours ago ago

        I pressed Esc key, click quit. And then closed the browser tab.

  • badsectoracula 4 hours ago ago

    Impressive. I guess this isn't only the renderer made to use CSS but also a full recreation of the engine and logic right? My guess is because a bunch of things do not behave like the original game, e.g. some buttons need to be shot instead of touched to activate, some secret doors open by touching them instead of being shot, etc.

  • jojogeo 5 hours ago ago

    This is the first thing I've seen on the intertubes for a /long/ time which genuinely makes me smile, thank you op.

    Checked out https://cssdoom.wtf/ and loved it too, both are far lighter than current affairs. \o/

  • xyproto 11 minutes ago ago

    Has science gone too far?

  • remix2000 6 hours ago ago

    It seems like this CSS Quake needs JS to run…

    • zamadatix 3 hours ago ago

      CSS does the rendering, the game logic is TypeScript.

  • jacobgold 3 hours ago ago

    No light theme though?

  • edwinjm 6 hours ago ago
  • aggregator-ios 3 hours ago ago

    Wow, this is impressive. 60FPS, MacBook Air M1. I was instantly hooked and so much nostalgia.

  • crimsonnoodle58 4 hours ago ago

    Amazing and impressive use of CSS. But at the same time, makes me appreciate what feat Carmack achieved 30 years ago on early Pentiums.

  • divan 6 hours ago ago

    As someone who passionately and ardiently hates prolifiration of this set of _hacks on top of hacks_ called CSS (and CSS/JS/HTML aka Web-stack), I must say this is good and valid use case for CSS. :)

  • gpderetta 6 hours ago ago

    Nice, but the view keeps clipping out to far ahead of the map (but the character seems to still be in its original position as I can die from monsters). It snaps back in place when I shoot.

    edit: both on chromium and firefox, desktop linux.

  • boredemployee 3 hours ago ago

    I still play quake (world) to this day. I just can't quit it.

  • sgt 5 hours ago ago

    Very cool. I wonder what the limitations are? I see the dog I shot is floating in the air. Is that maybe a CSS thing or is it fixable?

    • freakynit 5 hours ago ago

      .dog { display: float; }

      • skvmb 4 hours ago ago

        You win! I laughed way too hard at this. Boss man is now giving me the side eye.

  • rvba an hour ago ago

    After leaving the first area to the bridge... was the sky really so close to the ground in the original game, or the old monitors made it look differently?

    Also nice achievement...!

  • stoobs 6 hours ago ago

    Seems like you get stuck on corners and it really doesn't like running up/down slopes, neat though.

  • ChrisArchitect 5 hours ago ago

    Show HN: from the dev (who's also in here, maybe a title update) https://news.ycombinator.com/item?id=48571117

  • criley2 6 hours ago ago

    Really cool experiment. A lot of jank. It would sometimes rubber band me back, movement was grid aligned in a way that made accessing the secret room challenging, and the whole tab unexpectedly crashed with no error. 5 star would play again

  • jdw64 4 hours ago ago

    I wish I could use CSS this well too

    • MattCruikshank 4 hours ago ago

      Don't worry, OP still can't center a div.

      • qingcharles 3 hours ago ago

        I was centering divs just fine, but now they took away Fable and I'm lost.

      • jdw64 3 hours ago ago

        I think I've finally found something in common between OP and me

  • Vaslo 3 hours ago ago

    But can it play Crysis?

  • iandanforth 4 hours ago ago

    Crazy, such memories. Thanks!

  • Snoopfrogg 4 hours ago ago

    This is dope.

  • ronbenton 3 hours ago ago

    Your scientists were so preoccupied with whether or not they could, they didn’t stop to think if they should

  • kiyeonjeon 6 hours ago ago

    how long does it take to develop this game?

  • alexb_ 5 hours ago ago

    Doesn't work at all for me. I keep jumping around and clipping through objects, can't even leave the first room without being stuck in the doorway to the elevator.

    • ekaryotic 4 hours ago ago

      have to shoot the elevator buttons in this, in the original you could move into them.

  • zuzululu 3 hours ago ago

    this is crazy i didn't know css could do this

  • xenophonf 6 hours ago ago

    Every time I click in the window, the menu disappears. I tried both Firefox and Chrome.

  • cynicalsecurity 4 hours ago ago

    If this is what CSS has become, it means at some point its development went the wrong way.

    • senfiaj 4 hours ago ago

      It still needs JS. It just avoids using canvas and does DOM manipulation + CSS instead.

    • Rohansi 4 hours ago ago

      The game logic here is running in JS. Only the rendering is handled by HTML and CSS. Is it really wrong that you can do this? All it requires is 3D transformation of elements.

  • buffer_overlord 7 hours ago ago

    is there no sound?

  • AndorinaAI 3 hours ago ago

    lol that's crazy. Good job.

  • ikari_pl 5 hours ago ago

    Wow, this will be a great project for the forever-upcoming VRML /s

  • thenthenthen 6 hours ago ago

    Wow