Publicidad
May 22, 2013, 10:08:40 PM *
Welcome, Guest. Please login or register.
Did you miss your activation email?
  Show Posts
Pages: [1] 2 3 4 5 6 ... 184
1  Videojuegos / PC y emuladores / Re: Arquitectura de un Juego y porqué 3DMark no es referencia. (Parte I) on: December 04, 2012, 02:38:51 AM
Y siempre que paso con el demo del vikingo???


Pues ya tiene un buen eso, fue para un concurso, no entré a tiempo jaja! aunque me sirvió mucho para ver cómo NO se deben hacer las cosas, de hecho, a la fecha cada que hago un motorcillo para un determinado juego o aplicación encuentro mejores formas de hacerlo, experiencia supongo, pero es divertido. El último demo que hice de técnicas de rendering:

Pixellity - std::engine - Game Tech Demo


Ya tiene más de un año.
2  Hardware / Overclock y enfriamiento / Re: Tu equipo actual (late 2012) on: December 04, 2012, 02:32:53 AM
Pues esque sí cambian las prioridades, de igual forma si le metiera a la PC todo lo que le he invertido al carro, traería algo mejor que una alienware x(.
3  Hardware / Overclock y enfriamiento / Re: Tu equipo actual (late 2012) on: December 03, 2012, 04:04:43 AM
Vaya que ya no tantos tienen high end tal como lo pensé, ahora voy a hacer mi actualización, voy por un i3770k y un sli de 670gtx, me molesta que juego poco y cuando juego se ponga lento, es algo que no soporto, por eso quiero un buen equipo que dure unos años y me deje jugar agusto.

Juegos como el Crysis 2 en ultra y el BF3 en ultra ponen lento a mi Sli de 460gtx, el proce creo que sí aguanta, pero de paso lo actualizo de una vez.
4  Videojuegos / PC y emuladores / Re: Arquitectura de un Juego y porqué 3DMark no es referencia. (Parte I) on: December 03, 2012, 04:01:02 AM
Hola

Sí, ya de unos añosa, al inicio por hobbie, luego trabajo y ahora trabajo más en serio en Gameloft :)

A ver si mañana me da chance de poner la parte 2.

Saludos!
5  Hardware / Benchmarks / Re: HWCult SuperPi Team Comentarios! on: December 03, 2012, 02:58:59 AM
La afinidad sólo da más prioridad al proceso sobre el mismo core, y sí ayuda.
6  General / Comercio / Re: Alguien fayuqea todavia? on: December 02, 2012, 09:24:05 AM
Haha ya sé, pues, tiene varios meses que no me daba una vuelta por acá.
7  General / Comercio / Re: Alguien fayuqea todavia? on: December 02, 2012, 07:19:16 AM
LoL lo bueno de tener la frontera al lado, sólo pago los impuestos de amazon y me sale al costo completamente, llega a un PO Box y se acabó jaja.

PD- No, no hago favores, ni me dedico ni me dedicaré a eso estando aca.
8  Videojuegos / PC y emuladores / Arquitectura de un Juego y porqué 3DMark no es referencia. (Parte I) on: December 02, 2012, 06:57:09 AM
Hola de nuevo, tengo algo de tiempo y hay varias cosas que me hubiera gustado saber hace 10 años y ahora tengo el conocimiento y me gustaría compartirlo. Sé que varios tienen la idea y otros cuantos saben a lo que me refiero cuando hablo sobre la diferencia entre un juego y las 3DMark. Lo haré en varias partes, ya que puede ser cansado de leer todo y me llevará tiempo explicar todo lo que quiero decir :)

Ya había mencionado KaEL (viejo OC Mex) la noción de Benchmark Sintético, argumentando que tales Benchmarks no reflejan el comportamiento de tu PC ante un juego, y tiene toda la razón por los puntos que mencionaré. Hablaré en términos generales de la arquitectura de un juego, ya que todos tienen el mismo modelo, con algunas diferencias pero al final hacen el mismo trabajo, algunos con mayor eficiencia que otros.

Un juego es finalmente un programa, compilado ya sea en msvcc (Compilador de Microsoft), icc (Compilador de Intel) ó Mingw/gcc (Compilador GNU), que son hechos en c++ en su totalidad, al menos los de PC, en el caso de iOs, la plataforma a pesar de ser nativa, utiliza Objective c, pero puede usar c++. En el caso de Android es muy diferente, la plataforma es una revoltura, el kernel es Linux, sin embargo toda la GUI y los procesos son hechos en Dalvik (aka Java), por lo que los juegos no corren en código nativo, incluso algunos son totalmente hechos en Java (Un asco de lenguaje en términos de eficiencia de cómputo), aunque existe JNI, que basicamente te permite programar en c++ tu librería dinámica (bilioteca para los mamones) y linkearla desde Java, pero finalmente todo pasa por Dalvik, por ello los juegos de Android, bajo ninguna circunstancia correrán mejor que en iOS.

