I’d like to make a ultra realistic
environement with a lake surrounded with
mountains. The mountains would be generated with classic fractal models, and rendered using a polygon reduction algorithm, taking advantage of the OpenGL QUAD_STRIPS.
The lake part would require environement mapped bump mapping with huge textures, combined with refraction. Obviously, using the hardware for this second operation is impossible. It would require a lot of rendering to textures, without talking of the masks that would require 64MB of texture memory. So the best solution for this, in my opinion, is to copy the back buffer to a system memory frame buffer, render the lake, and copy back to video memory.
The great problem is that I want it to run on any machine, because everyone doesn’t has the money to buy a state of the art accelerator each 6 mounths. I know people who work on 300MHz processors and who have no hardware acceleration.
Any solution/suggest ?
Is OpenGL appropriated to do this ?
The more I think about it the more I think not, but I don’t know in fact.
It sounds as though you want to render some mountains in OpenGL, copy the image from the backbuffer to RAM, do some software raytracing on top of that, and copy it back to the backbuffer, is this correct?
I’m not sure what the best API would be, but I can guarantee that it won’t run in realtime (with the ability to change the camera orientation at more than a fraction of 1 fps) on your target platform.
I think you’ll either have to accept less than realtime rendering on your target platform, or ease off on the lake realism (AND raise the system specs to a card that supports hardware multitexturing and environment mapping, etc.)
The matter is that it was released 1 year ago. So now I have to plan to do better. But you must be right, i shouldn’t use OpenGL, but software rendering, so that it runs on all win32 machines.