Compartir a través de


Estrategias de dibujo de OpenGL multiproceso

GDI no admite varios subprocesos. Debe usar un contexto de dispositivo distinto y un contexto de representación distinto para cada subproceso. Esto tiende a limitar las ventajas de rendimiento de usar varios subprocesos con sistemas de procesador único que ejecutan aplicaciones OpenGL. Sin embargo, hay maneras de usar subprocesos con un único sistema de procesador para aumentar considerablemente el rendimiento. Por ejemplo, puede usar un subproceso independiente para pasar llamadas de representación de OpenGL al hardware 3D dedicado.

Los sistemas de multiprocesamiento simétricos (SMP) pueden beneficiarse enormemente del uso de varios subprocesos. Una estrategia obvia es usar un subproceso independiente para cada procesador para controlar la representación de OpenGL en ventanas independientes. Por ejemplo, en una aplicación de simulación de vuelo, podría usar procesadores y subprocesos independientes para representar las vistas frontales, traseras y laterales.

Un subproceso solo puede tener un contexto de representación activo actual. Al usar varios subprocesos y varios contextos de representación, debe tener cuidado de sincronizar su uso. Por ejemplo, use un subproceso solo para llamar a SwapBuffers después de que todos los subprocesos terminen de dibujar.