Los juegos al ser programas, tienen el mismo comportamiento, nacen, hacen un trabajo y mueren. El trabajo que hace el juego es bastante más complejo que los programas comunes, ya que tienen lo que se conoce como "game loop", que es un ciclo "infinito", en el cual cada iteración, se actualiza el input, la lógica, la física y por último el dibujado.

Los juegos dependen de los recursos en su totalidad, ya que sería poco práctico que en el código se especificara manualmente las posiciones de vértices, etc. El juego carga los siguientes tipos de recursos:

-Meshes: Modelos 3D, 3 ejes por cara, mejor conocido como triángulos. Se dividen en estáticos y dinámicos. Los dinámicos contienen información de animación, que son basicamente muchas matrices. El formato en el que lo guardan por lo general es propietario, pero aún así es algún tipo de xml, ya sea un xml en binario, o como mencioné su propio formato, por ello si abres los modelos no entenderás nada. Los modelos guardan posición, normales, coordenadas de textura y ahora ya es a fuerza, tangente y binormal (para normal map). Los dinámicos también guardan información de huesos.

-Texturas: Indispensables, es lo que más espacio ocupa junto con el audio, vienen muchos sets para diferentes resoluciones y por lo general tienen alguna compresión (DXT/ATTIC/ETC1/POWERTC) para ahorrar espacio, por ejemplo, una imagen sin compresión en tiempo real, ya sea una compresa offline como jpg, va a pesar en memoria (en el juego) lo mismo que si fuera bmp, por ello utilizan compresión en tiempo real, que de tener una imagen 8 bits por canal (rgba = 32 bits) se reduce hasta 4 para rgb. Aunque claro siempre hay un costo, y es la pérdida de información. Algunos algoritmos conservan mejor los detalles que otros.

-Fuentes: No faltan los textos en todo juego, cargan ttf, por ello salen suaves y escalables a cualquier resolución.

-Shaders: El corazón del rendering actual, todo tiene que dibujarse, el medio son los shaders. Vertex y Pixel shaders, el Vertex transforma el vértice de 3D a 2D que es la posición final en 2D en la pantalla y el Pixel shader "llena" de pixeles todo lo que hay entre los triángulos, haciendo operaciones POR PIXEL, por ello se necesita mucho hardware para que corra decente, sólo hagan cálculos, para dibujar tu pantalla a 1080 son 2 073 600 pixeles, más los que no ves en pantalla por "redraw" como objetos detrás de paredes (que se puede optimizar, le llaman culling). Ahora existen también los geometry shaders, que te permtien crear triángulos en tiempo real (tessellation).

-Audio: No hay mucho que decir aquí, por lo general son wavs, ya que no tienen compresión y para el CPU resulta más fácil de procesar, si es ogg o mp3, hay que hacer descompresión por muestra y sale algo caro si tienes más de 40 sonidos simultáneos. Al menos en móviles, es preferible usar wavs, en PC se tiene hardware dedicado a la descompresión y es menos problema.

-Scripts/IA: Siempre se necesita el guión, y son finalmente instrucciones para el motor: "Carga modelo A, pónlo en posición B, rótalo x grados en Y y dibújalo en el segundo C". Cada quien lo hace diferente, pero pocos juegos tienen hardcodeado en el binario el comportamiento del juego. Motores como el Unreal basan su comportamiento 100% en Scripts, aunque ellos basicamente lo hicieron para poder darte una licencia simplificada y no regalarte el source, de tal modo puedes hacer tu juego sin haber conocido el source (algo de lo cual estoy 100% en contra).

Todos los recursos se comprimen y les aseguro que es en zip todo el tiempo, si no pueden abrir los archivos es porque a veces les vuelan la cabecera (lo primero que busca winrar/winzip/7z) para que no sepas que es zip, pero al final lo es. Rara vez tienen su formato de compresión propio, tienen que ser muy mamones para hacerlo, pero llega a pasar. Otra es que le dan una pasada con MD5 o algún otro tipo de encriptación.

En la siguiente parte hablaré del game loop, porqué es tan difícil que un juego aproveche todos los cores y la diferecia fundamental entre un benchmark sintético y un juego.

Saludos.
9  Hardware / Overclock y enfriamiento / Tu equipo actual (late 2012) on: December 02, 2012, 06:20:29 AM
Hola a todos, ya tiene buen tiempo que no me metía, mucho trabajo, poca vida...

Voy a actualizar mi rig y veo que mucha gente ya no tiene el interés de antes en cuanto a OC y creo que puede ser por las siguientes razones:

