TE
TechEcho
Home24h TopNewestBestAskShowJobs
GitHubTwitter
Home

TechEcho

A tech news platform built with Next.js, providing global tech news and discussions.

GitHubTwitter

Home

HomeNewestBestAskShowJobs

Resources

HackerNews APIOriginal HackerNewsNext.js

© 2025 TechEcho. All rights reserved.

The Making of Underrun – A WebGL Shooter in 13kb of JavaScript

434 pointsby phoboslabover 6 years ago

23 comments

marijnover 6 years ago
Awesome to see the stupid trick to abbreviate object properties that I came up with in 2010 [1] is still a living part of the mini JS demo scene.<p>[1]: <a href="http:&#x2F;&#x2F;marijnhaverbeke.nl&#x2F;js1k&#x2F;" rel="nofollow">http:&#x2F;&#x2F;marijnhaverbeke.nl&#x2F;js1k&#x2F;</a>
评论 #18032861 未加载
评论 #18034405 未加载
评论 #18035501 未加载
评论 #18033758 未加载
wgxover 6 years ago
Also from the same year of the contest, Wander[0] is a 3D explorable world complete with grappling hook and save points!<p>[0] <a href="https:&#x2F;&#x2F;js13kgames.com&#x2F;entries&#x2F;wander" rel="nofollow">https:&#x2F;&#x2F;js13kgames.com&#x2F;entries&#x2F;wander</a>
评论 #18058397 未加载
pjc50over 6 years ago
Reminds me of 64k shooter kkreiger: <a href="https:&#x2F;&#x2F;en.wikipedia.org&#x2F;wiki&#x2F;.kkrieger" rel="nofollow">https:&#x2F;&#x2F;en.wikipedia.org&#x2F;wiki&#x2F;.kkrieger</a><p>This one is a hybrid with some predefined (tiny!) assets and some procedural generation (instruments, texture placement).
评论 #18031617 未加载
bArrayover 6 years ago
Good game, but unfortunately I was able to get stuck on an edge. Player&#x27;s upper left edge caught on wall&#x27;s lower right corner. Perhaps the problem is in the collision checking: <a href="https:&#x2F;&#x2F;github.com&#x2F;phoboslab&#x2F;underrun&#x2F;blob&#x2F;master&#x2F;source&#x2F;entity.js#L32" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;phoboslab&#x2F;underrun&#x2F;blob&#x2F;master&#x2F;source&#x2F;ent...</a><p>If there&#x27;s a collision in <i>either</i> X or Z, both should be rolled back to their last positions. I think there is possibly an edge case hidden in there otherwise.<p>P.S. Nice code by the way.
评论 #18031859 未加载
评论 #18031439 未加载
kowdermeisterover 6 years ago
Incredible casual game in 13k, fun to play, looks lovely, challenging enough and runs smoothly on 4k full screen.<p>Congrats.
Jyaifover 6 years ago
Fantastic project!<p>A fun alternative for the players model that also takes little space is to slice up the model into horizontal layers. See <a href="http:&#x2F;&#x2F;www.like100bears.com&#x2F;writing&#x2F;2d-3d-in-gamemaker-studio" rel="nofollow">http:&#x2F;&#x2F;www.like100bears.com&#x2F;writing&#x2F;2d-3d-in-gamemaker-studi...</a> for example.
ArtWombover 6 years ago
&gt;&gt;&gt; The game never needs to rotate any geometry<p>Fixed geometry was the first thing I noticed ;)<p>Could probably even increase level size manyfold and would still run quite smoothly. For large generated mazes. With this phenomenal skin-crawling sound design. Would make a very immersive &quot;escape&quot; labyrinth game!
ungzdover 6 years ago
I love the idea of low resolution of &quot;virtual screen&quot;, moreover it&#x27;s reduced to 256 colors! It allows to use low-resolution textures, simple cubes and &quot;billboard&quot; sprites. I think this idea can be useful not only in demoscene, but in commercial indie games too. Usually indie developers avoid 3D altogether, not because of complexity of 3d engines, but because of complexity of 3d assets. With low-res &quot;screen&quot; you can hand-draw small textures, use sprites instead of 3d models, use rough 3d models and so on, so you can build a game without having large team of artists.
评论 #18035590 未加载
nergalover 6 years ago
Nice :)<p>But I kinda hate you right now, because now you inspired me to develop games in 3D again, just when I&#x27;m in the making of 2D pixel-game ;)<p>(Love the retro-3D feeling, very good work!)
wanderfowlover 6 years ago
This is amazing, both in process and in result. Very well done, and a pleasant reminder that great things can come in small filesizes.
markatkinsonover 6 years ago
Wow this is phenomenal.
bluedinoover 6 years ago
Very cool. Has a guantlet vibe
billyboltonover 6 years ago
I wonder if this could be brought to the web in 97kb <a href="https:&#x2F;&#x2F;en.wikipedia.org&#x2F;wiki&#x2F;.kkrieger" rel="nofollow">https:&#x2F;&#x2F;en.wikipedia.org&#x2F;wiki&#x2F;.kkrieger</a>
hessenwolfover 6 years ago
Really good writing style. So much info in such short, simple sentences.
AnnoyingSwedeover 6 years ago
Amazing work.. Love the lightsource following the projectile. Was the large pixels a compromize to keep the fps up? Anyway, amazing what you can do with 13k!
lsiebertover 6 years ago
Hmm.. Seems to freeze on Chrome for me after the click to initiate deployment, and the console shows a javascript error.
mscastsover 6 years ago
Wow this is one of the cooler projects I have seen for that little amount of code.
dddwover 6 years ago
nice game, beautiful audio... this guy helped with that <a href="http:&#x2F;&#x2F;no-fate.net&#x2F;" rel="nofollow">http:&#x2F;&#x2F;no-fate.net&#x2F;</a>
miragesover 6 years ago
I wish for non qwerty support. Otherwise its genius
评论 #18032041 未加载
O_H_Eover 6 years ago
Nice Game &amp; Code. Keep the great work up
pjmlpover 6 years ago
Love it, the audio is great.
Joyfieldover 6 years ago
kb != kB
hoppelhaseover 6 years ago
Why is your post about your Coinhive authorship [0] gone?<p>[0]: <a href="https:&#x2F;&#x2F;phoboslab.org&#x2F;log&#x2F;2018&#x2F;03&#x2F;about-coinhive" rel="nofollow">https:&#x2F;&#x2F;phoboslab.org&#x2F;log&#x2F;2018&#x2F;03&#x2F;about-coinhive</a>