¿Qué significa exactamente que Mesa es una implementación de OpenGL? ¿Los controladores de mi tarjeta Nvidia no implementan todas las funciones de OpenGL, etc.? Entonces, dado que los controladores de mi tarjeta Nvidia están tomando llamadas OpenGL y entregándolas al hardware, ¿qué hace exactamente Mesa? ¿Alguien puede aclarar la distinción entre Mesa y los conductores?¿En qué se diferencia Mesa de los controladores OpenGL?
Respuesta
¿Alguien puede aclarar la distinción entre Mesa y los controladores?
Mesa proporciona la interfaz OpenGL del lado del cliente para los controladores de GPU de código abierto basados en la arquitectura DRI2/DRM. O en otras palabras: también es parte de un controlador.
Si tiene instalados los controladores propietarios de NVidia o AMD, no necesita Mesa. Si desea utilizar los controladores de código abierto (nouveau, radeon, radeonhd, intel), necesita Mesa.
creo LinuxQuestions.org geeman2.0 miembro del foro proporciona una buena explicación para este asunto:
OpenGL y Mesa en realidad no son dos opciones separadas, sino Mesa es un tipo específico de OpenGL.
OpenGL es simplemente una interfaz que define un conjunto estándar de funciones necesarias para dibujar gráficos en 3D. No involucra el código real que hace que estas funciones sucedan, solo especifica cómo se llaman las funciones y qué se supone que deben hacer.
Una implementación de OpenGL proporciona el código real que ejecuta los métodos especificados por el estándar OpenGL. Sin una implementación instalada, no puede ejecutar ningún programa abierto.
Mesa es solo una de las muchas implementaciones de OpenGL, y es la más estándar incluida en las distribuciones de Linux. Hace todo el trabajo en software, por lo que es lento.
Cuando instala los controladores Nvidia o ATI para una tarjeta gráfica sofisticada, estos controladores proporcionan una nueva implementación OpenGL que se ejecuta en la tarjeta gráfica. Esta implementación tomaría el lugar de la implementación de Mesa, pero sigue siendo una implementación de OpenGL. Es decir, todos los controladores Mesa/ATI/NVidia implementan el mismo conjunto de funciones, simplemente lo hacen de diferentes maneras, y todos son OpenGL.
- 1. juego de mesa iPhone: OpenGL ES o CoreGraphics?
- 2. ¿Los controladores de rieles son multiproceso? Thread.exclusive en los controladores
- 3. Comprender los controladores en MVC
- 4. Diferencia en iOS OpenGL ES y Android OpenGL ES
- 5. ¿Los controladores de eventos en JavaScript se llaman en orden?
- 6. cómo codificar los controladores?
- 7. mesa virtual/mesa de despacho
- 8. Diferencia entre OpenGL ES 2.0 y OpenGL 4
- 9. Cuándo conectar los controladores de eventos asp.net
- 10. ¿En qué se diferencia MegaStore de BigTable?
- 11. ¿Por qué los controladores en ASP.NET MVC se basan en nombres?
- 12. Diferencia entre OpenGL 3.xy 4.x?
- 13. ¿Por qué necesitamos mesa virtual?
- 14. ¿Se procesan los controladores de eventos de forma asíncrona?
- 15. ¿En qué se diferencia engine.io de socket.io?
- 16. ¿Cómo se prueban los shaders de OpenGL escritos en GLSL?
- 17. ¿Qué hace glLoadIdentity() en OpenGL?
- 18. ¿Cuál es la diferencia entre los eventos con controladores de delegados y los que no?
- 19. Significado del atributo de ruta en los controladores en web.config
- 20. ¿Los controladores de eventos no están seguros?
- 21. mesa GeoIP unirse con mesa de IP en MySQL
- 22. ¿Por qué los controladores Asp.net web api no se derivan de IController
- 23. Encontrar todos los controladores en la aplicación
- 24. En los controladores asincrónicos ASP.NET MVC 2, ¿los filtros de acción se ejecutan de forma asíncrona?
- 25. ¿Cómo se calcula el FPS en OpenGL?
- 26. ¿por qué mi aplicación se bloquea? UITable y controladores
- 27. ¿Por qué los colores de los píxeles no son correctos en OpenGL ES 2.0 en Android?
- 28. ¿Por qué hay un glMatrixMode en OpenGL?
- 29. Diferencia entre controladores de eventos y devoluciones de llamada
- 30. Zend Framework 2: Modificar detalles de layout.pthml en los controladores