1-High-End Worthless: La diferencia  en precio entre un proce/vidcard/mobo gama media a alta no justifica esa delta en rendimiento, menos ahora que abusan con los precios (999USD c'mon..)

2-I don't need that much: Muchas de las aplicaciones, incluido el OS ya no son tan demandantes como lo eran hace una década, o mejor dicho, el poder de cómputo es mucho mayor que es difícil sacarle provecho, incluso ni los juegos hacen un uso al 100% ni del CPU ni del GPU.

3-Dilema Gamer: Antes no tenía trabajo y era difícil conseguir las piezas, ahora tengo el dinero pero no tengo tiempo, o tengo esposa, o tengo familia, he perdido el gusto por algún motivo similar. (no es mi caso, pero es una posibilidad en muchos)

De cualquier modo, abro éste tema para hacer un tipo poll:

¿Qué equipo tienes?

Pondré el mío actual:

Proce: Core i7 860 Stock (el clima de Mexicali hace imposible querer hacer OC...)
Mobo: Evga P55
Video: Sli de Geforce 460GTX
RAM: 6Gb 1333GHZ ddr3

Lo demás (PSU/HDD/etc) es como secundario, no estoy evaluando cuánto dinero tienes, sino qué PC te interesa tener.

Saludos.
10  Hardware / Benchmarks / Re: HWCult SuperPi Team Comentarios! on: December 02, 2012, 06:07:45 AM
Vaya que ha decaído el OC y los Benchies jaja, sólo como sugerencia, el Super PI es memory intensive y va grabando en disco duro los dígitos para cada iteración, por lo que usar un ram drive puede ayudarles mucho. Por otro lado es bien sabido que es un single thread, hagan la prueba de abrir 2 instancias de Supér Pi y comenzar una y luego cerrarla y dejar la segunda, da más oportunidad de que la segunda instancia la tenga radicando en el siguiente core (probablemente menos cargado) y les entregue un mejor resultado.

Saludos.
11  Videojuegos / PC y emuladores / Re: Bethesda tiene hambre: DOOM 3 BFG Edition on: May 31, 2012, 07:13:05 PM
Soy fan de id, sin embargo debo reconocer que no vale la pena este producto.
12  General / Comercio / Re: ¿Y el sr Teutón dónde quedó? on: May 30, 2012, 02:10:18 AM
Va Gracias, buenas referencias. Saludos.
13  General / Noticias / Re: Capturas de pantalla del demo del nuevo Unreal Egine 4 on: May 30, 2012, 01:58:34 AM
Puro filtro, DOF, Bloom, Lens Flare, etc...

Siempre Unreal le sube al máximo el Bloom y ya se ver "bien", pero en cuanto a su sistema de iluminación, es muy común, a diferencia de otros Engines como el Frostbite 2.
14  General / Noticias / Re: AMD dice los usuarios ya tienen suficiente poder de procesamiento on: May 30, 2012, 12:48:22 AM
Pues, depende el punto de vista, ahora que he estado trabajando muy de cerca con la arquitectura ARM, veo que sí es un gran poder computacional el que tienen las "peces de escritorio", aún cuando la mayoría de las aplicaciones no hagan uso de todos los cores.

Desde el punto de vista de "para el usuario" tiene razón, por lo general un usuario "normal" no utiliza todo el poder de su CPU, si en un momento dado afirma que su PC es lenta, se debe al disco duro, que es hasta ahora el dispositivo que menos desempeño ha ganado en comparación del resto del hardware, siguen siendo lentos.

Un usuario que requiere más poder de cómputo es aquél que entra en la siguientes categorías:

1-Renders (Diseñadores)
2-Codecs (Producción)
3-Compilación distribuída (Programadores)
4-Gamers
5-Etc

La gran mayoría de los arriba mencionados hacen uso eficiente de la concurrencia y es donde entra el verdadero poder de las arquitecturas actuales, que como bien han mencionado ya, la barrera tecnológica no permite meter más transistores en el mismo espacio, la opción es más cores, por el momento.

La concurrencia es difícil y complicada desde el punto de vista del programador, no todas las aplicaciones se prestan para ser concurrentes y hasta ahora con c++ 11, el nuevo estándar, esta preparado de forma nativa para ello, con atómicas por ejemplo. Se espera que en un futuro el tasking sea rey, pero no aún.

Ahora, si le preguntas a un gamer, es ofensivo que digan que se tiene suficiente poder de procesamiento, porque seamos realistas, nunca será suficiente. Si son analíticos, ahora los juegos son GPU bounded, en su gran mayoría, salvo casos como Starcraft 2, y es donde las tarjetas de video ganan, desde el inicio de los shaders han sido concurrentes. De tal modo que mi punto personal de vista es, odio a los discos duros, por ser lentos y en el caso de estádo sólido, son muy caros aún como para reemplazar todo mi rig con ellos.

15  General / Comercio / ¿Y el sr Teutón dónde quedó? on: May 28, 2012, 10:07:33 PM
Buenas Culteros

Alguien ha hecho alguna compra con el Alemán reciente o que pueda dar referencias de igual forma, reciente sobre él, busqué su perfíl aquí, pero, ya no aparece como miembro, no sé que haya pasado ahí.

Cualquier comentario, positivo o negativo es bien aceptado, si tú mismo Alemán, estás leyendo, porfa me avisas!

Saludos!
Pages: [1] 2 3 4 5 6 ... 184
MySQL PHP Powered by SMF 1.1.13 | SMF © 2006-2011, Simple Machines LLC XHTML 1.0 CSS
Page created in 0.099 seconds with 19 queries.
Publicidad