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

Submitted by David Paull, posted on March 13, 2002

Image Description, by David Paull

I would like to announce a new book called, "Programming Dynamic Character Animation" published by Charles River Media, which is available now. The book contains, and explains a new animation rendering engine that can effortlessly render skinned skeletal animation using Direct3D, or OpenGL. A wrapper is written for each API that you want to support, and the main animation engine loads the correct dll. Unreal Tournament has similar functionality in that they let you choose the "back end" renderer. This screen shot shows the benifit of this type of architecture. I wrote a new rendering dll that is abstract like "cartoon render", or in this case, ASCII render. The code for the main app remains the same. At runtime, the user selects the appropriate rendering dll.

Yes, this image is a cheat for the following 2 reasons :
  • 1) the bright areas of the source image are actually visible ~20%. Source image can be 3d realtime rendered, or 2d image.
  • 2) I have the saturation high so many of the characters are the @.
  • The 2d source for this particular ASCII image is from the cover to Stephen Kings Novel, "Desperation" Text character selection is shape, and intensity based. I havn't decided yet whether or not to release the ASCII dll. It was really to show how easy it is to modify the rendering. The book includes the Direct3D, and OpenGL dlls.

    The book includes source code for a Modeler, and an Animator, and the dll based rendering engine. It is designed to be a closed system, in that all model creation, editing, and animating code uses the game engine for "what you see is what you get" creation. Of course it can load models from MilkShape, and 3D Studio MAX as well. But the goal is for you to add modeling features yourself that 3DSMAX may, or may not have, like, for example, 3D painting multitextures on objects.

    I have been professionally employed as a software engineer in the entertainment industry for 10 years. I am currently employed as a software engineer at Atlantis Cyberspace. I am paid to "reverse engineer" games like Quake3, and UnrealTournament so they can be modified to run on custom stereovision hardware. Many of the things I learned during the reverse engineering process have ended up in this dll based Direct3D/OpenGL engine. I am going to provide updates of this engine to owners of the book for about a year. I plan on adding many features to the engine, including ANTI reverse engineering code, mainly to prevent cheating in any game that uses this engine.

    Sorry this post is all about the engine, but thats all im in it for... animating is for artists. Additional pictures can be found at the Tanzanite Software Homepage

    David Paull

    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.

    March 13, 2002, 02:18 PM

    Nice. Although you are selecting the characters by shape and intensity you are still blending it with the original picture?

    hdmx, fp

    Albert Sandberg

    March 13, 2002, 02:20 PM

    ahhhh... cool

    Michael on the coast

    March 13, 2002, 02:22 PM

    Hi David,

    I've had an order for your book since October and I'm counting the days until I actually get my hands on it. 8)

    Nice to see the kind of flexibility you designed for the tools. I'm sure that kind of fore-thought bodes well for the rest of the software.

    Looking forward to reading your book.



    March 13, 2002, 02:25 PM

    Isn't it illegal to reverse engineer Quake3 and Unreal Tournament?


    March 13, 2002, 02:32 PM

    First i want to say that the book sounds really cool. I have also always liked the ascii renders, looks good. Good job.

    "I am paid to "reverse engineer" games like Quake3, and UnrealTournament so they can be modified to run on custom stereovision hardware."

    Are you sure your not breaking the quake 3 Limited Use Software Licence Agreement by doing this?


    March 13, 2002, 02:35 PM

    Woopy Doopy what's that?

    Somehow it scares me ;)

    Have fun


    March 13, 2002, 02:37 PM

    NN N E E T
    N NN E E T


    March 13, 2002, 02:38 PM

    ok, so that didn't work too well


    March 13, 2002, 03:00 PM

    aren't non-uniformly spaced fonts a bitch? ;)


    March 13, 2002, 03:00 PM

    Fantastic image! Where is it coming from?

    Jari Komppa

    March 13, 2002, 03:02 PM

    Hm. I assume that the picture itself has little to do with the book?

    As for reverse engineering, it's not illegal to reverse engineer anything, whatever licenses say. It's especially not illegal to reverse engineer something in order to improve interoperability.

    Now then, under DMCA in the states it's practically illegal to breathe. Some say that DMCA itself is an illegal law.


    March 13, 2002, 03:31 PM

    Learn to read!

    - Marco

    El Wolf

    March 13, 2002, 03:31 PM

    this image is sick!!! you are a sick person!

    thanks for the book tips ;)

    Hiro Protagonist

    March 13, 2002, 03:32 PM

    Spooky picture, the book sounds cool. I think I will buy it.

    What is the DMCA?

    Kurt Miller

    March 13, 2002, 03:48 PM

    ">>What is the DMCA?"

    An "evil update" to copyright laws :D. Google it up and you'll find tons of material both for and against it.


    March 13, 2002, 04:18 PM


    Can I ask what the focus of your book is? Do you focus on the system you have developed or on the actual techniques used in creating a character animation system (like using morph targets for bodyparts with skeletal animation)?

    I only ask because I will shortly be working on a character animation system and would like a "pure" reference of techniques used rather than a specific implementation guide to them.

    Also, do you include a, now unfortuneately standard, "how to use matricesquarternionsvectorsshoelaces" section? Personally I hope not.



    March 13, 2002, 04:52 PM

    That's one heck of a spooky picture =D Looks like it'll jump out and stab me. I been watching to much chuky crap =)

    Anywho, best of luck with the new book. Looks interesting.

    Jan Niestadt

    March 13, 2002, 04:56 PM

    Did you mean this?

    NN N E E T
    N NN E E T


    March 13, 2002, 05:03 PM

    The image is incredable!
    As for the book, I too have been antisipating it. I can't wait to use the rendering engine on my next project. I am sure that the book will do great! Thanks!


    March 13, 2002, 05:48 PM

    I own this book, and find it to not be very comprehensive. The title of the book is a bit of a misnomer -- there's very little in it about actualy DYNAMIC animation, in the realtime sense of the word. It talks a little about skinning, but there is nothing about IK, FK, etc.. Interpolating keyframes is the sole focus, which in my mind is more of a static technique than dynamic. This book is probably ok if you just want to learn about keyframed skinned animation. A little disappointing coming from Charles River.


    March 13, 2002, 05:56 PM

    I had this book on my wish list for a long time...

    As well as this one: Realtime 3d Character Animation With Visual C++ by Nik Lever... Has somebody read this one? Can someone compare them? Thanks!

    - Rolando


    March 13, 2002, 06:41 PM

    I mean the character... not the way of rendering the image. Someone has to model this stuff, No?


    March 13, 2002, 07:57 PM

    Again, learn to read :). He says right in the description that the original picture comes from the cover of Stephen King's book "Desperation".


    March 13, 2002, 08:58 PM

    I also own the book, and I agree that it isnt "dynamic animation" It is Keyframed animation. The code on the CD also has some crash bugs, but the downloadable update fixes all of them. Anyway, the books engine code is a dream come true. I no longer have to mess with the differences between OpenGL, and DirectX, SWEET.



    March 14, 2002, 04:26 AM

    To sum it up, the entertainment industries latest attempts at shotting themselves in the foot and making sure to take a few of our toes with 'em.


    March 14, 2002, 05:27 AM

    I agree with hdmx in that this isn't so much ASCII rendered as ASCII overlayed. It would be nice to see the ASCII on it's own, without the source image in the background. That should look pretty cool in realtime.

    I think I remember someone writing a b&w ASCII renderer for Quake a while back.


    March 14, 2002, 06:27 AM

    Does the book speak about using .dll's in a 3D engine or about dynamic character animation ? You (and the book's web page on tanzanite) seem to attach more importance to the .dll subject than to the character animation.


    March 14, 2002, 06:44 AM

    I agree too.. I really dislike it when authors hype up their books on something that its not. Its a run-of-the-mill book that in my opinion is not worth buying if your slighly knowledgable. It misses the juicy topics that most people want to know about and talks about things that quite frankly can be found easily elsewhere. The code might tempt people but with all the opensource stuff about I really doubt it. I'm longing to see a book that really is worth its salt like the gems books for example ;-)

    Mathieu 'POĻ' HENRI

    March 14, 2002, 09:27 AM

    the ALAMBIK plugin has recently implemented ASCII rendering too,
    check it out @

    direct link to an exemple of ascii rendering ( the .tvs is 2kb big )

    Igor Kravtchenko

    March 14, 2002, 10:32 AM

    Impressive !
    Good work.

    This thread contains 33 messages.
    First Previous ( To view more messages, select a page: 0 1 ... out of 1) Next Last
    Hosting by Solid Eight Studios, maker of PhotoTangler Collage Maker.