one of the advantages of my new ProxyNode (my custom irrlicht scene node), is the fact that it is an irrlicht scene node. That means regular skeletal animation is works with it. The picture below shows how bone parenting works with the proxy node. The first noticeable problem are the generated screen space normal map. it gives odd outlines on objects. Not a big problem visually, still looks nice. the other problem is the density of the slices . number of slices required for a nice looking surface are pretty high. i need at least 15 slices per irrlicht unit, 50 slices is the nicest looking surface which is pretty high and drops fps a lot. but still around 30 fps which is a good sign here, i haven’t done any geometry generating in shader. I will say it is a fair trade off for unlimited possible  contour, well texture size is the limit here.

when the slice density are too low,  the screen space normal becomes totally broken. because the normal will always facing to the camera, normals which are facing other direction only visible at the edge of the slices. i’m working on some kind of contour interpolating shader to fix this (WIP). if the contour interpolating shader is done, i can use a lot lower density for rendering and still have good result.

firstcharacterever3

Below is an example  of using low resolution texture for the head. without soft brushes when painting it in gimp, i can get a nice voxelated surface, pixel art form pixelated results. The heightmap are being represented nicely by the slices. for the more complex surfaces, like the axe and armor, all geometry are sticking out nicely. Well below is a rather ugly looking model, since i’m not baking any 3d model from blender like i usually do, just quickly edit some images from google.

pixelated

below, same character from different angle. lighting pretty much working. just some minor glitches from the lack of slice count.

pixelated2

next post, i will try my best to describe the primitive involved in this rendering, beside the proxy geometry of course, because already described in online articles.

Advertisements