Esta web usa cookies propias y de terceros para mejorar tu experiencia de navegación y realizar tareas de análisis. Al continuar con tu navegación entendemos que das tu consentimiento a nuestra política de cookies.

MY NEW STATIC BLOG. WHY? BECAUSE FUCK YOU, THAT'S WHY!




Más pruebas en torno al tema recurrente de este blog: Steam para Linux. Por un lado tenemos que la url vuelve a ofrecer un error 403 (permiso denegado, es decir, existe pero no puede ser accedida desde fuera de Valve), y por otro lado tenemos el SDK de Alien Swarm, donde podemos encontrar claras referencias a Linux, y NO, NO HABLAMOS DE LA PARTE DE SERVIDOR:


#if !defined( _X360 )
#if defined( _OSX )
#define DEFINE_WINDOWED_APPLICATION_OBJECT_GLOBALVAR( _globalVarName ) \
int main( int argc, char **argv ) \
{ \
extern int ValveCocoaMain( int argc, char **argv, CAppSystemGroup *pAppSystemGroup ); \
return ValveCocoaMain( argc, argv, &_globalVarName ); \
}
#elif defined( PLATFORM_LINUX )
#define DEFINE_WINDOWED_APPLICATION_OBJECT_GLOBALVAR( _globalVarName ) \
int main( int argc, char **argv ) \
{ \
extern int ValveLinuxWindowedMain( int argc, char **argv, CAppSystemGroup *pAppSystemGroup ); \
return ValveLinuxWindowedMain( argc, argv, &_globalVarName ); \
}
#else
#define DEFINE_WINDOWED_APPLICATION_OBJECT_GLOBALVAR( _globalVarName ) \
int __stdcall WinMain( struct HINSTANCE__* hInstance, struct HINSTANCE__* hPrevInstance, NULLTERMINATED char *lpCmdLine, int nCmdShow ) \
{ \
return AppMain( hInstance, hPrevInstance, lpCmdLine, nCmdShow, &_globalVarName ); \
}
#endif
#else
#define DEFINE_WINDOWED_APPLICATION_OBJECT_GLOBALVAR( _globalVarName ) \
DLL_EXPORT int AppMain360( struct HINSTANCE__* hInstance, struct HINSTANCE__* hPrevInstance, NULLTERMINATED char *lpCmdLine, int nCmdShow ) \
{ \
return AppMain( hInstance, hPrevInstance, lpCmdLine, nCmdShow, &_globalVarName ); \
}
#endif

Esta porción de código define el objeto ventana de aplicación, y podemos observar como selecciona la función apropiada en función de la plataforma: XBOX 360, Mac OS X, Linux o Windows.

Mi opinión siempre ha sido que Valve tiene portados a Linux Steam y el motor Source desde hace mucho tiempo, por el simple hecho de que así es más fácil mantener código multiplataforma (Windows, Linux, Mac OS X, XBOX 360, PlayStation 3...), pero que no tienen intención de ofrecerlo a corto plazo. Pasa lo mismo con el World of Warcraft, Blizzard tiene una versión para Linux, pero sólo para uso interno.

¿Por qué portar software a Linux es importante de cara a portarlo a otras plataformas? pues por el simple hecho de la gran cantidad de librerías disponibles, así como el soporte para las últimas versiones de OpenGL. Linux es un sistema extremadamente amigable de cara al desarrollador, pero por desgracia parece que las empresas, aun teniendo mucho software portado a Linux, no se deciden a ofrecerlo...
01-01-2011
Jordi

Ellos sabrán que hacen...

Feliz 2011!

comments powered by Disqus

Powered by PussyPress.