javisantana.com

Cagada de 20 minutos

Muchas veces no sé si es que soy tonto, despistado o las dos cosas (posiblemente más juntas). Muchas veces cuando haces algo que reqiuere cierta concentración, por ejemplo un exámen, haces una cosa y en mente tienes otras, relacionadas con ella, que más tarde tienes que hacer. A menudo pasa que se te olvida o que, no sé porque, asocias que esa tarea ya está hecha.

Hoy en TVCYL me ha pasado exactamente eso. La presentadora del informativo de castilla y león ha llegado con una noticia (la del chaval que se tragó una flecha) que había que enviar a TV León. Los envíos de imágenes se realizan a través del mismo canal que se usa para enviar la programación regional a las TV locales y que después estas deben lanzar al aire. Lógicamente estos envíos se realizan cuando se está emitiendo programación local, que es cuando el canal queda libre.

Después de acceder a enviarlo, seguimos los pasos para realizar la conexión en la matriz de video, conectamos un magnetoscopio a el encoder de MPEG2 que a su vez manda a fibra óptica y procedemos a enviar las imágenes.

Después de eso debía volver a dejar las conexiones de la matriz como estaba, de hecho lo tenía en mi cabeza, pero no sé porque no lo hice. Bueno, en realidad, no lo hicismos porque la operación la hicimos entre mi compañero de prácticas y yo. A las 10:59 nos vamos a realización a estudiar el conexionado con tal mala suerte que a las 11:00 empezaba la emisión regional, y digo empezaba porque en realidad no empezó, símplemente empezó a enviar negro hasta que no sé quien dio a la tecla para que redireccionara la emisión local a la regional.

Total, 20 minutos en negro donde debería haber ido telenovela por nuestra culpa. Encima lo hicimos por hacer un favor, con toda nuestra buena intención (el infierno está empedrado de buenas intenciones). Lo peor no ha sido cometer un error, lo peor es que por nuestra culpa el jefe de Continuidad (sala donde se emite todo) se ha visto en un buen marrón.

De cualquier forma ha habido algunas buenas cosas que he sacado de esto:

- No te metas manolete.

- Cuando sea jefe y tenga que broncar a alguien, nunca hacerlo delante de todo el mundo. Digo esto porque el jefe de continuidad se le ha ocurrido broncarnos en medio de la cafetería, con bastante gente delante, cosa que se puede entender dada la cagada. Sin embargo este tipo de cosas pueden dar lugar a que el empleado no se sienta cómodo con el jefe. No ha sido mi caso, soy un becario y además soy humano, creo que no hacen falta más explicaciones.

- Cuando sea jefe antes de broncar a nadie, hay que asegurarse muy bien y hablar con las personas involucradas, porque me ha dado la impresión de que las advertencias, broncas y explicaciones se me han dado exclusivamente a mi, sin implicar a mi compañero.

- De vez en cuando vienen bien alguna cagada de este tipo para espabilar.

Al final todo ha quedado más o menos bien, de todas todas días atrás ya habían tenido 10 minutos de negro por sabe dios qué.
arg!

código del mes

En el juego que estamos preparando para art-futura05 tenemos que hacer un editor para que el usuario se construya sus propios objetos. El juego está fuertemente orientado al 3D, con lo cual el editor tiene que dar un interface sencillo pero que permita controlar perfectamente las 3 dimensiones. Lógicamente el objeto se construye en base a otros más simples que el usuario debe colocar. Aquí es cuando viene el problema, hay que diseñar un sistema que permita que el usuario con el ratón seleccione en su pantalla (un entorno 2D) un objeto que está en un entorno 3D. Para ello OpenGL aporta un mecanismo llamado picking, que dándole las coordenadas del ratón (x,y) te retorna el objeto que se ha pinchado. Dicho así resulta simple, pero tiene algunos escollos que conviene salvar antes de hacer algo decente.

