6 ms·
The Old-School Fire Effect and Bare-Metal Programming
- zellyn 9y agoSad that the author didn't run across Denthor's tutorials… http://textfiles.com/programming/astrainer.txt http://textfiles.com/programming/astrainer.txt Discussed a few years ago on hn: https://news.ycombinator.com/item?id=8837545 https://news.ycombinator.com/item?id=8837545
- zmodem 9y agoThanks! I hadn't seen those.
- yoodenvranx 9y agoThanks, that brings back soooo many good memories! I wish there would still an easy way for kids to do similar graphics programming on modern PCs. Back then it was very easy to bring pixels to the screen, you just needed a few lines of code to switch to the correct mode. But nowadays with Direct X / Open GL you have layers and layers of abstractions between you and the pixels. And "setting up"Turbo pascal is still way easier than a modern Visual Studio. I wish there would be some sort of modern Turbo Pascal which lets you do similar programming by faking / emulating the whole VESA stuff.
- reificator 9y agoCanvas doesn't need more than a browser. It's not the same thing of course, but it's easy to get into, you can do cool things quickly, and it's a useful skill to have now anyway. (I know Chrome even comes with an editor built in.)
- userbinator 9y agoIf you're running 32-bit Windows, it will still run the oldschool 16-bit .com and .exe formats; and from there, an A000 framebuffer and graphical mode is only an int 10h away. If you're running a 64-bit OS, then DOSBox will work nicely too.
- bunderbunder 9y agoProcessing (https://processing.org/ https://processing.org/) is a decent option, though it doesn't replicate the same low-level experience.
- stmw 9y agoI think the larger problem is that back then, those demos were indistinguishable from magic -- they looked more amazing than anything else you saw on that computer screen. Now, with 60-120fps HD video on your screen, writing assembler to produce some "ugly CGI" is just not attractive.
- exlurker 9y agoYou could try Shadertoy, which looks to be in the same spirit: https://www.shadertoy.com https://www.shadertoy.com
- myth_drannon 9y agoThese were the best. I was looking for them but couldn't remember the guy's name.
- CodeMage 9y agoHoly smoke! Denthor of Asphyxia, now that brings back memories. My two most valuable sources of knowledge back then were PCGPE (PC Game Programmer's Encyclopedia) and Ralph Brown's Interrupt List. Thanks for the stroll down the memory lane!
- azeirah 9y agoHa, I remember being in high school and messing with my TI-84, I ran across a tutorial on running assembly on the TI-84. I was seriously impressed by the fact that I could run a semi-realistic fire simulation on that device with only two lines of assembly code. Thanks omnimaga forums!
- chocolatebunny 9y agoholy cow. I remember doing this on Turbo Pascal back in the 90s.
- xab9 9y agoYep, with a little bit of assembly. Back then I had a 286 and all of my pas programs compiled in seconds... now I have a core i7 with 16gb ram and changing a line in a js file makes webpack compile it for 20 seconds :D
- mattnewport 9y agoMy favorite version of the old school fire effect was Hugo Elias' version that added a feedback driven warping effect: https://web.archive.org/web/20160418004150/http://freespace.virgin.net/hugo.elias/models/m_fire.htm https://web.archive.org/web/20160418004150/http://freespace....
- DiThi 9y agoQuick capture of that version https://i.imgur.com/FVaDDRF.mp4 https://i.imgur.com/FVaDDRF.mp4
- taneq 9y agoOh wow, "The good-looking textured light-sourced bouncy fun smart and stretchy page". That takes me back... he had so much good stuff on there. My favourite was the cloud cover demo: https://web.archive.org/web/20160604173317/http://freespace.virgin.net:80/hugo.elias/models/m_clouds.htm https://web.archive.org/web/20160604173317/http://freespace....
- bananaboy 9y agoAwesome! I love this effect. Here's a size-optimised version I wrote in assembly a long time ago: http://www.humbug.net/projects/download/demos/js-fire7.zip http://www.humbug.net/projects/download/demos/js-fire7.zip It's 173 bytes in size. I wasn't going for the tiniest possible fire effect, but rather the tiniest but still decent looking version.
- Jare 9y agoThis post and his fixes to the Javascript version made me so happy last week. Amazing that something I wrote 24 years ago can still be of interest to anyone.
- bananaboy 9y agoYour fire effect was the first demo effect I ever wrote! Iguana demos were one of the things that got me into the demoscene (btw I loved the Blastersound bbstro!).
- TuringNYC 9y agoDemos in the early/mid 1990s inspired me to become a developer! I remember them so fondly, I used to college them from various BBSs.
- mysterydip 9y agoIronically, the first fire effects I saw were on QBasic, found via various webrings in the mid to late 90s, like this one: http://www.petesqbsite.com/sections/tutorials/tutorials/fire.txt http://www.petesqbsite.com/sections/tutorials/tutorials/fire...
- jbverschoor 9y agoAhh. Good times
- TuringNYC 9y agoThank you for sharing this, this brings back such fond memories of the 90s! I was in middle school and the best I ever achieved were the scrolling pipes effect using Basic. Bonus points two with multi-colored scrolling pipes with proper overlap :-)
- midnightclubbed 9y agoSuch a simple but effective effect. Came in super useful for the N64 port of Killer Instinct 2 (couldn't afford the memory for the pre-rendered fire that the arcade machine used, Jare to the rescue). Thanks for saving a junior programmers ass! https://www.youtube.com/watch?v=B8fph9nhq4k https://www.youtube.com/watch?v=B8fph9nhq4k
- Jare 9y agoThat is amazing, I never knew that!
- scott_s 9y agoTo be clear: you worked on the N64 port of Killer Instinct 2?
- midnightclubbed 9y agoYeah. Killer Instinct: Gold but it was based on the KI2 arcade machine code (with N64 cartridge friendly assets).