InicioInfoOptimización de Assassin’s Creed Rogue para Intel HD Graphic

Optimización de Assassin’s Creed Rogue para Intel HD Graphic

Info7/15/2015


Assassin’s Creed * Rogue es el juego que Ubisoft acaba de lanzar al mercado. Lo crearon originalmente para consolas y fue portado a PC en marzo de 2015. La historia del juego gira en torno a de una “pieza faltante” entre varias Órdenes de Asesinos y tiene lugar a mediados del siglo XVIII. Al igual que Black Flag, contiene mucha exploración naval y terrestre. El protagonista es Shay Patrick Cormac, que da la espalda a la Orden de los Asesinos para seguir su propio camino.

Desde el comienzo, el equipo de desarrolladores decidió que el juego fuera compatible con una amplia variedad de plataformas de hardware, para que los fans del juego pudieran disfrutar de otra increíble aventura en el universo que tanto aprecian. Lograr que este nuevo juego tan visual pudiera utilizarse en todas las plataformas presentó nuevas dificultades al equipo encargado de la representación gráfica.

Uno de los objetivos principales fue lograr 30 fps firmes a 720p en PC equipadas con Intel ® HD Graphics 4000. Los procesadores gráficos de tercera generación de Intel ® se encuentran entre los más usados de la actualidad. Poder ejecutar los juegos más nuevos y exigentes en estas máquinas finas y livianas es magnífico, pero para ello es necesario hacer concesiones y optimizaciones considerables, de manera que los jugadores puedan tener 30 fps firmes.

“Los jugadores de Assassin’s Creed usan una gran variedad de hardware adaptado a sus necesidades: algunos tienen equipos enormes de escritorio, mientras que otros tienen máquinas portátiles ligeras.

No vamos a decidir nosotros el tipo de manejo de energía de los usuarios en sus equipos portátiles o Ultrabooks, por eso no ofreceremos compatibilidad oficial con estos equipos. Fue una decisión que debimos tomar para garantizar que los usuarios no tuvieran sorpresas desagradables.

Lo que sí queríamos era darles la posibilidad de disfrutar del juego ”, explicó Corneliu Vasiliu, el productor de Assassin’s Creed Rogue para PC.


Un comienzo complejo

En primer lugar, las pruebas mostraron que la velocidad de fotogramas era de entre 8 y 12, y el equipo empezó a buscar dónde hacer optimizaciones. Después de los experimentos iniciales y de trabajar en colaboración con ingenieros de Intel , resultó claro que no alcanzaría con optimizar: habría que eliminar por completo algunos pipelines de representación gráfica y algunos efectos posteriores. Para decidir qué eliminar, consideramos el costo y la influencia visual respecto de las expectativas de los propietarios de hardware.

Utilizamos Intel ® Graphics Frame Analyzer, que forma parte del kit de herramientas Intel® GPA , y detectamos los efectos y las características que más afectaban el rendimiento.

Las características que habilitamos son el tamaño de las texturas (incluso la reducción de las texturas por un factor de 4 casi no mejoró el rendimiento) y el filtrado anisotrópico.

Características y efectos que más afectan el rendimiento:

- Cantidad de llamadas a dibujo (hasta 3000 llamadas por fotograma)

- Mallas de subpíxeles (20.000 polígonos produjeron 10 píxeles)

- Complejidad de los sombreadores de píxeles (la operación de relleno de pantalla completa simple puede tardar hasta 500 microsegundos)


intelFigura 1. Assassin's Creed * Rogue configurado con la máxima calidad
assassins creedFigura 2. El color y los detalles se reducen con la configuración media
Figura 3. En la calidad baja, se nota que hay menos color, profundidad y detalles



Simplificación de sombras

La primera etapa de pipelines de representación gráfica fue la generación de sombras en cascada. Debido a las restricciones que impone el motor del juego , no pudimos reducir la cantidad de cascadas, por eso nos quedó solo una opción: dar a los usuarios la posibilidad de desactivar las sombras por completo. Aunque en las pruebas descubrimos que esta solución traía algunos problemas: el nivel de diseño cambiaba sustancialmente con esta opción de optimización.


Figura 4. Falta de detalle con las sombras desactivadas
Optimización de Assassin’s Creed Rogue para Intel HD GraphicFigura 5. Diseño original con las sombras activadas


Al tener en cuenta los cambios en el nivel de detalle, tuvimos que forzar la aparición de sombras en niveles que traían problemas incluso con la calidad más baja. Utilizamos la técnica de mapas de sombra única en cascada con un filtro de tolerancia de rendimiento para habilitarlos.


intelFigura 6. Al usar mapas de sombra simple, comienzan a aparecer los detalles con la calidad de gráficos más baja



Detalles de la malla del océano

La segunda optimización más importante fue ajustar el nivel de detalle de la malla del océano.

