Aspectos del motor

Estado y evolución del proyecto.

Notapor Bergil » Jue Nov 08, 2007 23:05

El habla esta de los jóvenes... Deduzco que te ha servido, mjurado2...
Avatar de Usuario
Bergil
Moderador
Moderador
 
Mensajes: 2117
Registrado: Vie Ago 10, 2007 20:14
Ubicación: Madrid, Villa y Corte

Notapor mjurado2 » Jue Nov 08, 2007 23:43

Si muchisimo, toy aprendiendo tela de cosas en esa pagina je je je.

Por cierto si casi 30 son pocos, como se entere mi sobrino que tiene 9... :lol:
mjurado2
Maestro espía
Maestro espía
 
Mensajes: 133
Registrado: Dom Oct 28, 2007 00:05
Ubicación: Lucena

Notapor Bergil » Vie Nov 09, 2007 00:25

M'he perdío, aunque supongo que casi treinta es tu edad... :?:
Avatar de Usuario
Bergil
Moderador
Moderador
 
Mensajes: 2117
Registrado: Vie Ago 10, 2007 20:14
Ubicación: Madrid, Villa y Corte

Notapor linutux » Vie Nov 09, 2007 01:39

Eso te convertiria en el benjamin del foro :D
Avatar de Usuario
linutux
Héroe
Héroe
 
Mensajes: 332
Registrado: Mié Ago 15, 2007 23:47

Notapor Bergil » Vie Nov 09, 2007 02:11

Es que hay que tener una cierta edad para recordar aquello de que cualquiera tiempo pasado fue mejor... :cry:
Avatar de Usuario
Bergil
Moderador
Moderador
 
Mensajes: 2117
Registrado: Vie Ago 10, 2007 20:14
Ubicación: Madrid, Villa y Corte

Notapor mjurado2 » Vie Nov 09, 2007 16:38

JO que ilu soy el mas jupi :roll:
mjurado2
Maestro espía
Maestro espía
 
Mensajes: 133
Registrado: Dom Oct 28, 2007 00:05
Ubicación: Lucena

Notapor Xavi » Vie Nov 09, 2007 17:57

Yo en 29, o sea...
Avatar de Usuario
Xavi
Emperador
Emperador
 
Mensajes: 724
Registrado: Vie Ago 10, 2007 17:30
Ubicación: Barcelona

Notapor Bergil » Vie Nov 09, 2007 21:36

Yo diez más... :cry:
Avatar de Usuario
Bergil
Moderador
Moderador
 
Mensajes: 2117
Registrado: Vie Ago 10, 2007 20:14
Ubicación: Madrid, Villa y Corte

Notapor Jorge » Vie Nov 09, 2007 21:39

Caray, ni que tener 39 años signifique ser un vejestorio. Seguro que estás hecho un chaval. Además, lo importante es el espíritu. Mi espíritu me dice que tengo 16. :D
Avatar de Usuario
Jorge
Administrador
Administrador
 
Mensajes: 1563
Registrado: Vie Ago 10, 2007 17:30
Ubicación: Valdepeñas

Notapor mjurado2 » Vie Nov 09, 2007 22:54

Pues por lo menos el tuyo tiene dos cifras, porque mi mujer dice que a veces parece que tengo 7 años :D
mjurado2
Maestro espía
Maestro espía
 
Mensajes: 133
Registrado: Dom Oct 28, 2007 00:05
Ubicación: Lucena

Notapor Jorge » Sab Nov 10, 2007 01:14

¿La tuya también? :D
Avatar de Usuario
Jorge
Administrador
Administrador
 
Mensajes: 1563
Registrado: Vie Ago 10, 2007 17:30
Ubicación: Valdepeñas

Notapor Bergil » Sab Nov 10, 2007 05:14

Yo debo andar por tres con nueve... :D
Años, no mujeres... :lol:
Avatar de Usuario
Bergil
Moderador
Moderador
 
Mensajes: 2117
Registrado: Vie Ago 10, 2007 20:14
Ubicación: Madrid, Villa y Corte

Notapor Jorge » Sab Nov 10, 2007 14:49

Sigo destapando las entrañas del motor isométrico. En esta ocasión y como ya anuncié voy a centrarme en el ya famoso mediador.

Diagrama de clases "El mediador".
Imagen

