› Foros › Retro y descatalogado › Consolas clásicas
Sexy MotherFucker escribió:Te contesto mejor en este hilo:radorn escribió:Sexy MotherFucker escribió:De todas formas el original en Nintendo 64 también tiene errores que parecen de emulación, como por ejemplo las pixelaciones que se producen en ciertas texturas de vez en cuando, como las de la charca en la caseta del pescador de Lake Hylia en cuanto la cámara por defecto se desvía hacia un ángulo supuestamente muerto en la que entiende el jugador no debería estar viendo nada mientras está pescando, así que supongo que la consola desactiva el filtro o algo.
Esto sería mas bien para el hilo de detalles, pero bueno:
Creo que se de que hablas, y pasa en todos los juegos.
Yo deduzco que es una limitacion del filtro de texturas, pero no tengo ni idea de qué lo provoca. Alguna explicacion matematica/computacional tiene que tener. En PilotWings 64, con sus escenarios tan grandes con polígonos gigantescos, a los que, te puedes acercar un monton, especialmente con el jetpack, o aterrizando en cualquier superficie con el girocoptero pero sin decelerar hasta detenerse para que no se acabe el juego, puedes facilmente ver este curioso d/efecto.
Como ya digo, no sé por qué pasa, pero me ha recordado algo sobre el filtrado de texturas de la N64, o, al menos, el de muchos microcódigos, y que, en ciertos juegos que permiten acercarse de forma particular a algunos objetos, puede hasta apreciarse a simple vista.
Lo que hace el filtro de texturas es generar mediante filtro bilinear (lo de trilinear viene por la interpolacion entre mip-maps, que es como una tercera dimension) 32texels interpolados a partir de cada texel original.
De hecho, en GoldenEye, para mapear una textura a un triangulo, las coordenadas UV que se usan en cada vertice para decir que punto de la textura le corresponde, son enteros de 16bit con signo, y tiene una precision de 32subdivisiones de texel. O sea. si quieres que tu vertice empiece en el texel 1,1 de la textura, tus coordenadas UV tendrán que ser 32,32 (pero en hexadecimal o binario, claro) aunque, con el "sangrado" que causa el filtro bilineal, siempre es mejor añadir otro medio pixel para excluir la parte que se funde con el pixel anterior, asi que añade otros 16 (medio pixel).
De esta manera tenemos que, asumiendo que este patron sea universal, una textura en N64 puede repetirse a lo largo de un unico triangulo, hasta 2048 texels (65536 subtexels interpolados) de punta a punta con las coordenadas UV 0,0 en el centro. La cantidad de veces que una tetxtura en concreto se pueda repetir ya depende del tamaño de la textura en si. Con una de 32x32, la textura puede repetirse 64 veces de punta a punta (32 en direcion negativa y 32 en positiva, y no estoy hablando de efecto espejo, si no de meras repeticiones). una de 64x64, solo 32, una de 128, 16 veces.
Volviendo a lo del zoom, en ciertos juegos, y creo que turok 1 y 2 son dos ejemplos donde se puede apreciar, si te acercas lentamente a ciertos objetos atravesables, como algunos arbusos o plantas, puedes llegar a poner la camara tan cerca de un poligono que llegas a ver los sub-texels interpolados, que ya son meros pixeles no filtrados.
Si alguien puede sacar una imagen mejor, porque yo en este momento...
No se si esto realmente tiene que ver con esa extraña distorsion que se produce al ver algunos poligonos desde ciertos angulos, pero creo que alguna relacion ha de tener.
Pero por ejemplo eso es algo que no se ve NUNCA en Super Mario 64, el cual según Miyamoto emplea TLMMI. ¿Tendrá algo que ver el aplicar bilineal a "palo seco" o TLMMI, que se le dará mejor a la consola esto último?.
¿O nos estamos comiendo la cabeza de más y simplemente nos encontramos ante casos de códigos mal pulidos?
Sexy MotherFucker escribió:Supongo que tendrá sitios en los que irá desactivado como tú dices, pero que se usa a mí me consta tanto por declaraciones del diseñador como por experiencia propia.
Super Mario 64 sí emplea esa técnica (TLMMI), el resto de los juegos no, aunque puede ser implementada fácilmente en las últimas etapas de desarrollo.
Sogun escribió:fijaos en la hierba después de que escale la pared de piedras y sobre todo cuando se acerca a la piedra chismosa. Esa superficie de hierba hace cosas raras y siempre parece que el filtro se activa y desactiva solo.
jeisonpsp escribió:Yo recuerdo en la época de ps2 que en las revistas algunos desarrolladores se quejaban de los problemas para programar, si embargo en la época con n64 nunca leí sobre los problemas como la memoria RAM o los cuellos de botella que tiene la consola.
O estoy equivocado?
O nintendo los amenazaba?
Naitguolf escribió:jeisonpsp escribió:Yo recuerdo en la época de ps2 que en las revistas algunos desarrolladores se quejaban de los problemas para programar, si embargo en la época con n64 nunca leí sobre los problemas como la memoria RAM o los cuellos de botella que tiene la consola.
O estoy equivocado?
O nintendo los amenazaba?
Tampoco lo escucharías en la NES o en la SNES en su momento, y sin embargo, la gente sufre para sacar cositas homebrew en la SNES....
jeisonpsp escribió:Yo recuerdo en la época de ps2 que en las revistas algunos desarrolladores se quejaban de los problemas para programar, si embargo en la época con n64 nunca leí sobre los problemas como la memoria RAM o los cuellos de botella que tiene la consola.
O estoy equivocado?
O nintendo los amenazaba?
jeisonpsp escribió:Yo recuerdo en la época de ps2 que en las revistas algunos desarrolladores se quejaban de los problemas para programar, si embargo en la época con n64 nunca leí sobre los problemas como la memoria RAM o los cuellos de botella que tiene la consola.
O estoy equivocado?
O nintendo los amenazaba?
Diskover escribió:jeisonpsp escribió:Yo recuerdo en la época de ps2 que en las revistas algunos desarrolladores se quejaban de los problemas para programar, si embargo en la época con n64 nunca leí sobre los problemas como la memoria RAM o los cuellos de botella que tiene la consola.
O estoy equivocado?
O nintendo los amenazaba?
Kojima les contestó algo así como: difícil era programar en la NES. Os quejáis de vicio.
BMBx64 escribió:@Flash-Original
Mola
La idea sería un menú donde puedes ver las carátulas y que corre a 60fps (acelerado por RDP), incluso con fundidos alpha al abrir menú o con redimensiones, eso es posible en el estado que dejé la librería, pero el código de krikzz no me queda claro si es privado o hay que pedirlo.
BMBx64 escribió:La idea sería un menú donde puedes ver las carátulas y que corre a 60fps (acelerado por RDP), incluso con fundidos alpha al abrir menú o con redimensiones, eso es posible en el estado que dejé la librería, pero el código de krikzz no me queda claro si es privado o hay que pedirlo.
BMBx64 escribió:Se podría hacer una interfaz en una capa que fuera adaptable a cualquier tipo de flash.
He visto que el menú de 64drive es bastante ágil, pero no he encontrado que tenga carátulas, las hay? Las flash chinorris no usan el mismo tipo de menú o muy parecido al del ED64 original?
En todo caso necesitaría una fuente dónde estuvieran todas las portadas de los juegos de N64.
Y luego pensar como enfrentar el tema, establecer un tamaño máximo para cada imagen, cargarlas de 10 en 10, o en un menú de desplazamiento continuo usando el joystick, es decir buscar la forma más ágil.
Identificar los juegos al vuelo o bien actualizar un listado, habría que mirarlo y aún así en emulador nada de esto se podría hacer, es decir los accesos a SD.
Sogun escribió:StarCraft 64 me parece que también funciona a 640x480 durante la partida. Y FIFA 99 tiene un modo de Super Alta Resolución similar al del Vigilante 8 que se ve de maravilla pero es del todo injugable.
BMBx64 dijo que el juego con menor resolución parecía ser el V-Rally 99 pero no pudo sacar capturas. También mencionó que el Bettle Adventure Racing era de los que menos resolución tenía, pero no dio números.
Lo más tocho sería esta demo de Marshallgs en la que en la descripción del vídeo se podía descargar una captura del frame-buffer. Afortunadamente aún la conservo y tiene un tamaño descomunal de 800x600. No sé si es correcto ni qué pretendía.
cen64 -multithread pifdata.bin %1 test.z64