hola amigos con este tutorial aprenderemos a crear nuestra primera aplicación para PSVita, y algo de código básico en C# (Lenguaje oficial de PSM Studio), lo que aparte también, nos permitirá crear una aplicación para cualquier dispositivo licenciado con PlayStation Mobile Studio.
Bueno, como sabréis, y si no, lo sabéis ahora, las aplicaciones que se crean para la PSVita han de estar en C#, un lenguaje de la familia .Net, con una sintaxis muy parecida a Java (Digamos que es una mezcla entre Visual Basic y C).
Para los que no sepáis como se programa en C#, escribiré un trocito de código muy sencillo, que cualquiera con unas nociones básicas de ANSI C, Java o Visual Basic, sabrá comprender.
Bueno, antes que nada, tenemos que abrir PSMStudio, y nos aparecerá una ventana como esta:
En esta ventana haremos click en el botón start new solution y nos va aparecer otra ventana como esta
Haremos click en la izquierda a C#, después en a PlayStation Mobile, después a PlayStation Mobile Application, y en nombre pondremos HolaMundo, aunque para nuestras aplicaciones deberemos usar el nombre de nuestra app.
En este paso nos aparecerá otra ventana, a la izquierda aparecerá una lista en la que aparece "Solución HolaMundo" y debajo "HolaMundo". Desplegaremos el "HolaMundo" y aparecerán 2 archivos y 2 carpetas, bien, estas carpetas y archivos tienen las siguientes funciones.
Referencias: Son las librerías que usaremos para nuestras aplicaciones, entre ellas se encuentran librerías que usaremos para crear botones, texto, menús, etc... shaders: Esta carpeta contiene los shaders gráficos que usaríamos en el caso de utilizar la librería gráfica que trae PSS, es una librería a bajo nivel para dibujar en pantalla, es mas complicada de usar, pero es mas versátil que UI Toolkit, otra librería que permite crear elementos visuales en pantalla de forma mas sencilla. app.xml: Este archivo contiene información de la aplicación, tales como el Nombre, el Creador, el Icono, la Versión, y varias cosas mas. AppMain.cs: Es lo mas importante del proyecto, pues dentro de este archivo nos encontraremos con el código de nuestra aplicación.
Bien, antes que nada, debemos hacer click derecho en la carpeta Referencias, a la izquierda en la lista y darle a Editar referencias, nos aparecerá una ventana. Haremos click en Sce.Playstation.HighLevel.UI seleccionando el tick que le acompaña, le damos a cerrar y a Aceptar.
Guardamos todo, cerramos PSM y lo volvemos a Abrir, cargando nuestro proyecto "HolaMundo".
Haremos click en AppMain.cs, y a la derecha de nuestra ventana de PSM se nos abrirá una ventana llena de código, bien. Vamos a hacer lo siguiente. Borraremos todo el código que aparece debajo de la palabra namespace (incluyendo esa linea), es solamente una plantilla para escribir encima, pero no es nada útil. Tras borrar todo solo nos quedaría de código...
using System; using System.Collections.Generic;
using Sce.PlayStation.Core; using Sce.PlayStation.Core.Environment; using Sce.PlayStation.Core.Graphics; using Sce.PlayStation.Core.Input;
debajo de estas lineas escribiremos
using Sce.PlayStation.HighLevel.UI;
namespace HolaMundo // Creamos un namespace, lo llamamos como queramos. { class Aplicacion // Dentro del namespace creamos una clase, la llamamos como queramos, pero distinta al namespace { public static Scene escena; // Declaramos una escena, para poner el texto. public static Label label1; // Declaramos un texto. public static GraphicsContext graphics; // Declaramos un contexto grafico, para ver cosas en pantalla public static void Main() // Creamos la funcion Main, dentro de aqui siempre se ejecutara el codigo que haya dentro, esta funcion siempre ha de estar presente. { Empezar(); // Solo una vez while (true) // while (true) es como si ponemos mientras sea verdad, es decir, es infinito. Si no lo entendeis, es como si poneis while(1 == 1). { Renderizar(); // Siempre esta renderizando. } }
public static void Empezar() // Creamos una funcion que inicialice todo { graphics = new GraphicsContext(); // Inicializamos el contexto grafico UISystem.Initialize (graphics); // Inicializamos los graficos en la escena escena = new Scene(); // Iniciamos una escena label1 = new Label(); // Inicializamos un texto
label1.SetPosition (10,10); // Ponemos las coordenadas del texto label1.SetSize (300,100); // Ponemos el tamaño del cuadro del texto, no confundir con el tamaño de la letra. label1.Text = "Hola Mundo"; // Ponemos el texto que queremos
escena.RootWidget.AddChildFirst (label1); // Añadimos el texto a la escena, en el primer orden Z, si ponemos AddChildLast, lo ponemos el ultimo en el orden Z. Son como capas, y Z los niveles de capas existentes. UISystem.SetScene (escena); // Ponemos en pantalla la escena
}
public static void Renderizar() // Creamos que una funcion que renderice todo. { graphics.Clear (); // Limpiamos la pantalla UISystem.Render(); // Renderizamos la escena graphics.SwapBuffers (); // Hacemos un swap de los buffers, para ver lo que hemos renderizado. } } }
y luego abrimos el PSM Assistant en la consola, la conectamos por el USB al PC, y en el PlayStation Mobile Studio hacemos click en la parte superior de la ventana en Ejecutar > Ejecutar Con... > PSVita (XXXXXXXXXXXXXXX.....) ON, hacemos click y esperamos a que el "Hola Mundo" aparezca en nuestra PSVita.