Las imágenes que acompañan este post no son fotografías, y tampoco son renderizados estáticos. Se trata de escenarios generados en Unreal Engine a resolución 4K, y el hecho de que te lo digamos es probablemente lo único que te haga distinguirlos de un vídeo real, porque son perfectos.
|
etiquetas: unreal engine , paisajes
www.youtube.com/watch?v=zQwyuig8UX0
Es resulton en un principio pero necesita mucho trabajo para llevarlo a una escena compleja y que aguante la calidad y rendimiento por que las mayas generadas por defecto son de miles o millones de poligonos.
Por eso también enseñan un cacho, por que es una porción fotografiada, no puedes generar un terreno así detallado con esa calidad.
El tio se a limitado a fotografiar un cacho de terreno, e importarlo al unreal engine.
www.youtube.com/watch?v=zQwyuig8UX0
Es resulton en un principio pero necesita mucho trabajo para llevarlo a una escena compleja y que aguante la calidad y rendimiento por que las mayas generadas por defecto son de miles o millones de poligonos.
Por eso también enseñan un cacho, por que es una porción fotografiada, no puedes generar un terreno así detallado con esa calidad.
El tio se a limitado a fotografiar un cacho de terreno, e importarlo al unreal engine.
forohardware.com/forumdisplay.php/85-PC-por-Precio
También en The Vanishing of Ethan Carter (que ya es más viejo y UE3) y ambos funcionan sin problemas, aunque no sé si con tanta calidad, pero no veo problema en su aplicación real a "gran escala" en juegos totalmente "funcionales".
Esos ejemplos no son "100%" pero vamos, que de aquí a nada no veo problema para que se extienda a todo.
Esas no, y a esos me refiero, no esta aplicado a nada usable salvo una escena "contenida".
No he dicho que la fotogrametría no valga, digo que esas escenas son a pesar que diga el articulo que no, son fotografias (en 3D eso si), sin nada más.
Un terreno que es lo que muestra en todas esas escenas es otro tema bastante más complicado. No puedes usar un terreno con una malla de esa complejidad.
Es bastante dificil trasladar las imperfecciones de la naturaleza si no es con fotogrametría, y las imperfecciones es lo que te da el realismo, y la perfección algo que se ve sintético por lo que la fotogrametría es una magnifica opción.
Pero tiene muchas limitaciones debido a como dije la malla generada y la excesiva potencia gráfica necesaria para renderizar algo en tiempo real (imágenes estáticas es bastante más funcional), algunas se pueden suplir trabajando el objeto, pero otras no, los objetos grandes por mucho que los trabajes... y un terreno... como que no.
Luego hay multitud de objetos que es más rapido y practico hacerlos manualmente que generados con fotogrametría y luego reducirlos en poligonos, lo bueno de la fotogrametría en muchos casos solo es la textura realista que te proporciona.
Las escenas que vemos no me extrañaría que estuviera por el millón de polígonos o más, y son trozitos pequeños de la escena. No es usable esa definición en nada en realtime, ni es algo meritorio en mi opinión capturar eso e importarlo al UE4.
Algo como Kite Demo de UE4 que tambien usan fotogrametria si es un trabajo currado y meritorio y aun así necesitas un bicho de grafica, un CPU de la leche y unas cuantas horas para cargarlo
www.youtube.com/watch?v=7cXHE6LBTqA
A ver si esta peña me ayuda a ver la lulz
Luego la gente se queja de lo malo que es técnicamente el RAGE, que permite la virguería de tener una única textura gigantesca multiresolución cargada en tiempo real usando una forma bastante eficiente de streaming pintada sin cortes ni fisuras para los escenarios (en principio los juegos normalmente usan muchísimas texturas de distintos tamaños que componen y distribuyen) manteniendo una tasa de fps estable le eches lo que le eches y no se dan cuenta de que sus problemas posiblemente sean limitaciones de ancho de banda o de proceso de las consolas o poco tiempo de optimización. Para que nos hagamos una idea, descomprimir un vídeo 8K (7680 × 4320 pixels) es la muerte para cualquier procesador actual si lo hacemos usando CPU (habrá codecs específicos en las gráficas más actuales, pero no estoy seguro). El rage técnicamente puede trabajar con texturas de hasta 128000x1298000 pixels (texturas que incluyen las capas de color, transparencias, especular, sombreado, normales, mapas de desplazamiento, etc), tomándolas como embaldosados, tiles o cachos, claro está, pero adaptándolas directamente a la configuración y disposición de memoria de cada máquina de manera automática.
Posiblemente la industria haya tirado o tire por un camino similar, si no a nivel de engine si a nivel de edición (que al usuario le parezca que trabaja sobre un único lienzo). Y la fotogrametría parece que va a ser una pieza clave para "portar" imágenes o texturas reales a esos lienzos, integrando no sólo la apariencia visual sino también la malla 3d dentro del proceso, acelerando enormemente la parte de diseño y modelado de escenas.
La CV2 tendrá que venir con ella y ahí empezar a despegar la RV, si no consiguen tener algo suficientemente funcional en ese sentido para la CV2/VIVE2 seria un gran FAIL.
La diferencia es bastante sustancial, la parte técnica es que renderizas en 3 capas (o 3 veces), primero renderizas a muy baja resolución la escena completa, luego a una calidad media unos cuantos centímetros y a una calidad alta un par de centímetros dados por la posición de tu ojo/eye tracking, que es en realidad lo que vemos a alta resolución. El area foveal/fovea.
A pesar de renderizar 3 veces la escena el rendimiento es bastante mayor.
La dificultad (software) estriba en la unión (blend) de esas dos capas al ser de diferentes resoluciones que dea el pego, sobretodo la capa de alta resolución con la media, aunque creo que ya hay cosas que suficientemente buenas.
Nvidia ofrecia algo parecido, no me viene ahora el nombre para renderizar los lados a menos calidad, reducir el coste/tiempo de renderizado, el problema es que si mirabas de reojo pues veras los bordes borrosos al no ir controlado con nada tipo eye tracking, pero es raro ver a los lados y daba bastante el pego. De todas formas apenas ganabas por que el area para que no note es bastante pequeña, el borde unos muy pocos centímetros
Pero hablo sin saber mucho del tema, tu me dices si estoy en lo cierto o no.
Luego hay mil trucos para suplir la escasa potencia gráfica, como el uso de los normals maps que dan apariencia detallada a los objetos, pero siguen siendo trucos/técnicas, tienes un personaje muy detallado y currado que impresiona pero al final para usarlo lo tienes que reducir el 75% de poligonos y usar un normal map para esos detalles por que no puedes hacer un juego con demasiados objetos/personajes high polys. Y da el pego pero no es lo mismo. Y en RV peor en el caso de los normal maps.
No conozco el RAGE, pero lo que hablas me suena a un TEXTURE ATLAS, que es útil más que nada para reducir drawcalls que ahora con DX12 se vuelve menos relevante. Y es algo que puede utilizar cualquier engine. (la descompresión de texturas va por CPU si y si que 8k es un dolor de huevos)
La gente se queja y quiere escenas realistas detalladas pero luego se queja de que necesitan una gráfica de 600 pavos para que vaya a 30 o 50fps. Y dice, joder es que no esta optimizado! la optimizaciones quitando lo de reducir drawcalls, se basan en cargarte la calidad, reducir definición texturas, polígonos y quitar objetos, menos luces y un largo etc. Son dos cosas incompatibles.
La cuestión es también las prisas que tengan en rentabilizar las inversiones en RV y que consigan por supuesto que esas técnicas como dices funcionen suficientemente bien para el comprador final.
Lidl, la calidad no es cara.
Pensé que te referías a donde mira la cámara en vez de a donde miran nuestros ojos en la vida real.
Un video de ejemplo www.youtube.com/watch?v=GKR8tM28NnQ
Eh, que no digo que no sea impresionante el detalle de las fotos, pero no quita el hecho de que cada vez se lo curran menos.
Claro que si. Espera que le digo a mi padre que hipoteque la casa para comprarme un ordenador de 4500 euros para poder jugar a juegos ultra realistas. Y de paso voy llamando a Fenosa para que monte una sub-estación eléctrica al lado de mi casa para alimentar mi ordenador.
Que si venga ala.
Lo que si, es que la fotogrametria llevado al mundo de los videojuegos y no a una simple escena, en el que hay que tratar el objeto para que sea asequible para renderizar en 3D tiene trabajo, dependiendo el objeto mucho. Hay objetos que compensa hacerlos a mano (claro que el resultado realista no sera el mismo). No creo que se pueda decir que se lo curren menos de forma general.
Vuelvo a decirlo y no me cansaré, en los 80 a pesar del limitado hardware que se tenía, los juegos estaban mejores optimizados que ahora, no sólo a nivel puro de código sino de uso de los recursos del sistema.
Salu2
1) Actualmente y desde hace unos años (desde que existe hardware programable y shaders) se aplican técnicas de trazado de rayos para generar ciertos efectos gráficos. Sin trazado de rayos no habría normal maps (que se basan precisamente en modificar cómo se ve una textura dependiendo del ángulo de visualización y los puntos de luz), ni shadow maps (hay que trazar desde donde viene la luz, el perímetro del objeto y dónde se proyecta la sombra para dibujarla adecuadamente), ni god rays, ni reflexión/refracción, ni... otra cosa es que se aplique para todos los objetos en todos los casos en toda la escena completa como si se hace en un render profesional. De hecho, hay suficiente potencia como para mover el quake wars usando raytracing puro y duro para todo el escenario desde 2008: www.youtube.com/watch?v=mtHDSG2wNho (pondría el mismo experimento de años anteriores con juegos anteriores como quake3, pero no lucen tan bien).
2) Efectivamente, hay mil y un trucos matemáticos o lógicos para disminuír la carga de proceso y poder dedicar cpu y gpu a cosas más importantes. Si hay dos formas de hacer lo mismo (o de que a nuestros ojos le parezca igual), siempre se va a tratar de elegir la más rápida. Si hay pérdida de calidad, se hará cuando el ojo esté ocupado con otras cosas. Lo que dices de los mapas de normales es ¿para qué estar metiendo polígonos a tutuplén y tan pequeños que apenas se ven si puedes aplicar técnicas de texturizado que dan la impresión de volumen a elementos planos y puedes simplificar la geometría de un objeto engañando al ojo para que parezca más complejo de lo que es? Y por cierto, esto también es muy usado en cine, no es sólo cosa de juegos de ordenador, sólo que de manera más controlada y conservadora. De hecho, se ha avanzado y ahora aparte de añadir texturas "con volumen aparente" existe la teselación, donde si que se añaden polígonos para dar apariencia de volumen (menos que en el modelo original, dependiendo de lo cerca que nos encontremos, etc).
3) ID empezó a usarlo como megatexture en quake wars como evolución del motor de doom3. Luego lo mejoró para rage y pasó a llamarse virtual texture. Otras compañías desarrollaron la idea posteriormente (que tampoco creo que fuera novedosa más allá de la industria del videojuego). Texture atlas no lo conozco y no sé si es algo anterior, cohetaneo o posterior, pero si, la idea es la misma.
4) Efectivamente tienes parte de razón, pero… » ver todo el comentario
En fin, a ver que nos trae este año.
Pobres consoleros. ¿Titan? sobrevalorada.
Yo creo que antes, el proximo año veremos los primeros bocetos de la CV2 y en 2 años tendremos la CV2, no van a esperar 4 años para sacar otra versión. Además ya lo han dicho que quieren seguir el ritmo, cosa logica por que es un mercado en constante evolución.
Si sacaran con eye tracking ni idea, el HMD FOVE lleva, y oculus tendrá algo seguro, si estara maduro para la CV2 ni idea.
El precio no creo que baje mucho, algo supongo que si, se abarataran algunas cosas pero vendrá nuevas tecnologías como el eye tracking y mejores paneles que tendran su coste, la cuestión es que disfrutarla si viene con eye tracking no necesitaras un bicho de ordenador entonces sera más asequible en general.
PPD: Ahora sale el id tech 6 usado por el nuevo doom que básicamente es pulir y avanzar en lo que ha hecho carmack y todo el mundo alucinando y alegrándose de que se fuera de id...
1) He dicho que se utilizan técnicas derivadas del raytracing pero más conservadoras, no se por que te has saltado esa parte.
Los videos de wolfestein 3D y supongo que quake (este ultimo no lo vi como lo hicieron) se utilizaron granjas de ordenadores.
Es imposible actualmente renderizar raytracing para algo en real-time con una grafica de consumo.
Estudios cinematográficos utilizan raytracing y tienen gráficas especiales con "Raytracing Units" y tardas horas en generar un segundo.
Te lo repito: Como dije y no me equivoco es imposible utilizar raytracing para algo de consumo aun con las tarjetas más caras del mercado.
2) Hay una diferencia notable en utilizar high poly y normal maps. Normals maps da el pego pero la diferencia se nota.
La tesselation es una mierda, genera una malla bastante poco efectiva desde el punto de vista del rendimiento, te compensa poner el high poly, es util por que generas volumen de una textura sin necesidad de un high poly pero por rendimiento haces el high poly con una malla mejor y que no tenga polígonos innecesarios a tutiple Me gusta más el parallax mapping aunque tambien es costoso.
3) Pues ni idea no se exactamente del tema ese.
4) Te equivocas, el código especializado gráfico lo da dependiendo la plataforma DirectX y opengl y nadie salvo muy determinadas cosa lo toca. Por lo demás perdona pero se ve que no sabes de lo que hablas con optimizar y el tema consolas->PC
Cuando lo pasan a PC utilizan mejores luces, mejores texturas y pueden enriquecer más los escenarios de multitud de maneras. Y aun lo podrían hacer mejor en todo pero claro tiene que tirar en una gráfica media decentemente y baja de aquella manera, entonces tienen que "optimizarlo" para ellas que no es más que meter el hachazo en calidad o limitarlo
Como dije quitando drawcalls (que es por el tema del CPU) no hay ni una sola optimización que se haga que no sea para cargarse la calidad gráfica. NI UNA. Y te RETO a decirme una.
Optimizacion = Cargarse/Reducir calidad.
Sencillamente
Este tipo de tecnologías sólo serán usadas en la práctica cuando salga suficientemente barato como para justificar las horas que hay que emplear (para lo cual hay que pagar mucha pasta a mucha gente que lo deje todo perfecto). En la práctica, los juegos que más éxito tienen no tienen ni de coña que estar a este nivel de trabajo.
Tampoco da pie nada más que determinado tipo de juegos, lo cual lo va a limitar muy rápido en cuanto a ideas por muy espectacular que llegue a ser.
Hoy día los juegos son una cuestión del departamento artístico y el realismo tiene cada vez menos peso independientemente de lo que piensen los entusiastas del 3D y los gráficos.
La rentabilidad de todo el curro necesario cada vez está siendo más difícil de justificar, ya que equipos de desarrolladores mucho más pequeños y usando técnicas 2D más o menos tradicionales sacan mucha más pasta de la inversión inicial que los "blockbusters", además con mucho menos riesgo y tiempo de desarrollo.
Ejecutar un programa que calcule la luz por píxel teniendo en cuenta múltiples capas de texturas (hechas para emular el resultado de un raytracer en algunos aspectos) no es raytracing.
Para hacer raytracing tendrías que calcular todos los rayos de la escena y hacerlos rebotar por todas las superficies reflectivas, lo cual se iría de madre muy rápidamente. En tiempo real no se pueden andar calculando trayectorias de rayos, más que nada porque es un problema O(n^x), con lo que habría que tener varios órdenes de magnitud de aumento de potencia para notar una mejoría perceptible. De ahí que se recurra a trucos para que lo parezca sin serlo.
Si la gente está esperando este doom es por mil cosas diferentes a las innovaciones tecnológicas que pueda tener. De mano, que parece hecho por un equipo que parece saber lo que hace en cuanto a gameplay.
Doom es un juego que en su día fue una revolución tecnológica, pero no fue eso lo que lo hizo icónico ni un juego de éxito.
¿la interacción es dificil?
hombre yo lo gozo con mi dk2+leap motion interactuando, es una experiencia tremenda aun estando como estamos en el nacimiento de la RV.
Lo más limitado son los FPS por que produce mareos, pero aun así el concepto de jugar a FPS no sera algo que habra que excluir, si no que igual es una gran baza en el futuro, solo hay que cambiar el chip y que a FPS no vas a jugar sentado y necesitaras un espacio limitado más grande para jugar de pie y moverte.