Cómo mejorar la velocidad de carrera de 3dmax
Para los usuarios de 3DS Max, es muy importante elegir una tarjeta aceleradora de gráficos adecuada, porque el modelado, la edición de animaciones y la vista previa son casi todas operaciones con uso intensivo de gráficos. 3DS Max admite una variedad de estándares de visualización de gráficos tridimensionales. Es casi el único software de gráficos profesional que admite OpenGL y Direct3D. Al mismo tiempo, 3DS Max también proporciona un software completo Heidi para sistemas sin aceleración 3D. Además de esto, 3DS Max también permite a los fabricantes de tarjetas gráficas proporcionar controladores dedicados desarrollados para 3DS Max.
La última versión de 3DS Max es 3DS Max4. 3DS Max4 es la misma que la versión anterior y admite cuatro interfaces de controlador: Heidi/Software Z-Buffer, OpenGL, Direct3D y un controlador personalizado de terceros (Custom). ). OpenGL y Direct3D son adecuados para la mayoría de las tarjetas gráficas cuyo hardware admite OpenGL y Direct3D. Algunas tarjetas gráficas profesionales han lanzado sus propios controladores optimizados específicamente para 3DS Max con el fin de obtener un mejor rendimiento y más funciones.
La gran diferencia entre 3DS Max4 y versiones anteriores es que 3DS Max4 es compatible con el nuevo DirectX 8 de Microsoft. Como nueva API, DirectX8 ha realizado grandes mejoras en el procesamiento 3D. En DirectX8, el proceso de procesamiento 3D es muy diferente del método de procesamiento original.
Una vez que la CPU completa el preprocesamiento del modelo 3D, enviará los datos de vértice del modelo al canal de procesamiento 3D para su procesamiento. Para los procesadores gráficos modernos, la mayoría tiene unidades de procesamiento de fuente de luz y geometría completa. Por lo tanto, los datos de vértice generados por la CPU generalmente se entregan directamente al procesamiento de gráficos para su procesamiento. El procesador de gráficos primero realiza cálculos de transformación de coordenadas (Transformación) basados en cambios en el punto de vista o movimiento de objetos para obtener nuevos valores de coordenadas, y luego calcula el valor de iluminación (Iluminación) en cada vértice según la fuente de luz. Después de completar estos dos pasos, los datos de los vértices se construyen en triángulos en la unidad de Configuración y se rasterizan, convirtiendo los datos tridimensionales expresados matemáticamente en valores de píxeles específicos. El siguiente paso es colorear los píxeles y mapear la textura. Finalmente, después de procesar un cuadro, los datos procesados se colocan en el búfer de cuadros para su visualización. En todo este proceso de procesamiento 3D, una vez que la CPU completa el trabajo de procesamiento y los datos se envían a la tubería de procesamiento 3D, el programa de aplicación ya no puede intervenir en el proceso de procesamiento 3D y se completarán las funciones específicas que el hardware puede completar. Una vez completado el diseño del hardware, lo que no se puede cambiar, las aplicaciones solo se pueden aplicar a aquellas funciones y efectos 3D que tiene el hardware. La situación anterior ha cambiado mucho después del lanzamiento de DirectX8. Con respecto al procesamiento 3D en DirectX8, lo más importante en Direct3D es usar Vertex Shader para reemplazar las unidades de transformación e iluminación originales, y usar Pixel Shader para reemplazar el trabajo de las unidades de píxeles y textura.
Vertex Shader y Pixel Shader no son sólo cambios de nombre. Lo más importante es que son unidades completamente programables por los desarrolladores. En Vertex Shader y Pixel Shader, los desarrolladores de software pueden utilizar hasta 128 instrucciones cada uno para completar varias operaciones complejas.
En Vertex Shader, además de completar operaciones regulares como transformación de coordenadas, cálculo de iluminación, etc., también puede realizar otras operaciones, como cambiar las coordenadas de los vértices durante el procesamiento para deformar el objeto. También puede manejar funciones como simulación de esqueleto, animación de fotogramas clave y residuos visuales (detrás de objetos en movimiento de alta velocidad). Estos efectos se parecen mucho a las funciones relacionadas en 3DS Max, pero todo esto se hace con soporte completo para DirectX8. El procesador es completamente procesado por hardware en tiempo real. Pixel Shader también es una poderosa unidad de procesamiento que puede completar varios efectos que antes eran difíciles de lograr completamente mediante hardware, como sombras realistas, Blinn Bump Mapping con mapeo ambiental, anti-aliasing de alta calidad, etc. .
Tanto Vertex Shader como Pixel Shader de DirectX8 requieren soporte de hardware para funcionar. Por lo tanto, cuando 3DS Max4 usa Direct3D como interfaz 3D, la tarjeta gráfica debe poder brindar soporte para DirectX8. Actualmente, entre las tarjetas gráficas profesionales, sólo Gloria DCC/Quadro DCC de ELSA/Nvidia son tarjetas gráficas que pueden soportar totalmente las funciones DirectX8 en hardware. Sin embargo, aunque ELSA Synergy III/2000 y Gloria II/III no cumplen completamente con los requisitos de DirectX8 en términos de hardware, sus controladores para Windows 9X/Windows 2000 brindan soporte para Direct3D, por lo que se pueden usar normalmente, pero simplemente no es así. Tan eficiente como Gloria DCC.
3DS Max proporciona más efectos de visualización de gráficos, por lo que tiene requisitos más altos en la tarjeta gráfica. No solo Direct3D, también tiene requisitos más altos en OpenGL. Según los requisitos de Discreet, la tarjeta gráfica OpenGL debe admitir las siguientes funciones para garantizar un funcionamiento normal:
GL_KTX_buffer_region (planos duales)
GL_WIN_swap_hint (renderizado de escena incremental)
Formatos de píxeles PFD_SWAP_COPY
GL_EXT_bgra (formato de textura/píxel BGRA)
Sin embargo, este es solo el requisito más básico. De hecho, si desea poder mostrar efectos perfectos, necesita soporte para tarjeta gráfica Más funciones. Las muestras de 3DS Max4 proporcionan algunas escenas que muestran nuevas características, que pueden usarse para medir el efecto de visualización y la velocidad de la tarjeta gráfica. Por ejemplo, hay una escena Viewport-Dragon, que muestra un dragón que escupe fuego escupiendo fuego. La visualización normal de esta escena debería mostrar las texturas del fuego, los árboles y el suelo, la luz roja reflejada en el dragón al escupir fuego, etc., pero algunas tarjetas gráficas o soporte de hardware tienen efectos limitados o puede haber problemas con los controladores. /p>
Para aquellos que a menudo necesitan diseñar escenas complejas, el rendimiento es otro aspecto importante al que prestar atención. 3DS Max4 admite muchas funciones de visualización y activar o desactivar una determinada función afectará seriamente el rendimiento. Por ejemplo, el controlador Maxtreme especialmente desarrollado por ELSA para 3DS Max puede cambiar o ajustar fácilmente ciertas características (como transparencia, suavizado, diferentes efectos de filtrado de texturas, etc.) para obtener una velocidad más rápida o mejores efectos de visualización.
Para las personas que usan con frecuencia el modo de estructura alámbrica, les recomiendo encarecidamente que utilicen la optimización de franjas triangulares (Triangle Strips). Esta opción se puede ver en la opción Usar franjas triangulares en el panel de ajuste de ELSA Maxtreme y algunas otras tarjetas gráficas como 3DLabs After. Si el controlador 5110 está instalado, este modo se adopta de forma predeterminada y no se puede cambiar. Cuando Usar franja de triángulos está activado, puede reducir en gran medida la cantidad de vértices transferidos al realizar una optimización de franja en los triángulos del modelo, mejorando así en gran medida el rendimiento en el modo de estructura alámbrica. Según las pruebas realizadas en ELSA Gloria III, el rendimiento de la pantalla en modo de estructura alámbrica se puede mejorar varias veces después de activar la optimización Triangle Strip. Después de usar rayas triangulares, el principal inconveniente es que el modelo está representado por triángulos y es necesario mostrar más líneas en el modo de estructura alámbrica, lo que hace que la visualización sea más confusa. Sin embargo, en comparación con la mejora de rendimiento que aporta, creo que este precio todavía vale la pena.
Entre las tarjetas gráficas profesionales del mercado, qué tarjetas gráficas pueden obtener un mejor rendimiento en 3DSMax4 puede ser una preocupación para todos. Respecto al problema, hice una pequeña prueba. Las tarjetas gráficas son actualmente la 3DLabs WildCat 5110 de gama más alta, ELSA Gloria III y el prototipo R200 de FireGL 8800 que ATI aún no ha lanzado oficialmente. La plataforma de prueba es un sistema que utiliza Xeons duales de 1,5 GHz y RDRAM de 512 M. Ejecuté la escena Viewport-Dragon que viene con 3DS Max4 para ver cómo funcionan estas tarjetas gráficas. Primero instalé 3DS Max4, ejecuté esta escena y luego actualicé 3DS Max a 4.2 para ver si la velocidad de ejecución cambiaba. En la prueba, Gloria III de ELSA parecía normal. En las versiones 4 y 4.2, el rendimiento de OpenGL era básicamente de alrededor de 19 FPS (cuadros por segundo), y la imagen era completamente normal cuando se usaba OpenGL. en 4.0 En la versión de 3DS Max, el fuego arrojado por el dragón aparece como cuadrados rojos, lo que obviamente se debe a que no admite transparencia
Sin embargo, 3DLabs también notó este problema, por lo que después de instalar la optimización 5110 para 3DS Max4 Después del programa, la pantalla aparece normal. Sin embargo, cuando actualicé a la versión 4.2, el rendimiento del 5110 se invirtió. En OpenGL, su imagen era básicamente normal (el problema menor era que había líneas horizontales transparentes en los troncos de los árboles), mientras usaba el controlador personalizado de 3DS Max4. No puede mostrar llamas normales. Parece que este controlador no es compatible con 3DS Max4.2. La velocidad de 5110 al ejecutar esta escena en las versiones 4.0 y 4.2 es de 8-9 FPS, que es solo menor que la de Gloria III. Supongo que todavía hay algunos lugares en el controlador que no son perfectos, o algunos efectos se calculan mediante software, lo que afecta el rendimiento general; el R200 de ATI es una versión anterior, por lo que no puede ingresar a 3DS Max usando OpenGL y la velocidad es. Aproximadamente 10 FPS después de usar Direct3D, esta velocidad sigue siendo buena. La prueba anterior es una prueba aproximada, pero también puede dar una idea aproximada del rendimiento de algunas tarjetas gráficas profesionales actuales cuando se ejecuta 3DS Max.