Para resolver el problema he creado una pequeña clase, que, aunque es muy simple, ayuda bastante:

  
class Picking:  
 def \_\_init\_\_(self):  
  pass;  
  self.\_buf = 1024\*\[1\];  
    
 def Init(self, cursor):  
  
  #viewport = \[0,0,0,0\];  
  self.\_buf = glSelectBuffer(1024);  
    
  glRenderMode(GL\_SELECT);  
  
  glMatrixMode(GL\_PROJECTION);  
  glPushMatrix();  
  glLoadIdentity();  
   
  viewport = glGetInteger(GL\_VIEWPORT);  
  gluPickMatrix(cursor\[0\],viewport\[3\]-cursor\[1\],  
   1,1,viewport);  
    
  gluPerspective(45,1.3333,0.2,200);  
  glMatrixMode(GL\_MODELVIEW);  
  glInitNames();  
 def Push(self,i):  
  glPushName(i);  
 def Pop(self):  
  glPopName();  
  
 def End(self):  
  glMatrixMode(GL\_PROJECTION);  
  glPopMatrix();  
  glMatrixMode(GL\_MODELVIEW);  
  glFlush();  
   
  return  glRenderMode(GL\_RENDER);  

De esta forma le das las coordenadas del ratón, renderizas indicando los identificadores de los objetos y al terminar te retorna lo que has pinchado.

Lo paradójico del tema es que mirando después la documentación de pyopengl me doy cuenta que en GL__init__.py hay un wrapper muy parecido a este, pero que en vez de usar una clase, usa una función con un callback, que será la función de render.

En fins.. :_)

miedo

Hace no mucho vi en el cine la guerra de los mundos. Aparte de los efectos especiales y toda la parafernalia me quedó impactado como refleja el pánico de las personas ante una situación que no pueden controlar. Hay escenas como la de la pistola o la del barco que reflejan perfectamente lo que estoy diciendo. También lo comentamos en el blog de Jare hace unos días
.

Hace unos días también se nos ha venido encima el incendio de guadalajara. De no ser por los muertos hubiera sido otro incendio más que añadir a la lista de bosques quemados debido a sabe dios que. Lo que me ha impactado y me ha hecho recordar el pánic o que sufrían en la película fue una imagen de informe semanal en la que se veía desde un helicóptero un 4x4 estrellado contra un muro de piedras, el típico que hace de linde entre las diferentes parcelas. Al ver esas imágenes me vino a la mente el momento de angustia que tuvieron que pasar intentando escapar de las llamas a través del humo, conduciendo a toda leche sin ver nada y para remate intentar escapar ardiendo después de que el coche quedara inútil después del golpe. He encontrado una imágen de la escena en elmundo.es que lo dice casi todo.

Espero no verme en una así en mi vida.

señoras

En esto que voy con un dolor de barriga de la virgen en el bus (por decir algo) y un asiento más alante va una señora de unos 60 tacos, muy bien puesta, se notaba que había salido del pueblo hace muchos años, se intuía que tenía dinero, que había viajado poco en autobús, es posible que su marido no hubiera podido llevarla en su BMW (seguro que es el típico de gorra) y por ello iba a su pueblo en el autobús en el que nos transladamos entre zonas administraticas los plebeyos.

En esto que saca de su bolso blanco, con motivos de color marrón claro, ni muy grande ni muy pequeño, elegante pero informal (casual), se notaba que era de la marca del caballo, un móvil, nokia, claro, y posteriormente la típica agenda con tapas semiblandas marrón claro con un toque de brillante y delimitadores basados en diferentes capas de hojas. A su vez saca las típicas gafas de mirar por encima, curiosamente las tenía guardadas sin ningún tipo de protección, se las pone y comienza a buscar en la agenda. Encuentra lo que buscaba, desbloquea su móvil y marca el número que había en la agenda. Me recordó a cuando mi abuela quería llamar a alguien conocido para darle el pésame, no recordaba el teléfono y tenía que mirarlo en su agenda.

No sabría la buena señora que los móviles actualmente guardan los números de teléfono ? Es capaz de hacer encaje de bolillos y no es capaz de ponerse a teclear 4 letras? A pesar de mi dolor de barriga me he pegado una buena despichada, la señora se ha dado cuenta y me ha mirado con cara extrañada.

TVCYL

España definitivamente es diferente. Imaginate que tienes una empresa, llegan dos personas tituladas para hacer lo que tú quieras y que sin más les mandas a casa.

Pues eso es lo que han hecho conmigo en TVCYL, mandarme a casa hasta que ellos mismos se aclaren de lo que tengo que hacer yo allí. Yo me descojono entero XDD.