3 comments

  • emanuele-em2 hours ago
    Ok the MUL workaround got me. MUL does (a<i>b)&#x2F;64 so you have to DIV first to get a</i>64, then MUL finally gives you a*b. And recursive FDEFs because there&#x27;s no WHILE? All in 6.5KB? What kind of frame rate do you actually get out of this?
    • 4RH1T3CT0R2 hours ago
      Frame rate depends on the browser - Chrome gives around 30-60fps on my machine, but the bottleneck is actually Chrome deciding whether to re-run hinting at all (had to add axis jitter to force it). The TT bytecode itself executes fast, it&#x27;s maybe a few thousand instructions per frame<p><pre><code> The recursive FDEF thing is the worst part honestly. Every while loop is a function that calls itself, and FreeType kills you at ~64 deep. So you&#x27;re constantly juggling how many columns vs how many ray steps you can afford</code></pre>
  • tadfisher36 minutes ago
    You are (or I suspect your LLM is) not correct about Doom using a raycasting engine. Wolfenstein fits that description, yes. Doom rather famously introduced BSP for level data and it draws sorted polygons front-to-back without ray-marching.
  • tombert47 minutes ago
    I tried playing the demo, and it was just green bars for me. The walls didn&#x27;t scale up or shrink, it was just a bunch of solid static green bars.<p>The enemies did scale up and shrink as I got closer, and the minimap worked.<p>Tried with Brave on Linux, and Google Chrome on macOS.