เดเดฒเตเดฒเดพเดตเตผเดเตเดเตเด เดนเดพเดฏเต. Android-เตฝ เดเดฐเต เดเตเดฏเดฟเด เดชเตเดฐเดตเตผเดคเตเดคเดฟเดชเตเดชเดฟเดเตเดเตเดจเตเดจเดคเดฟเดจเต sdl2 เดฒเตเดฌเตเดฐเดฑเดฟ เดเดชเดฏเตเดเดฟเดเตเดเต เดเดฐเต เดชเตเดฐเตเดเดเตเดฑเตเดฑเต เดเดเตเดเดจเต เดคเดฏเตเดฏเดพเดฑเดพเดเตเดเดพเดฎเตเดจเตเดจเต เดเดจเตเดจเต เดจเดฎเตเดฎเตพ เดจเตเดเตเดเตเด.
เดเดฆเตเดฏเด เดจเดฟเดเตเดเตพ เดเตปเดกเตเดฐเตเดฏเดฟเดกเต เดธเตเดฑเตเดฑเตเดกเดฟเดฏเต เดกเตเตบเดฒเตเดกเต เดเตเดฏเตเดฏเดฃเด, เด
เดคเต เดเตปเดธเตเดฑเตเดฑเดพเตพ เดเตเดฏเตเดฏเตเด, เดเตเดเดพเดคเต เด เดตเดฟเดเดธเดจ เดชเดฐเดฟเดคเดธเตเดฅเดฟเดคเดฟเดฏเดฟเตฝ เดเดตเดถเตเดฏเดฎเดพเดฏ เดเดฒเตเดฒเดพเด. เดเดฆเดพเดนเดฐเดฃเดคเตเดคเดฟเดจเต, เดเดจเดฟเดเตเดเต เดเดชเตเดชเตเตพ Kde Neon เดเดฃเตเดเต, เด เดธเดฟเดธเตเดฑเตเดฑเดคเตเดคเดฟเตฝ เดเดฐเต เดซเดฏเตฝ เดเดฃเตเดเต /etc/environment, เด
เดคเต เดซเดฏเตฝ เดเดฌเตเดฃเตเดเตเดตเดฟเตฝ เดจเดฟเดฒเดตเดฟเดฒเตเดฃเตเดเต. เดคเดพเดดเต เดชเดฑเดฏเตเดจเตเดจ เดตเตเดฐเดฟเดฏเดฌเดฟเดณเตเดเตพ เด
เดตเดฟเดเต เดจเตฝเดเตเดฃเตเดเดคเตเดฃเตเดเต.
ANDROID_HOME=/home/username/Android/Sdk
ANDROID_NDK_HOME=/home/username/ndk
เดจเดฟเดเตเดเตพ เดเดฆเตเดฏเตเดเดฟเด เดตเตเดฌเตโเดธเตเดฑเตเดฑเดฟเตฝ เดจเดฟเดจเตเดจเต NDK เดกเตเตบเดฒเตเดกเต เดเตเดฏเตเดฏเตเดเดฏเตเด เดจเดฟเดเตเดเดณเตเดเต เดนเตเด เดกเดฏเดฑเดเตโเดเดฑเดฟเดฏเดฟเดฒเตเดเตเดเต เด
เตบเดชเดพเดเตเดเต เดเตเดฏเตเดฏเตเดเดฏเตเด NDK เดเดจเตเดจเต เดชเตเดจเตผเดจเดพเดฎเดเดฐเดฃเด เดเตเดฏเตเดฏเตเดเดฏเตเด เดตเตเดฃเด. เด
เดเตเดคเตเดคเดคเดพเดฏเดฟ เดจเดฟเดเตเดเตพ เดตเตเดฌเตเดธเตเดฑเตเดฑเดฟเตฝ เดจเดฟเดจเตเดจเต SDL2 เดฒเตเดฌเตเดฐเดฑเดฟ เดกเตเตบเดฒเตเดกเต เดเตเดฏเตเดฏเดฃเด
เด เดธเดฑเตเดฑเตเดเดณเดฟเตฝ เดจเดฟเดจเตเดจเต android-เดฒเต เดซเดฏเดฒเตเดเตพ เดตเดพเดฏเดฟเดเตเดเดพเตป, เดจเดฟเดเตเดเตพ SDL_RWops เดซเดเดเตโเดทเดจเตเดเตพ เดเดชเดฏเตเดเดฟเดเตเดเตเดฃเตเดเดคเตเดฃเตเดเต. เดเดฐเต เดซเตเดฃเตเดเต เดเดชเดฏเตเดเดฟเดเตเดเต เดชเตเดฐเดตเตผเดคเตเดคเดฟเดเตเดเตเดจเตเดจเดคเดฟเดจเต เดเตเดกเดฟเตฝ เดเดชเดฏเตเดเดฟเดเตเดเตเดจเตเดจเดคเดฟเดจเตเดณเตเดณ เดเดฐเต เดเดฆเดพเดนเดฐเดฃเด เดเดคเดพ. เด เดธเดพเดนเดเดฐเตเดฏเดคเตเดคเดฟเตฝ, เดเดเตเดเตพเดเตเดเต FT_New_Face เดเดชเดฏเตเดเดฟเดเตเดเดพเตป เดเดดเดฟเดฏเดฟเดฒเตเดฒ, เดชเดเดฐเด เดเดคเดฟเดจเดเด เดตเดพเดฏเดฟเดเตเด เดกเดพเดฑเตเดฑ เดเดชเดฏเตเดเดฟเดเตเดเตเดจเตเดจเดคเดฟเดจเต FT_New_Memory_Face เดเดชเดฏเตเดเดฟเดเตเดเตเด.
#ifdef __ANDROID__
snprintf ( path, 254, "fonts/%s", file );
SDL_RWops *rw = SDL_RWFromFile(path, "r" );
char *memory = ( char * ) calloc ( rw->hidden.androidio.size, 1 );
SDL_RWread(rw, memory, 1, rw->hidden.androidio.size );
FT_New_Memory_Face(*this->ft_library, ( const FT_Byte * )memory, rw->hidden.androidio.size, 0, &this;->face );
SDL_RWclose(rw);
free ( memory );
#else
snprintf ( path, 254, "%s/fonts/%s", DEFAULT_ASSETS, file );
if ( access ( path, F_OK ) ) {
fprintf ( stderr, "not found font: %sn", path );
exit ( EXIT_FAILURE );
}
struct stat st;
stat ( path, &st; );
FILE *rw = fopen ( path, "r" );
char *memory = ( char * ) calloc ( st.st_size, 1 );
fread ( memory, 1, st.st_size, rw );
FT_New_Memory_Face ( *this->ft_library, ( const FT_Byte * ) memory, st.st_size, 0, &this;->face );
fclose ( rw );
free ( memory );
#endif
SDL2 เดคเดฒเดเตเดเตเดเตเดเตเดเตพ เดฌเดจเตเดงเดฟเดชเตเดชเดฟเดเตเดเตเดจเตเดจเดคเดฟเดจเต เดเดพเตป เดเดฐเต เดนเตเดกเตผ เดซเดฏเดฒเตเด เดธเตเดทเตเดเดฟเดเตเดเต. Android-เตฝ เดเดเดชเตเดฒเตเดทเตป เดตเดฟเดเดฏเดฟเดเตเดเตเดจเตเดจเดคเดฟเดจเต NO_SDL_GLEXT เดเดตเดถเตเดฏเดฎเดพเดฃเต.
#ifdef __ANDROID__
#include "SDL.h"
#include "SDL_video.h"
#include "SDL_events.h"
#define NO_SDL_GLEXT
#include "SDL_opengl.h"
#include "SDL_opengles2.h"
#else
#include <SDL2/SDL.h>
#include <SDL2/SDL_video.h>
#include <SDL2/SDL_opengl.h>
#include <SDL2/SDL_opengles2.h>
#endif
เด เดคเดฟเดจเดพเตฝ เดชเตเดฐเตเดเดเตเดฑเตเดฑเต เดคเดฏเตเดฏเดพเดฑเดพเดฃเต, เดทเตเดกเดฑเตเดเตพ Opengl Es 3.0-เดจเต เดคเดฏเตเดฏเดพเดฑเดพเดฃเต. เดเดชเตเดชเตเตพ เดจเดฎเตเดฎเตพ เดเดฐเต เดเตปเดกเตเดฐเตเดฏเดฟเดกเต-เดชเตเดฐเตเดเดเตเดฑเตเดฑเต เดธเตเดทเตเดเดฟเดเตเดเตเดฃเตเดเดคเตเดฃเตเดเต. เดเดคเต เดเตเดฏเตเดฏเตเดจเตเดจเดคเดฟเดจเต, SDL2 เดเตผเดเตเดเตเดตเต เด เตบเดชเดพเดเตเดเต เดเตเดฏเตเดฏเตเด. เดฌเดฟเตฝเดกเต-เดธเตเดเตเดฐเดฟเดชเตเดฑเตเดฑเตเดเดณเดฟเดฒเตเดเตเดเต เดชเตเดเตเด. เดเดเตเดเตพ เดเดคเต เดเดคเตเดชเตเดฒเต เดเตเดฏเตเดฏเตเดจเตเดจเต.
./androidbuild.sh com.xverizex.test main.cpp
เดเดจเดฟเดชเตเดชเดฑเดฏเตเดจเตเดจ เดธเดจเตเดฆเตเดถเด เดฆเตเดถเตเดฏเดฎเดพเดเตเด.
To build and install to a device for testing, run the following:
cd /home/cf/programs/SDL2-2.0.10/build/com.xverizex.test
./gradlew installDebug
Com.xverizex.test เดเดจเตเดจเดคเดฟเดฒเตเดเตเดเต เดชเตเดเตเด. com.xverizex.test/app/jni/src เดเดจเตเดจเดคเดฟเดฒเตเดเตเดเต เดชเตเดเตเด. เดเดเตเดเดณเตเดเต เดเตเดฏเดฟเด เดชเตเดฐเตเดเดเตเดฑเตเดฑเต เดเดเตเดเตพ เดชเดเตผเดคเตเดคเตเดจเตเดจเต. เดเดเตเดเตพ Android.mk เดซเดฏเตฝ เดฎเดพเดฑเตเดฑเตเดจเตเดจเต, เดเตปเตเดฑเต เดเดพเดฐเตเดฏเดคเตเดคเดฟเตฝ เดเดคเต เดเดคเตเดชเตเดฒเตเดฏเดพเดฃเต.
LOCAL_PATH := $(call my-dir)
include $(CLEAR_VARS)
LOCAL_MODULE := main
SDL_PATH := ../SDL
FREETYPE_PATH := ../Freetype2
LOCAL_C_INCLUDES := $(LOCAL_PATH)/$(SDL_PATH)/include $(LOCAL_PATH)/$(FREETYPE_PATH)/include
# Add your application source files here...
LOCAL_SRC_FILES := ./engine/lang.cpp ./engine/actor.cpp ./engine/sprite.cpp ./engine/shaders.cpp ./engine/box.cpp ./engine/menubox.cpp ./engine/load_manager.cpp ./engine/main.cpp ./engine/font.cpp ./engine/model.cpp ./engine/button.cpp ./theme.cpp ./level_manager.cpp ./menu/menu.cpp
LOCAL_SHARED_LIBRARIES := SDL2 Freetype2
LOCAL_LDLIBS := -lGLESv1_CM -lGLESv2 -llog
include $(BUILD_SHARED_LIBRARY)
เดจเดฟเดเตเดเตพ เดเดคเดฟเดจเดเด เดถเตเดฐเดฆเตเดงเดฟเดเตเดเดฟเดฐเดฟเดเตเดเดพเด, Freetype2 เดฒเตเดฌเตเดฐเดฑเดฟเดฏเตเด เดเดพเตป เดเตพเดชเตเดชเตเดเตเดคเตเดคเดฟเดฏเดฟเดเตเดเตเดฃเตเดเต. เดเตปเดกเตเดฐเตเดฏเดฟเดกเดฟเดจเตเดณเตเดณ เดเดฟเดคเตเดคเดฌเดฟเตฝ เดเดพเตป เดเดฐเต เดฑเตเดกเดฟเดฎเตเดฏเตเดกเต เดเดฃเตเดเตเดคเตเดคเดฟ, เดชเดเตเดทเต เด เดคเต เดชเตเดฐเดตเตผเดคเตเดคเดฟเดเตเดเดฟเดฒเตเดฒ, เดเดจเดฟเดเตเดเต เดเดจเตเดคเตเดเตเดเดฟเดฒเตเด เดฎเดพเดฑเตเดฑเตเดฃเตเดเดคเตเดฃเตเดเต. เดเดเตเดเตพ เดเดฐเต เดกเดฏเดฑเดเตเดเดฑเดฟ เดเดชเตเดชเต/src/main/assets เดเดจเตเดจเดฟเดตเดฏเตเด เดธเตเดทเตเดเดฟเดเตเดเตเดจเตเดจเต. เดเดเตเดเตพ เด เดคเดฟเตฝ เดเดเตเดเดณเตเดเต เดตเดฟเดญเดตเดเตเดเตพ เดธเตเดฅเดพเดชเดฟเดเตเดเตเดจเตเดจเต (เดซเตเดฃเตเดเตเดเตพ, เดธเตเดชเตเดฐเตเดฑเตเดฑเตเดเตพ, 3D เดฎเตเดกเดฒเตเดเตพ).
เดเดจเดฟ เดจเดฎเตเดเตเดเต เดเตปเดกเตเดฐเตเดฏเดฟเดกเดฟเดจเดพเดฏเดฟ Freetype2 เดเตเตบเดซเดฟเดเตผ เดเตเดฏเตเดฏเดพเด. เดเตปเตเดฑเต เดเดฟเดคเตเดคเดฌเดฟเตฝ เดจเดฟเดจเตเดจเต เดกเตเตบเดฒเตเดกเต เดเตเดฏเตเดฏเตเด
เด
เดตเดฒเดเดฌเด: www.habr.com