La única cuestión delicada en esta parte fue mantener la proporción de los triángulos para evitar que se observaran temblores en la lejanía.


Figura 7. El océano visto como malla de alta calidad
Figura 8. El océano visto como malla de calidad media
Figura 9. Vista del océano como malla de baja calidad



Optimización de mallas complejas

La tercera optimización fue simplificar los cálculos de vértices para las grandes mallas “falsas” (objetos distantes agrupados en una malla). En el juego no se usaron mapas normales, sino cálculos complejos de inversión de matriz espacial tangencial. Por ello, creamos nuevas permutaciones de sombreadores que dejaban de lado los mapas normales y simplificaban los cálculos de objetos distantes.

Partículas

Para las configuraciones más bajas, redujimos la cantidad de partículas sin que se perdiera la uniformidad de aspecto del juego ni la sensación general de las escenas.

Si reducíamos demasiado, íbamos a arruinar el diseño del nivel o del efecto, y si nos quedábamos cortos con la reducción, no íbamos a lograr mejoras de rendimiento.

Optimizaciones comunes

Algunas técnicas y efectos de representación se simplificaron en las configuraciones de menor exigencia gráfica:

- Los cálculos para la iluminación del ambiente no toman en cuenta la irradiación, la oclusión ambiental del mundo ni las sombras de las nubes.

- No hay calcos.

- No hay refracciones.

- Los reflejos del espacio de pantalla están desactivados.

- Algunos efectos posteriores utilizaban acceso por píxel de alta calidad en la reducción de escala, y filtrado gaussiano. La versión de baja calidad utiliza menos accesos.

- Algunos materiales utilizaban prueba alfa incluso cuando no tenían canal alfa. La nueva permutación resolvió esto.

- Se eliminaron dos rellenos de pantalla completa.


Problemas con los que nos enfrentamos

Todas estas optimizaciones causaron algunos inconvenientes:

- Agregar opciones de nivel de calidad aumentó la cantidad de permutaciones de sombreadores (de 24 a 192), así que compilarlas sobre la marcha produjo temblores y errores durante la transmisión por secuencias en segundo plano. Tuvimos que usar todas estas versiones de sombreadores optimizadas solo para la pasada por GBuffer (redujo la cantidad de sombreadores de 192 a 52).

- No pudimos lograr 30 fps firmes en Intel HD Graphics 4000 porque parte del contenido del juego era demasiado complejo y no se lo podía simplificar (afectaba la historia). Pero, de todas maneras, el juego funciona en esta clase de hardware.

- Descubrimos lo estricto del comportamiento de la función sincos de HLSL en Intel HD 4000; el argumento de la función se debe normalizar alrededor del intervalo [-pi; pi] para que no produzca resultados incorrectos.


Con la vista en el futuro

La tercera generación de procesadores Intel Core se lanzó en 2012. En los últimos dos años, Intel sacó al mercado dos nuevas generaciones de procesadores Core con procesadores de gráficos mejorados, incluidos los nuevos Iris™ y Iris™ Pro, que pueden incrementar en un factor de más de 2,4 el rendimiento en Intel HD Graphics 4000 y aumentar la eficiencia energética, ideal para que los usuarios puedan jugar más tiempo en equipos portátiles con batería.

La mejora del rendimiento ayuda a los desarrolladores de juegos a habilitar niveles de calidad gráfica más elevados y resoluciones superiores. El equipo de Assassin’s Creed Rogue trabajó con una resolución de 1366 x 786 en mente para la calidad media en Intel ® HD 4600 e Iris Graphics; para Iris Pro, la resolución se puede aumentar a 1600 x 900.


Configuración del sistema de prueba

Procesador Intel ® Core™ i5, CPU 3570 K, 4 GB RAM, 1600 MHz, Intel ® HD Graphics 4000, Windows* 8.1 de 64 bits.


Conclusión

Todas estas reducciones fueron justificadas porque no afectaron a los usuarios con hardware muy potente y nos dieron la posibilidad de que el juego funcionara en casi todos los aparatos compatibles con DirectX* 11. La base instalada dicta las reglas


Vínculos de consulta


Otros vínculos

Datos archivados del Taringa! original
2puntos
34,523visitas
0comentarios
Actividad nueva en Posteamelo
0puntos
4visitas
0comentarios
Dar puntos:

Dejá tu comentario

0/2000

Autor del Post

I
Usuario
Puntos0
Posts14
Ver perfil →
PosteameloArchivo Histórico de Taringa! (2004-2017). Preservando la inteligencia colectiva de la internet hispanohablante.

CONTACTO

18 de Septiembre 455, Casilla 52

Chillán, Región de Ñuble, Chile

Solo correo postal

© 2026 Posteamelo.com. No afiliado con Taringa! ni sus sucesores.

Contenido preservado con fines históricos y culturales.