Fixed few GFX bugs in TeeWorlds, it still crashes
This commit is contained in:
@@ -1,6 +1,6 @@
|
||||
|
||||
# The namespace in Java file, with dots replaced with underscores
|
||||
SDL_JAVA_PACKAGE_PATH := com_googlecode_opentyrian
|
||||
SDL_JAVA_PACKAGE_PATH := com_teeworlds
|
||||
|
||||
# Path to shared libraries - Android 1.6 cannot load them properly, thus we have to specify absolute path here
|
||||
# SDL_SHARED_LIBRARIES_PATH := /data/data/de.schwardtnet.alienblaster/lib
|
||||
@@ -10,7 +10,7 @@ SDL_JAVA_PACKAGE_PATH := com_googlecode_opentyrian
|
||||
# Typically /sdcard/alienblaster
|
||||
# Or /data/data/de.schwardtnet.alienblaster/files if you're planning to unpack data in application private folder
|
||||
# Your application will just set current directory there
|
||||
SDL_CURDIR_PATH := com.googlecode.opentyrian
|
||||
SDL_CURDIR_PATH := com.teeworlds
|
||||
|
||||
# Android Dev Phone G1 has trackball instead of cursor keys, and
|
||||
# sends trackball movement events as rapid KeyDown/KeyUp events,
|
||||
@@ -21,15 +21,15 @@ SDL_TRACKBALL_KEYUP_DELAY := 1
|
||||
|
||||
# If the application designed for higher screen resolution enable this to get the screen
|
||||
# resized in HW-accelerated way, however it eats a tiny bit of CPU
|
||||
SDL_VIDEO_RENDER_RESIZE := 1
|
||||
SDL_VIDEO_RENDER_RESIZE := 0
|
||||
|
||||
COMPILED_LIBRARIES := sdl_net
|
||||
COMPILED_LIBRARIES := sdl_image sdl_mixer
|
||||
|
||||
APPLICATION_ADDITIONAL_CFLAGS := -finline-functions -O2
|
||||
APPLICATION_ADDITIONAL_CFLAGS := -O2 -DCONF_FAMILY_UNIX=1
|
||||
|
||||
APPLICATION_ADDITIONAL_LDFLAGS :=
|
||||
APPLICATION_ADDITIONAL_LDFLAGS := -Lbin/ndk/local/armeabi -lfreetype
|
||||
|
||||
SDL_ADDITIONAL_CFLAGS := -DSDL_ANDROID_KEYCODE_MOUSE=UNKNOWN -DSDL_ANDROID_KEYCODE_0=SPACE -DSDL_ANDROID_KEYCODE_1=RETURN -DSDL_ANDROID_KEYCODE_2=LCTRL -DSDL_ANDROID_KEYCODE_3=LALT -DSDL_ANDROID_KEYCODE_4=RETURN
|
||||
SDL_ADDITIONAL_CFLAGS := -DSDL_ANDROID_KEYCODE_MOUSE=UNKNOWN -DSDL_ANDROID_KEYCODE_0=RETURN -DSDL_ANDROID_KEYCODE_1=RSHIFT -DSDL_ANDROID_KEYCODE_2=KP_PLUS -DSDL_ANDROID_KEYCODE_3=KP_MINUS -DSDL_ANDROID_KEYCODE_4=ESCAPE -DSDL_ANDROID_KEYCODE_5=F10
|
||||
|
||||
# If SDL_Mixer should link to libMAD
|
||||
SDL_MIXER_USE_LIBMAD :=
|
||||
|
||||
@@ -5,6 +5,6 @@ APP_PROJECT_PATH := $(call my-dir)/..
|
||||
# sdl_image depends on png and jpeg
|
||||
# sdl_ttf depends on freetype
|
||||
|
||||
APP_MODULES := application sdl sdl_main stlport tremor png jpeg freetype sdl_net
|
||||
APP_MODULES := application sdl sdl_main stlport tremor png jpeg freetype sdl_image sdl_mixer
|
||||
|
||||
APP_ABI := armeabi
|
||||
|
||||
@@ -1 +1 @@
|
||||
opentyrian
|
||||
teeworlds
|
||||
@@ -67,6 +67,13 @@
|
||||
#define CONF_PLATFORM_STRING "beos"
|
||||
#endif
|
||||
|
||||
#if defined(ANDROID)
|
||||
#define CONF_FAMILY_UNIX 1
|
||||
#define CONF_FAMILY_STRING "unix"
|
||||
#define CONF_PLATFORM_LINUX 1
|
||||
#define CONF_PLATFORM_STRING "android"
|
||||
#endif
|
||||
|
||||
|
||||
/* architectures */
|
||||
#if defined(i386) || defined(__i386__) || defined(__x86__) || defined(CONF_PLATFORM_WIN32)
|
||||
@@ -99,6 +106,18 @@
|
||||
#define CONF_ARCH_ENDIAN_BIG 1
|
||||
#endif
|
||||
|
||||
#if defined(__ARMEB__)
|
||||
#define CONF_ARCH_ARM 1
|
||||
#define CONF_ARCH_STRING "arm"
|
||||
#define CONF_ARCH_ENDIAN_BIG 1
|
||||
#endif
|
||||
|
||||
#if defined(__ARMEL__)
|
||||
#define CONF_ARCH_ARM 1
|
||||
#define CONF_ARCH_STRING "arm"
|
||||
#define CONF_ARCH_ENDIAN_LITTLE 1
|
||||
#endif
|
||||
|
||||
|
||||
#ifndef CONF_FAMILY_STRING
|
||||
#define CONF_FAMILY_STRING "unknown"
|
||||
|
||||
@@ -30,6 +30,9 @@
|
||||
#if defined(CONF_PLATFORM_MACOSX)
|
||||
#include <Carbon/Carbon.h>
|
||||
#endif
|
||||
#ifdef ANDROID
|
||||
#include <android/log.h>
|
||||
#endif
|
||||
|
||||
#elif defined(CONF_FAMILY_WINDOWS)
|
||||
#define WIN32_LEAN_AND_MEAN
|
||||
@@ -107,6 +110,10 @@ static void logger_stdout(const char *line)
|
||||
{
|
||||
printf("%s\n", line);
|
||||
fflush(stdout);
|
||||
#ifdef ANDROID
|
||||
__android_log_print(ANDROID_LOG_INFO, "Teeworlds", "%s", line);
|
||||
#endif
|
||||
|
||||
}
|
||||
|
||||
static void logger_debugger(const char *line)
|
||||
|
||||
@@ -149,18 +149,9 @@ static void flush()
|
||||
#ifdef ANDROID
|
||||
{
|
||||
int i;
|
||||
for(i = 0; i < num_vertices; i++)
|
||||
for(i = 0; i < num_vertices / 4; i++)
|
||||
{
|
||||
glDrawArrays(GL_TRIANGLE_FAN, 0, num_vertices);
|
||||
glVertexPointer(3, GL_FLOAT,
|
||||
sizeof(VERTEX),
|
||||
(char*)(vertices+i));
|
||||
glTexCoordPointer(2, GL_FLOAT,
|
||||
sizeof(VERTEX),
|
||||
(char*)(vertices+i) + sizeof(float)*3);
|
||||
glColorPointer(4, GL_FLOAT,
|
||||
sizeof(VERTEX),
|
||||
(char*)(vertices+i) + sizeof(float)*5);
|
||||
glDrawArrays(GL_TRIANGLE_FAN, i * 4, 4);
|
||||
}
|
||||
}
|
||||
#else
|
||||
@@ -188,7 +179,9 @@ static int try_init()
|
||||
|
||||
#ifdef ANDROID
|
||||
config.gfx_screen_width = SDL_ListModes(NULL, SDL_OPENGL|SDL_GL_DOUBLEBUFFER|SDL_FULLSCREEN)[0]->w;
|
||||
config.gfx_screen_width = SDL_ListModes(NULL, SDL_OPENGL|SDL_GL_DOUBLEBUFFER|SDL_FULLSCREEN)[0]->h;
|
||||
config.gfx_screen_height = SDL_ListModes(NULL, SDL_OPENGL|SDL_GL_DOUBLEBUFFER|SDL_FULLSCREEN)[0]->h;
|
||||
|
||||
dbg_msg("gfx", "Physical display resolution is %dx%d", config.gfx_screen_width, config.gfx_screen_height);
|
||||
#endif
|
||||
|
||||
screen_width = config.gfx_screen_width;
|
||||
|
||||
Reference in New Issue
Block a user