El mediador almacena las listas de los elementos rejilla y libres. Una sala sabéis que está formada por una rejilla o cuadrícula (atributo structure) donde cada celdilla está ocupa por una loseta y una lista de elementos rejilla. Es decir, en una sala de 8x7 hay 56 losetas y 56 listas de elementos rejilla que almacenan esos elementos ordenados por su altura (en función de su coordenada Z).

Imagen

En este ejemplo todas las listas rejilla están vacías excepto la correspondiente a la celda (0,0) que tiene el telepuerto. Si encima del telepuerto hubiese algún otro elemento rejilla pertenecería a su misma lista.

La lista de elementos libres, por contra, es única. En el ejemplo de arriba estaría formada por las rejas, el conejo, Head y la puerta. Las puertas, en realidad, son tres elementos libres: las jambas y el dintel.

Centrándome ya en el medidor, puede verse cómo está ligado a una sala, es más no puede construirse sin ella. Tiene las siguientes operaciones:

1. markItemsForMasking, se usan cuando un elemento cambia de posición, de imagen o desaparece. Después de alguno de estos cambios el elemento solicita al mediador que marque para enmascarar a los elementos que pudieran verse visto afectados por los cambios.

2. markItemsForShady, ídem sólo que el mediador marca elementos para sombrear.

3. castShadow, usada por los componentes de la sala (elementos y losetas) para pedir al mediador la lista de elementos que los pueda estar sombreando.

4. mask, usada por un elemento libre para pedir al mediador la lista de elementos a partir de los cuáles construir su máscara. El enmascaramiento es hacer parte de la imagen de un elemento transparente de tal manera que evite el solapamiento con las imágenes de otros elementos. Por ejemplo, en la siguiente imagen Head ha tenido que ser enmascarado tal y como aparece en la parte derecha:

Imagen

5. findCollision, indica si un elemento determinado a chocado con otros.

6. findHighestZ, se usa durante la colocación inicial de elementos en las salas. La variable Z de un elemento puede tener el valor Top que indica que se colocará en la posición más alta de una posible pila de elementos.

7. insertItem y removeItem añaden y eliminan elementos de la sala, respectivamente.

8. addTransparency y removeTransparency añaden y eliminan elementos libres de la tabla de transparencias. La tabla de transparencias, gestionada por un objeto de la clase TransparencyManager, simplemente almacena cuántos elementos hay con un determinado porcentaje de transparencia (desde 0 hasta 100).

9. Las tres últimas operaciones gestionan la pila de colisiones: pushCollision, añade el identificador de un elemento a la pila; clearCollisionStack, vacía la pila; y, isCollisionStackEmpty indica si hay colisiones almacenadas en un momento determinado.

Vale, ahora os toca a vosotros. ¿Alguna pregunta? :)
Avatar de Usuario
Jorge
Administrador
Administrador
 
Mensajes: 1563
Registrado: Vie Ago 10, 2007 17:30
Ubicación: Valdepeñas

Notapor Xavi » Sab Nov 10, 2007 14:52

Me he quedado sorprendido. Buena explicación. El tema de las máscaras son fundamentales para ocultar zonas u objetos. fantastico
Avatar de Usuario
Xavi
Emperador
Emperador
 
Mensajes: 724
Registrado: Vie Ago 10, 2007 17:30
Ubicación: Barcelona

Notapor Bergil » Sab Nov 10, 2007 15:20

Jorge escribió:Sigo destapando las entrañas del motor isométrico. En esta ocasión y como ya anuncié voy a centrarme en el ya famoso mediador.


Jopé, con lo bien que nos lo estábamos pasando, y viene el pesao éste...

Jorge escribió:Diagrama de clases "El mediador".


Huy qué lío...

Jorge escribió:4. mask, usada por un elemento libre para pedir al mediador la lista de elementos a partir de los cuáles construir su máscara. El enmascaramiento es hacer parte de la imagen de un elemento transparente de tal manera que evite el solapamiento con las imágenes de otros elementos. Por ejemplo, en la siguiente imagen Head ha tenido que ser enmascarado tal y como aparece en la parte derecha:


Tramposo... no pones a Head detrás del transportador, le borras la nariz...


Ahora en serio, la explicación es didáctica a la par que inteligible... sigue así... :D
Última edición por Bergil el Sab Nov 10, 2007 20:06, editado 1 vez en total
Avatar de Usuario
Bergil
Moderador
Moderador
 
Mensajes: 2117
Registrado: Vie Ago 10, 2007 20:14
Ubicación: Madrid, Villa y Corte

AnteriorSiguiente

Volver a El proyecto

¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 1 invitado

cron