opengl problem on mac

I’m porting a OpenGL based program from PC to Mac. I use G3 with MacOS 8.6, glaux and OpenGL 1.0 SDK for mac. During my work, I found a little problem.

My model’s coorinates are often very big,
10^6 to 10^7 , and after set proper transform matrix, I use glVertex3f to draw them. The result is very good on PC with 3DLabs card, but on mac, the object flickers seriously or even cause the system to halt.

I guess mac opengl can’t receive too large numbers, so I scale them and found some of them display very well, while others become dim. How is this possible? The light isn’t changed at all.

The worst thing is when mac’s Opengl engine fails, it often halt the whole system. Can anyone help me?

Thank you.

Have you tried using glVertex3d() so that you are using doubles instead of floats? Also, does your application have enough RAM allocated to it to store the model in memmory correctly?


Perhaps the problem is caused by the fact that PowerPC compilers tend to use just 64 bits for doubles. Try using long doubles (ie 128 bits) if your compiler supports them.

If this is the answer, then the Mac OpenGL lib you are using also needs to be compiled with 128-bit long doubles.