16 de septiembre de 2014

Unity: Acceder a variables de otros scripts con C#

Voy al grano :)

Manager.cs

using UnityEngine;
using System.Collections;

public class Manager : MonoBehaviour {

public static int someGlobal = 5;

// Use this for initialization
void Start () {
print(someGlobal);
someGlobal = 1;
}

// Update is called once per frame
void Update () {

}
}


Acceder.cs

using UnityEngine;
using System.Collections;

public class Acceder : MonoBehaviour {

// Use this for initialization
void Start () {
Manager.someGlobal = 3;
print (Manager.someGlobal);
}

// Update is called once per frame
void Update () {

}
}

Agregar los scripts cada uno a un objeto distinto, yo el Manager lo agrego siempre a un objecto vacío en pantalla al que llamo "Main", pero bueno , cada uno que lo haga según quiera.

3 de septiembre de 2014

Sobre las fotos robadas a las famosas en iCloud

Estos días se ha levantado una polémica brutal a cuenta de las fotos robadas de 100 celebridades de sus cuentas de iCloud. Unos y otros nos hemos lanzado a dar nuestra opinión sobre el asunto.

Los hay que opinan que se lo han buscado por hacerse este tipo de fotos con su móvil, los hay que aprovechan para criticar el sistema de seguridad de Apple, los hay que vaticinan el fin de la protección con password (como si ese fuera el agujero de seguridad), etc.

En mi opinión una cosa es el mundo ideal y otra el mundo real. En un mundo ideal no hay brechas de seguridad y todos somos buenas personas que respetamos la intimidad de los demás.

En el mundo real hay brechas de seguridad, las brechas de seguridad se producen normalmente por un error en el software genérico utilizado creado por terceros (sistema operativo, librerías de terceros, etc) o por un error en el software desarrollado a medida.

En cuanto al software de terceros, pongamos por ejemplo un servidor Apache, cuando se produce un fallo de seguridad este se suele colgar en foros técnicos, y hasta que se resuelve el problema pueden pasar semanas. Durante este tiempo todos los sistemas basados en él están comprometidos. Las empresas privadas como Microsoft optan por el secretismo para que no se sepa que hay un agujero, pero cuando lo hay lo hay y se sabe. Recuerdo una temporada que estuve suscrito a un boletín de seguridad sobre agujeros de Wordpress y al día recibía de 20 a 30 mensajes.

El software propio siempre se desarrolla con recursos de la empresa, esos recursos suelen ser muy limitados (o por el tamaño de la empresa o por decisión de los contables), con lo que no puedes estar en todo.

¿Por qué surgen estos agujeros? Bueno, el software hoy en día no es como antes, ahora es un producto complejo que utiliza elementos desarrollados por equipos que no tienen nada que ver el uno con el otro. De hecho en ocasiones esos elementos ni siquiera fueron desarrollados para estar juntos, por lo que los problemas entre ellos generan fisuras que pueden ser aprovechadas.

A esto hay que unirle el factor tiempo, en este mundo estresado de locos en el que vivimos todo se quiere para ayer. Si haces un análisis con prisas algún agujero seguro que te dejas y si programas con más prisas aún sólo te queda poner la alfombra. Soy programador, sé de lo que hablo.

El año pasado Apple ya tuvo una brecha de seguridad que motivó que durante casi un mes no pudiésemos publicar aplicaciones en la App Store. A este problema no se le dio mucha publicidad. Pero el problema no es sólo de Apple, es de Sony, de Google (yo he visto hackear cuentas de email de Gmail como quien come pipas -a nivel de pruebas de seguridad, eso sí-) y algún día le tocará la china a Microsoft.

Así que si os va el mundo real no grabéis en formato digital (fotos, vídeos, email) cosas que no queréis que se vean, porque os puede tocar a vosotros. Mientras tanto a pelear para que el mundo ideal sea el real.

1 de septiembre de 2014

Twitter: caca, culo, pedo, pis

Hay una serie de usuarios cuyo lema en Twitter es caca, pedo, culo, pis. Cuando el equipo de fútbol rival pierde o cuando un famoso del corazón dice algo se lanzan al ataque soltando todos los insultos e improperios de los que son capaces en los 140 caracteres de Twitter.
A mí el tema no me pilló de sorpresa, venía ya acostumbrado a los foros, a los comentarios en los blogs y a los comentarios de Menéame, niñatos que en la calle no se atreven ni a mirarte a los ojos en internet se crecen y van soltando todo tipo de tonterías.

En mi caso me han amenazado de muerte vía comentarios en un blog, han amenazado a mi mujer vía YouTube, en fin, que Internet es la jungla.

