Cartesian Creatures


Playing with vertex shader and texture lookup functionnality.

Responses (16)

  1. Faggot25 says:

    Think blues, country, funk, jazz, reggae, rock here. ,

  2. thyo says:

    starts with a black screen for me :-(
    got a nvidia card and a working isight,
    but somehow it doesnt detect any marker ids
    can somebody help a noob out plz?
    greetings thyo

  3. alx says:

    Just wondering, Sanch; did you ever manage to generate reliable normals for lighting this one?

    I’ve been working on something similar. I’ve managed to create a tangent-space normal map from the heightmap/displacement image, as Angelo Pesce suggests above, but I’m not sure how to use this for lighting the distorted mesh.

    Any tips?


  4. Holy moly, I really like those objects. Love the way you’ve got multiple colours going on!

  5. alx says:

    Please note:

    the code in the post above is specific to Apple’s Quartz Composer software and is written in a language that is a subset of GLSL, so may not be of interest to HLSL shader coders.

    Or it may… ;)


  6. alx says:


    this is really impressive stuff.
    I’ve been trying to do something similar in GLSL, using a program called Quartz Composer on the Mac. I’ve got somewhere near
    (see screenshots at ),
    but I’m having a few problems with the mesh ending up with big holes in it. I’ve also found it impossible to create symmetrical distortions, even though I’ve mirrored the displacement map textureso that the edges are identical.

    Do you mind if I ask what equation you’re using to turn the mesh into a sphere? I think my problem is that the mesh is being distorted into a sphere in the wrong way…

    Sorry to bug you,


  7. mintfresh says:

    omg this is amazing, visual appeal with mathematics?!

    i thought it was out there somewhere and here it is wow..

    what and how do you do this?? i am really, reaaaallly interested!


  8. sanch says:

    hey thanks Angelo , the normal maps work quite good but the problem is that the map doesn´t fit with the mesh…
    It works for simple mesh , but as sonn as the mesh is getting more complex , the normal are getting unprecise and doesn´t fit with the mesh anymore … i don´t really understand why

  9. Angelo Pesce says:

    Computing the normal should be quite easy. You have a texture map that is an heightfield. You can compute the derivative of this heightfield: dx@pixel(x,y)=pixel(x,y)-pixel(x+1,y) and the same for dy. Now you got a normal for each pixel of the texturemap (the z coord of the normal is easy z^2=x^2+y^2), and you can use it as a displacement of the normal at the sphere vertex (beware of the space you’re working on). And if you precompute the map normals then what you have is simply a normalmap, and this is not surprising after all ;)

  10. lenny says:

    wow, wonderful

  11. u7angel says:

    oh man, i wish i had a nvidia card to see this live in action. any way to make it work for ati cards too ? what’s the reason that ati cards don’t like this kind of stuff ?

  12. sanch says:

    If you speak about the zip file with the shader it work for me !?

  13. pensone says:

    excuse me….. is it a broken link???

    your stuff is great!!

Leave a Reply