Una vez un equipo indie ha terminado un juego o está en la fase de desarrollo y tiene claro los datos clave del juego como el modelo de negocio, plataformas, ventana de lanzamiento y un roadmap bien definido es momento de pensar como querréis lanzar su juego . Evidentemente la auto publicación es una opción, pero obliga al equipo a derivar recursos (tiempo, conocimientos y dinero) en entender como se debe lanzar un juego para que este funcione o al menos recuperemos lo invertido. Como desarrollador de juegos indie, conocer el funcionamiento de los publishers es crucial para decidir si trabajar con uno puede ayudarte a lanzar y comercializar tu juego de manera más efectiva. El punto clave para ello es evaluar lo que necesitamos de él (porting, marqueting, localización, etc.), analizar que recoup tendremos (dinero que habrá que devolver al publisher) y con que condiciones. El recoup (o recoupment) es el proceso por el cual un publisher recupera el dinero invertido en un juego antes d...
Cuando te enfrentas a un proyecto profesional y tu equipo de
trabajo no es extenso, necesitas herramientas de apoyo para poder hacer la vida
un poco más fácil. En este post os quería presentar unas librerías muy
prácticas cunado desarrollas juegos en Delphi o aplicaciones móviles en
general.
La primera de ellas es FlyFilesUtils. Este proyecto opensource presenta algunas herramientas muy útiles para el desarrollo móvil.
La primera de ellas es FlyFilesUtils. Este proyecto opensource presenta algunas herramientas muy útiles para el desarrollo móvil.
Para el desarrollo de juegos y aplicaciones móviles en
general podemos usar las rutinas de información de dispositivos ya que nos permitirá
en tiempo de ejecución conocer qué tipo de dispositivo está corriendo nuestra
aplicación.
// Funciones
function GetScreenPixelsXY(const Context: TFmxObject = nil): TPoint;
function GetScreenClientPixelsXY(const Context: TFmxObject = nil): TPoint;
function GetScreenInchXY(const Context: TFmxObject = nil): TPointF;
function GetScreenDPIXY(const Context: TFmxObject = nil): TPointF;
function GetScreenDPI(const Context: TFmxObject = nil): Single;
function GetScreenInches(const Context: TFmxObject = nil): Single;
function GetFormXY(const AForm: TCustomForm): TPointF;
function GetFormClientXY(const AForm: TCustomForm): TPointF;
function GetFormClient(const AForm: TCustomForm): TRectF;
function GetFormPixelsXY(const AForm: TCustomForm): TPointF;
function GetFormClientPixelsXY(const AForm: TCustomForm): TPointF;
A partir de etas funciones podemos calcular que tipo de
pantalla se está ejecutando nuestra aplicación y ajustar la GUI al dispositivo.
A partir de una función rudimentaria podemos conocer si la aplicación se ejecuta
en una Tablet o un Smartphone.
{$IF DEFINED(iOS) or DEFINED(ANDROID)}
if FlyFilesUtils.GetScreenInches>=6.5 then
begin
Tablet:= True;
end;
{$ENDIF}
Además está librería tiene otras funciones relacionadas con
acceso a ficheros en dispositivos móviles, así como funciones de conversión que
nos pueden resultar útiles más adelante.
Comentarios
Publicar un comentario