Original Post
I am writing a procedural texture/sprite generator which should output a color, normal and height for each pixel and the plan is to use OpenGL for accelerating the rendering. I am currently using a triangle mesh for representing the texture with one vertex for each pixel because I thought it would be easy to transform parts of the mesh with all attributes. This approach seems to work well if you stick to the same mesh all the time but I want to be able to project other possibly deformed "submeshes" on top of a regular-spaced mesh and update the attributes accordingly. For example, first generate a stone texture with normals and all and then map it onto a half cylinder while keeping all the attributes. This, according to my deduction, boils down to rendering the triangles in the submesh onto this regular mesh/grid which is a lot similar to standard rasterization of triangles made by OpenGL but with an important difference: I can not find a way to extract the interpolated normals from the OpenGL rendering (Yes, I could use the height data but I want to use the original normals). So, I am just wondering if my thinking is approximately correct/sane and that I have one of the following alternatives: * Use another texture generation approach * Program a shader that retains the interpolated normals * Program/Use a software triangle renderer I have looked at Genetica and MaPZone as well but I would like to be able to generate textures within the game engine (currently written in Java). Any help and other suggestions would be greatly appreciated!