Not logged in, Join Here! or Log In Below:  
News Articles Search    

Submitted by Klaudius, posted on January 19, 2001

Image Description, by Klaudius

Aquasub an old playable demo in found recently in my 'dusty archive'. All is 'soft rendered' and was programmed when no 3D hardware was really available. In this demo you can control a fururistic submarine engine or a dolphin.

This demo was programmed with Watcom C and an old version of DirectDraw. All 3D is computed with 'old style' fixed point integer method. This was a first test for 3D sinus animation and motion blending (see the dolphin). Triangles display is programmed with assembly and 'quickly' optimized for pentiun UV pipe (please don't write me to explain me how to win 1 more cycle...). It was a really laborious way of displaying...

Demo and source code are provided 'as is' and can be used for non commercial usage (who could win money with that ?).

(Editor's Note - The demo is available here:

If you see some cube on the ground, you can try to push them... some problems can occurs on Win2000

  • F1 : test of display box
  • F2 : statistics on/off
  • F3 : change display type (solid, wire, flat...)
  • F5 : "Half line" render
  • LEFT and RIGHT :
  • UP and DOWN + and - for increase and decrease speed.
  • SPACE : fire !

  • Have fun with coding.

    Image of the Day Gallery


    Message Center / Reader Comments: ( To Participate in the Discussion, Join the Community )
    Archive Notice: This thread is old and no longer active. It is here for reference purposes. This thread was created on an older version of the flipcode forums, before the site closed in 2005. Please keep that in mind as you view this thread, as many of the topics and opinions may be outdated.

    January 19, 2001, 02:28 PM

    Maybe i'm blind, but you said that the demo is available. Just one question: where?

    Kurt Miller

    January 19, 2001, 02:38 PM

    The URL wasn't originally part of the description, but I added it somewhere in the middle for him. His site is here:


    January 19, 2001, 03:25 PM

    Looks very pretty. I'm always impressed when I dig out an old project and run it-- old code runs very fast these days. It's funny how standards have dropped. The tricks we used to make a 386 run in realtime would give 1000fps on a Pentium III. I'm also horrified by how much work it used to be to get anything done.


    Alexander Blach

    January 19, 2001, 04:03 PM

    very cool!


    January 19, 2001, 05:00 PM

    Looks really good considering it's software. Seems kinda dithered, I'm guessing you're not running in high-color mode? Your demo wouldn't run on my work machine, but then again nothing does, so I'm going to try again when I get home.

    Timothy Barnes

    January 19, 2001, 07:28 PM

    Ok, I am completely impressed. You are totally amazing. I love the fact that this is software rendered. It goes faster than UT does in HW, but then again, UT has more stuff on the screen. Still though, I really think you should keep this project going. The controls are nice, and it seems like a really good idea. Btw, did I say I love the controls? Nice work. Really nice....


    January 19, 2001, 08:10 PM

    Hmm...the demo didn't seem really that fast too me. Probably because i resized the window bigger than 100x100? I'm running a 500Mhz pentiumIII. Must of been one of those quick weekend hacks? Maybe my computer just sucks. I dunno. Anyways, liked the couple decent texts you have on your web-page. Later.


    January 19, 2001, 08:17 PM

    Werd - Lowlevel optimisation is da bomb - Well, I like it anyway :)

    It is often very suprising when people find a brute force method of something works "well enough" and that they don't go and try and optimise.

    Simple optimisations like - getting rid of branches with copying flags and using binary ops etc can make something a LOT more efficient. People have begun to forget what mischief large loops with unpredictable branches can do to long pipelined CPUs.

    Kurt Miller

    January 19, 2001, 08:48 PM

    Nice demo...
    It ran between 15 and 18 fps for me in a maximized window (1024x768x16); That's on a p2-350. Any plans to revive this project, or redo it with modern hardware support? Looks like it'd be a pretty cool game...


    January 19, 2001, 09:32 PM

    It runs around 50 fps in maximized window 800x600 using PIII450 192Mb Win2k. It's really cool ! The worst thing are that it is made in software. But it can't be hard to change some code to make work it with hardware acc as well. It's really worth it.


    January 19, 2001, 11:21 PM

    Okay, this is definitely impressive. Not because of the framerate (25fps on my Celeron 466 OCed to 525; I've seen engines which do more with less), but because it actually runs (and runs this fast) under Wine (Windows executable loader for Linux), which means it's actually cleanly-coded enough that it doesn't make a lot of bad assumptions about the layout of memory in Windows, which is what causes most things to not work under Wine.

    It does look pretty nice. Some of the textures on the dolphin's underside are a bit borked up, but it still looks neat, and the dolphin's movements are great. :) It's pretty annoying how the dolphin can keep on swimming through the air rather than falling back into the water like it should, but other than that, it IS quite fluid and nice-looking. The near polygon clipping could be better, though, as could the collision detection (dirt doesn't have an infinite static friction coefficient :) and for a landscape like that there's a lot of ways to push more polygons faster (especially where you're fillrate-bound like in software rendering)... but all in all, it's much more impressive than most of the stuff posted here. :)


    January 20, 2001, 02:19 AM

    cool demo...

    I like the 'atmosphere' in the demo, plus that fade into darkess helps hide the pop-up of course...


    January 20, 2001, 05:41 AM

    Now that's a nice software engine.. too bad it seems some people just can't see the beauty of software rendering. All they want is kewl bi-linear filtered perspective correct bumpmapped multilayered bezier-surfaces with metal reflections.. shame on you! ;-)

    (not that it couldn't be done in sw too ;-)

    Timothy Barnes

    January 20, 2001, 07:05 AM

    I don't think it's a good idea to keep this going using hardware acceleration. I think it's cool because it's software and it goes so damn fast. HW isn't as impressive and I bet it's more limited.


    January 20, 2001, 09:17 AM

    I heard that:
    "it's cool because it's software"
    "HW isn't impressive"

    I said that:
    No more comments


    January 20, 2001, 09:22 AM

    WHat I mean ?
    We can respect sowtware engine.
    But we can't say that software runs better than hardware.
    Hardware is cool, software is respectable(but not that cool, sooorry)


    January 22, 2001, 09:05 AM

    THanks for your comments. The challenge here was not to say : "look , it's software rendered !"
    I'm agree that software render is too boring.
    I like now program on T&L HW.
    But the content is always more important that container.


    January 28, 2001, 07:19 AM

    software rendering is only as good as you code it :P

    -- Codeman

    This thread contains 18 messages.
    Hosting by Solid Eight Studios, maker of PhotoTangler Collage Maker.