Lo que yo he hecho siempre es pasar de ellos, son unos energúmenos que se aburren en casa. La pega es que generan mucho ruido y terminan echando de Twitter a gente que expresa su opinión libremente, y eso ya si que me parece triste.

¿Cual es la solución? Ni idea.

22 de agosto de 2014

Pay to Win

¿Qué es el Pay to Win?

Es un modelo de negocio en los juegos Free to Play según el cual el que más dinero gasta en el juego es el que siempre gana. El término en sí se usa de manera despectiva para tratar a un juego de "sacacuartos".

Hace algunos años este modelo de negocio arrasó, pero ahora, conforme ha evolucionado el mercado de los juegos Free to Play y han entrado más competidores en el mercado han aparecido multitud de alternativas en las cuales gastar dinero ayuda, pero no se convierte en el elemento determinante del juego.

Identificar a un juego Pay to Win es bastante sencillo, a las 3 o 4 partidas verás que si no compras moneda virtual del juego -sólo conseguible pagando- no podrás competir contra los otros jugadores.

En el caso de los juegos monojugador lo sabrás cuando veas que no puedes pasar de fase sin pagar, independientemente de tus habilidades como jugador.

El objetivo de este tipo de juegos es captar a los jugadores llamados "ballenas" que son los que más dinero gastan para que se enganchen al juego premiando sus habilidades de gasto, más que las de juego.

Pero bueno, como os he dicho al principio, este tipo de juegos desaparecerán con el tiempo, esperemos :)

19 de julio de 2014

Videojuegos:Xinput y DirectInput

Desde hace algún tiempo muchos de los juegos de PC que compro en Steam no funcionan con mi gamepad para PC compatible con PS3, he estado investigando un poco y he encontrado la razón.

A día de hoy hay dos tipos de drivers para gamepad en Windows, xInput y DirectInput, xInput es más moderno que DirectInput, está basado en las especificaciones de XBOX360 y es muy utilizado en los juegos que tienen también versión para esta consola.

DirectInput es más antiguo que xInput, son los drivers de gamepad para Windows de toda la vida, tienen más limitaciones técnicas y están cayendo en desuso.

En mi caso lo que hago para mi gamepad es instalar un emulador de drivers de XBOX360 para que mi gamepad me sirva, a veces da errores o se cuelga con el motor del vibrador (por ejemplo con las arañas en Castlevania Lords of Shadow) o no funciona bien en algunas ocasiones (por ejemplo en Batman Origins con el botón de investigar pruebas en el modo detective). Vamos, que no es la solución perfecta. Si queréis descargarlo podéis hacerlo aquí: x360c controllers

Aunque tengo una XBOX360 mis mandos son inalámbricos por lo que no funcionan en mi Windows ya que no tengo el receptor para PC así que estoy valorándome comprarme un mando de xbox 360 con cable para poder disfrutar al 100% con los juegos de mi PC.

No me mosqueo demasiado con el tema ya que llevo toda la vida aguantando todas estas macarradas de la industria, mi primera vez fue con el Spectrum +2 que rompió la norma Atari y nos tocó compranos joysticks compatibles, en fin, más de lo mismo.

24 de junio de 2014

Grand Theft Auto V: Un modder saca un mod en primera persona para XBOX 360

El usuario XBLToothPik le está experimentando con el motor del juego y ha conseguido colocar una cámara en primera persona, y sorprendentemente el juego se ve muy bien, a mí me recuerda al Mirror's Edge. A ver si cuando salga para PC aparecen mods tan buenos como este.





11 de junio de 2014

Android: Emulador BlueStacks





BlueStacks es un programa que permite ejecutar aplicaciones Android. Está disponible para Windows y para Macos X.

No emula a ningún dispositivo Android del mercado, simplemente ejecuta sus aplicaciones en un ordenador de una manera rápida y eficaz.

Para ejecutar una aplicación en él puedes, o bien descargarla de la tienda de Google Play desde dentro de BlueStacks o bien puedes hacer doble click sobre un fichero APK -son los ficheros compilados para ejecutarse en Android-.

En mi caso utilizo este emulador para hacer pruebas rápidas de las aplicaciones que desarrollo, no es fiable a nivel de velocidad ni a nivel de exactitud visual, pero viene bien para comprobar otro tipo de errores rápidamente.

Para los que no tengáis móviles o tablets Android os permite también probar juegos y apps de esta plataforma en la pantalla de vuestro ordenador, pero recordad que no es fiable 100% y la sensación de usar el hardware real no la vais a tener.

Si queréis descargarlo podéis ir a BlueStacks.com.