Portar spel till Android. Datorspel för Android


Många utvecklare föredrar att inte skapa nya spel från början mobila enheter, men helt enkelt överföra befintliga till den här plattformen. Ibland visar det sig bra, och ibland förstör bara beröring allt. Följande är exempel på lysande spel som utvecklare framgångsrikt har portat till iOS och Android.

Enkel portation från PC till surfplatta. Detta är en rik retro som är en favorit i segmentet. Spelet är mycket enkelt att hantera och känns bra utanför datorn.

Hearthstone är en av de största kortspel, som dessutom är gratis. Och allt detta är framgångsrikt förpackat av Blizzard.

Under flera år kunde fans av genren inte få en kvalitetsfotbollschef på sin iOS och Android-enheter. Och detta ögonblick har kommit. Högkvalitativ simulator med bekväm kontroll   redan redo.

I spelvärlden väntar en agent för gränskontroll i en fiktiv kommuniststat dig. Du måste studera ankomstdokumenten och fylla i alla nödvändigt arbeteför att förhindra inträde av oönskade gäster. Utifrån låter det tråkigt, men i praktiken har vi att göra med mänskliga öden, detta är ett av de mest spännande mobilspel.

Kanske är detta en av de bästa rollspelsom någonsin har skapats. Det tar dig direkt till en fantastisk och spännande värld som är perfekt synkroniserad med iOS eller Android.

Plants vs Zombies är kanske ett av de största och samtidigt dumma namnen i mobilspelens värld. Jag tror inte att du en dag kan bli trött på att skära av zombiehuvuden med flygkål. Om du inte har provat dig i det här underbara spelet, tveka inte och korrigera situationen!

Här och strategi och taktik, och en hel del vapen, och utlänningar, och till och med en hel del rymdskepp. Spelet är så bra att det är omöjligt att motstå.

Bastion erbjuder inte nya eller förbättrade funktioner i RPG-spel, men det kan behaga med mycket coola kläder. Den post-apokalyptiska fantasyspelvärlden ser bra ut och valet mellan virtuella eller beröringskontroll   bara obehagligt glädjer alla.

Utseendet på Mario på iOS kan på några dagar locka Mario Kart på App store. Men Sonic & All-Stars Racing är verkligen coolt och ger samma känslor som konsolversionen.

Goos värld

Spelet lanserades ursprungligen på PC och Wii och ett år senare i App Store. World of Goo är ett verkligt slående exempel på applikationens portabilitet på iOS och Android. Tryck på enhetenpassar bäst för det här spelet.

Början av sin resa med en PC och Mac, innan de flyttade till 3DS, var många oroliga för att en komplex pusselplattform med tyngdkraftsbyte inte kunde förvandlas på iOS och Android. På mirakulöst sätt visade sig allt, möta VVVVVV.

Redan tre månader efter debuten på PS Vita känns Severed redan bra på iOS. Enligt många började spelet till och med känna sig bättre på en mobil plattform. Fördjupa dig i en surrealistisk berättelse i den första personen på jakt efter äventyr.

CounterSpy

CounterSpy är en lätt avskalad version av konsolen originalet, men det har bäst allt bäst och nödvändigt. Detta är en fantastisk stealth-plattformsspelare med bra funktionalitet.

Om du inte har spelat det här spelet, kom till dig! En vansinnigt känslomässig skapelse som känns lika säker på en iPad som på en dator.

Den totala cirkulationen av spel uppgår till cirka 1000 timmars speltid som krävs för att slutföra alla delar av serien. En annan högkvalitativ fortsättning av det populära världsomspännande projektet inom JRPG-genren

Dragon Quest VIII

Liksom Final Fantasy IX känns det här spelet bra på iOS och Android. ny utseende, snabbspara system och JRPG-genren.

Det är mer än bara en plattformsspelare. Limbo, med sin svartvita arthousestil, är ett av de vackraste mobilspel som någonsin har gjorts.

Spelet skapades av de legendariska människor som skapade Bastion. Transistor har alla möjligheter till lång livslängd och är perfekt portad till iOS. Ibland kryper även tvivel om att datorn är dess ursprungliga plattform.

Detta är en produkt som definitivt måste testas. Tack vare högkvalitativ rendering, ljudbehandling och korrekt spel har spelet blivit så populärt på PC-, konsol- och surfplattformar.

Monkey Island 2: Sp. Edition

Monkey Island 2 har alltid varit ett av de bästa äventyrsspel. Detta återstår till idag, bara projektet fick en grafisk översyn och nytt system   kontroll, trevlig vid beröringen än vad som har blivit ännu högre kvalitet.

Ghost Trick: Phantom Detective

Spelet är beroendeframkallande från början. Du måste lösa problem som är förknippade med tidens manipulation för att genomföra ditt eget mord. Ghost Trick känns bra på iOS, precis som på Nintendo DS 2011.

The World Ends With You: Solo Remix

Galen röran som bäst. Lämplig för spelet JRPG-genren och välutvecklade stridssystemet ger spelet sitt intresse.

Might & Magic: Clash of Heroes

Det är meningsfullt att diskutera Might & Magic, också i verkligheten att iOS-, Android-plattformen är bäst lämpad för detta spel. Gameplay i RPG-genren, med mycket pussel och högkvalitativ 2D-grafik, väntar redan i Clash of Heroes.

Geometry Wars 3: Dimensions

Om du inte hade upplevt det här spelet tidigare, skulle du aldrig ha sagt att det står på surfplattformen. Detta är en 3D-skytte av mycket hög kvalitet. Geometry Wars är ett funktionellt, men också lättanvänt projekt.

Kostymsökning

Vi är vana vid att RPG-genren leder till storhet och epos, men i Costume Quest är allt tvärtom, du återvänder till en barns och oförglömlig tid. Inuti spelet finns det en mycket mild och känslomässig atmosfär som känns bra på iOS.

Denna underbara kollektion presenterar en samling spel som redan har blivit kända för spelare på konsolen. Det här är platsen där du hittar ditt favorit datorspel, bara på Android-plattformen. Du kan spara mycket av din personliga tidssökning, för nu behöver du inte ylla hela Internet på jakt efter datorspel för Android-surfplattor, de är alla tillgängliga för nedladdning från ett ställe - vår portal. Det är värt att notera att något android spel   genomgår flera viruskontroller och efter det publiceras på webbplatsen. Varje leksak kan laddas ner gratis och med direktlänk, för detta behöver du inte ens registrering och SMS.

Om du spelade lite cool leksak på konsolen och det finns i vår samling, se till att ladda ner den, eftersom våra anställda bara väljer de mest värdefulla leksakerna i samlingen. Naturligtvis finns det ett stort utbud av spel, du måste möta både en armé av zombies och andra monster. Du reser till olika platser och fullbordar farliga uppdrag. Du kan hitta både en arkad- och en mördarehandling, där korten helt enkelt vrider av fiender. Var extremt försiktig, du måste övervaka miljön, dramatiskt förändra din rörelse och samla in nödvändiga förbättringar. Vad kan jag säga, i varje spel är allt annorlunda, både historien och spelet, du måste titta i den detaljerade beskrivningen. Du kommer säkert att använda sökfiltren för att hjälpa dig att välja rätt spel. Om du är en fan av helt nya leksaker för Android, sortera sedan efter utgivningsår, och om du är en anhängare av populära applikationer, öppna sedan delen av populära datorspel på Android-surfplattor.

Våra anställda väljer endast det bästa från allt nytt innehåll och publicerar dessa applikationer på webbplatsen. Några dagar efter det officiella släppet i Spela marknaden, detta spel kan laddas ner från vår portal och är helt gratis. Full version   Du kan ladda ner den genom att klicka på lämplig knapp, för dessa åtgärder behöver du inte registrera dig. Värt att notera operativt arbete   våra journalister som skriver detaljerade beskrivningar   till varje spel. Naturligtvis, om du stötte på underhållning på konsolen, vet du redan vad du kommer att göra, och om spelet är helt nytt för dig kommer det att vara användbart att lära sig om spelet och den tekniska delen. Gratis datorspel för Android kommer att förvåna dig, först och främst, med dess grafik. Detta gäller för dem i vår samling, eftersom vi har förberett det bästa för dig.

Att skapa ett spel är en spännande och informativ process. Detta märks särskilt när du gör en nyinspelning av "klassikerna" själv, styrd av originalets idéer och de dussintals timmar som har spenderats på kampanjen. Jag hade inte någon betydande utvecklingsupplevelse för Android "a, så skapandet av en fungerande" som den ska "-applikation för surfplattan såg till en början ganska dimmig, men inte mindre attraktiv. Om du har tid och kapacitet kan du damma bort gamla spel, fett och lim, lägger till stöd för "stora" upplösningar och det visar sig att de inte ser sämre ut än moderna produkter som släppts ut på marknaden, även med RGB565-paletten utan en alfakanal. Jag antog att det skulle falla fallgropar och noggrant dolda raker som ligger t Honko vid designtillfället, men smärtsamt stryk på huvudet, är det nödvändigt att köra spelet på riktig hårdvara. Så mycket är inte tillräckligt, så det är en debugger och nya utmaningar har bara stärkt viljan att uppnå detta mål. Under snittet blir historien om hur det hela fungerade.


  Det är värt att omedelbart varna för att det antagligen kommer att vara en historia om cyklar, jag har inte kommit på något som inte google på Internet. Det är inte troligt att Reader kommer att se nya lösningar eller megateknologier, men kommer att hitta beprövade instruktioner för att bygga en applikation med SDL1 / 2 för Android.


3. skapa en konfigurationsfil för att bygga spelet genom libsdl-andlroid

I källmappen måste du skapa eller kopiera filen AndroidAppSettings.cfg från ett annat projekt, nedan har jag gett innehållet i min config
   kommentarer är föremål för radering, också utelämnade jag standardinställningarna
  # Programinställningarna för Android   libSDL-port
  # Namn som ska visas för användaren
  AppName \u003d "CaesarIA"
  # paketnamn
  AppFullName \u003d net.dalerank.caesaria
  # intern version av applikationen
  AppVersionCode \u003d 1740
  # den här versionen kommer att visas för användaren
  AppVersionName \u003d "0.3.1740"
  # här kan du ange ett lokalt eller fjärrarkiv som ska packas upp efter installationen
  AppDataDownloadUrl \u003d "!! Speldata är 100 Mb | cache.zip"
  # version av biblioteket som applikationen byggs med (version 2.0 fungerar inte)
  LibSdlVersion \u003d 1.2
  # skärmorientering
  ScreenOrientation \u003d h
  # färgdjup, stöds 16/24/32 - 16 snabbast, av ögonskillnader märks inte
  VideoDepthBpp \u003d 16
  # Detta och de två nästa flaggorna ansvarar för att ansluta OpenGL till applikationer,
  # eftersom jag inte använder GL, är det meningslöst att ansluta dem
  NeedDepthBuffer \u003d n
  NeedStencilBuffer \u003d n
  NeedGles2 \u003d n
# flaggan ansvarar för att lagra texturer i rAM-minneom det inte gjorde problem på datorn
  # på android utan denna flaggtexturer kanske inte visas
  SwVideoMode \u003d y
  # musemulering, en flagga behövs för att de kommande två flaggorna ska fungera
  AppUsesMouse \u003d y
  # hantering av flera samtidiga klick
  AppUsesMultitouch \u003d y
  # emuleringsklick höger knapp   musen, tryck på det andra fingret
  AppNeedsTwoButtonMouse \u003d y
  # markörvisning
  ShowMouseCursor \u003d n
  # faktiskt, ja borde vara här, men när den här flaggan var på, togs ingångsfältet inte bort
  AppNeedsTextInput \u003d n
  # tillåtelse att läsa från enheten
  AccessSdCard \u003d y
  # om cachen dras från Internet måste du ställa in den till ja
  AccessInternet \u003d n
  # antal inbyggda virtuella knappar   SDL, jag använder mitt GUI, så det finns inga knappar
  AppTouchscreenKeyboardKeysAmount \u003d 0
  # fördröjning av SDL-stänkskärmen innan du startar applikationen
  StartupMenuButtonTimeout \u003d 3000
  # under vilken abi kommer applikationen att byggas
  MultiABI \u003d armeabi-v7a
  # här måste du ange biblioteket. förutom sdl, som behövs för att applikationen ska fungera
  CompiledLibraries \u003d "sdl_mixer sdl_ttf lzma ogg"
  # ytterligare sammanställningsflaggor, jag har RTTI och undantag aktiverade
  AppCflags \u003d "- O2 -finline-funktioner -frtti -fexceptions"
  # här är mapparna där du behöver leta efter källkoder för montering, utöver den nuvarande
  AppSubdirsBuild \u003d "dep dep / smk dep / aes dep / lzma dep / bzip2 dep / libpng source source / vfs source / core source / gfx source / game source / gui source / sound source / scene source / pathway source / walker source / objects källa / bra källa / stadskälla / evenemangskälla / världskälla / religion "


4. ställa in sökvägen för sammanställning önskad applikation

   $ rm-projekt / jni / applikation / src
   $ ln-s caeasaria-projekt / jni / applikation / src


5. apk-montering

   $. / ChangeAppSettings.sh -a
   $ android uppdatera projekt -p projekt
   $. / build.sh


6. signera och installera applikationen på Android

Om allt kompileras framgångsrikt, kommer MainActivity - unsigned.apk-filen att visas i mappen commandergenius / project / bin, som du måste signera och installera på enheten.

  $ keytool -genkey -v -keystore rs.keystore -alias caesaria -keyalg RSA -keysize 2048-validitet 10000
  $ jarsigner -verbose -sigalg SHA1medRSA -digestalg SHA1 -keystore rs.keystore ~ \u200b\u200b/ projects / commandergenius / project / bin / MainActivity-release-unsigned.apk caesaria
  $ mv ~ / projects / commandergenius / project / bin / MainActivity-release-unsigned.apk ~ / projects / caesaria.apk
  avinstallera $ adb net.dalerank.caesaria
  $ adb installera ~ / projects / caesaria.apk

fallgropar
0. Definition av miljön: först måste du bestämma i vilken miljö Windows, Linux eller Linux Android kommer att fungera.
  Lösning: Kontrollera om ANDROID / __ ANDROID__ definierar.

1. Loggar: du kan se felmeddelanden och annan utmatning abd logcatmen som det visade sig standardverktyg   som stdout / printf inte fungerar, kan du naturligtvis använda logotypens utgång till en fil och titta på den redan, men jag ville ha lite mer bekant felsökning.
  Lösning: anslut sidfilen till androidloggarna #include , och för att visa meddelandet använder vi funktionen
   __android_log_print (ANDROID_LOG_DEBUG, CAESARIA_PLATFORM_NAME, "% s", str.c_str ());

Med den bekanta printf-syntaxen.

2. Använda OpenGL: om någon behöver OpenGL, så bor hans närstående GLES på mobilplattformar.
  Lösning: anslut istället för standardhuvudfiler   och , det finns små skillnader i användningen av strukturer och rendering, men i princip fungerar koden (den enkla koden som jag använde) nästan oförändrad.

3. Händelsehändelse: händelsen SDL_MOUSEBUTTONUP försvinner när du flyttar fingret över skärmen, det kan vara en brist i själva libsdl-androidbiblioteket eller så förlorade jag det någonstans. Ibland manifesterades det i avsaknad av reaktion från gränssnittselementen på de handlingar du använder, till exempel efter rörelsen stannade vi vid knappen, som i teorin borde gå in i tillståndet om muspekaren är ovanför.
  Lösning: Speciellt för min applikation - när man monterade för Android, tillkom en tvångsuppdatering av tillståndet för element under markören när den senare rörde sig.

4. Litet gränssnitt: skärmupplösningen för moderna mobila enheter är jämförbar eller högre än upplösningen på monitorn som användes för 10-15 år sedan, men de fysiska dimensionerna är mycket mindre, och därför ser användargränssnittselementen i sig små ut och det kommer inte alltid att vara bekvämt att använda dem.
  Lösning: Att ändra gränssnittet är en ganska besvärlig uppgift och det är inte alltid möjligt att behålla det ursprungliga utseendet.




Ett drag är lika med två bränder(folkvisdom)
Det hela började med det faktum att en av pendlarna skickade en länk till utvecklingsgrenen, där han framgångsrikt lanserade spelet med det relativt färska SDL2-biblioteket, och innan detta användes versionen SDL1.2 - 2008 release. Jag måste säga att jag själv övervägde möjligheten att byta till en ny version, särskilt efter visning, vilket lovade normalt stöd för Mac och Android, som kallas "out of the box". Och sedan var det en minisemester på jobbet, tog en pulka med en större guide och en stor kopp kaffe, jag började överföra remake till en ny "motor".
  Jag vill inte uttråna läsaren med de tekniska detaljerna i flytten, bara på biblioteket med tillkomsten av hårdvarustöd ändrade arbetets ideologi, vilket i början orsakade vissa svårigheter tills jag blev van vid det. Flytten varade i en vecka kvällar och i slutändan var en korrigering av de återstående defekterna och grafiska artefakter. Ändringarna avslutades och församlingarna var förberedda för det "stora" operativsystemet, och det fanns återigen ett behov av att läsa igenom manualerna för att bygga applikationen för Android, eftersom libsdl-android normalt är anpassad för att fungera med SDL1.2, och SDL2-stöd verkar överges (som författarna själva och skriv i readme)

Dold text

Libsdl.org har nu en officiell SDL 1.3 Android-port, som är nyare och
  Denna port är bättre lämpad för att skapa nya applikationer från grunden och fokuserar huvudsakligen
  på SDL 1.2 och sammanställa befintliga applikationer är det upp till dig att bestämma vilken port som är bättre.
  Även denna port utvecklas mycket långsamt, även om samma gäller för en officiell hamn.

Jag insåg sannolikheten i denna text när flera timmar ägnades åt att försöka starta porten i den gamla konfigurationen via libsdl-android. Nåväl, negativ erfarenhet är också erfarenhet: Jag kommer att använda de tillgängliga verktygen.

Försök nummer två, inte helt framgångsrik
  SDL2 innehåller redan alla nödvändiga konfigurationer för att bygga applikationen för Android, efter att ha läst vad som rekommenderas på den officiella webbplatsen kan du försöka samla in något. Återigen kommer det att finnas några steg, förutom att installera och konfigurera adt.

0. kopiera exemplet från SDL2-leveransen

  $ git klon bitbucket.org/dalerank/caesaria
   $ hg klon hg.libsdl.org/SDL
   $ mkdir caesaria / android
   $ cp sdl / android-projekt caesaria / android
   $ mkdir caesaria / android / libs
   $ mkdir caesaria / android / data
   $ cp SDL caesaria / android / libs

Varför görs alla dessa kopior ??? för att göra det lättare att räkna relativa vägar för bibliotek. I mappen Android / libs finns SDL och företaget, i mappen Android / data kommer det att finnas en applikationsikon.


1. skapa en mappstruktur för projektet

I mappen   android / android-project / jni   skapa symboliska länkar till applikationskomponenter

   $ ln -s ../../libs/SDL SDL
   $ ln -s ../../libs/SDL_mixer SDL_mixer
   $ ln -s ../../libs/SDL_net SDL_net
   $ ln -s ../../src/dep/aes aes
   $ ln -s ../../src/source-applikation
   $ ln -s ../../src/dep/bzip2 bzip2
   $ ln -s ../../src/dep/freetype freetype
   $ ln -s ../../src/dep/libpng libpng
   $ ln -s ../../src/dep/lzma lzma
   $ ln -s ../../src/dep/smk smk
   $ ln -s ../../src/dep/src src
   $ ln -s ../../src/dep/ttf ttf
   $ ln -s ../../src/dep/zlib zlib

Lite om vad jag skrev här:
  zlib behövs för att bygga freetype, vilket i sin tur behövs för SDL_ttf och kommer att ansvara för återgivning av teckensnitt.
  Smk-biblioteket behövs för att spela videor i smack-formatet, videor från det ursprungliga spelet är gjorda i detta format.
  Bzip, lzma och aes behövs för att arbeta med zip-arkiv.
  libpng krävs för att ladda strukturer för spelet.
  SDL, SDL_mixer, SDL_net ansvarar för att rita, arbeta med ljud respektive nätverk.
  ansökan innehåller källkoden för själva spelet, som kommer att sammanställas i biblioteket libapplication.so
  i src-mappen finns källorna till biblioteket libmain.so, men för det finns redan ett spets av java-samtal ovanför c-koden, vilket gör att vi lyckas starta och behaga användaren med en ljus bild.
  Projektinställningar och konfigureringar för ndk tillhandahålls redan vänligen av författarna till SDL2


2. skriva konfigs för montering av spelkomponenter

För att byggsystemet ska se vilka bibliotek vi behöver för att arbeta och montera dem, måste vi skriva konfigs för dem, som Makefile. Med hög sannolikhet kommer Android.mk redan att finnas i bibliotekets arkiv, eller de kan hittas på Internet. Jag var tvungen att lägga till build-configs för spelet och libsmk-biblioteket.

Android.mk för libsmk är mycket enkelt och kommer att vara förståeligt för människor som inte är relaterade till Android-programmering
# smk / Android.mk
  LOCAL_PATH: \u003d $ (ring min-dir)

Inkludera $ (CLEAR_VARS)

LOCAL_MODULE: \u003d smk
   $ (jokertecken $ (LOCAL_PATH) / *. c))

Konfigurationen innehåller en instruktion för att sammanställa alla filer med tillägget .c,   hittas i den aktuella mappen (för libsmk kommer det att vara jni / smk)

På liknande sätt skrivs konfigurationen för att bygga biblioteket, vilket kommer att representera själva spelet.

# applikation / Android.mk
  LOCAL_PATH: \u003d $ (ring min-dir)
  inkluderar $ (CLEAR_VARS)

LOCAL_MODULE: \u003d applikation

SDL_PATH: \u003d ../../libs/SDL
  SDL_MIXER_PATH: \u003d ../../libs/SDL_mixer
SDL_NET_PATH: \u003d ../../libs/SDL_net
  GAME_PATH: \u003d $ (LOCAL_PATH)
  DEP_PATH: \u003d ../dep

LOCAL_C_INCLUDES: \u003d \\
   $ (LOCAL_PATH) / $ (SDL_PATH) / inkludera \\
   $ (LOCAL_PATH) / $ (SDL_MIXER_PATH) \\
   $ (LOCAL_PATH) / $ (SDL_NET_PATH) / inkludera \\
   $ (LOCAL_PATH) / $ (FREETYPE_PATH) / inkludera \\
   $ (LOCAL_PATH) / $ (GAME_PATH) \\
   $ (LOCAL_PATH) / $ (DEP_PATH) \\
   $ (LOCAL_PATH) / $ (DEP_PATH) / libpng

  # Lägg till dina programkällfiler här ...
  LOCAL_SRC_FILES: \u003d $ (subst $ (LOCAL_PATH) /, \\
   $ (jokertecken $ (GAME_PATH) / *. cpp) \\
   $ (jokertecken $ (GAME_PATH) / core / *. cpp) \\
   $ (jokertecken $ (GAME_PATH) / vfs / *. cpp) \\
   $ (jokertecken $ (GAME_PATH) / objekt / *. cpp) \\
   $ (jokertecken $ (GAME_PATH) / gui / *. cpp) \\
   $ (jokertecken $ (GAME_PATH) / stad / *. cpp) \\
   $ (jokertecken $ (GAME_PATH) / gfx / *. cpp) \\
   $ (jokertecken $ (GAME_PATH) / events / *. cpp) \\
   $ (jokertecken $ (GAME_PATH) / world / *. cpp) \\
   $ (jokertecken $ (GAME_PATH) / sökväg / *. cpp) \\
   $ (jokertecken $ (GAME_PATH) / rullator / *. cpp) \\
   $ (jokertecken $ (GAME_PATH) / good / *. cpp) \\
   $ (jokertecken $ (GAME_PATH) / religion / *. cpp) \\
   $ (jokertecken $ (GAME_PATH) / scen / *. cpp) \\
   $ (jokertecken $ (GAME_PATH) / ljud / *. cpp) \\
   $ (jokertecken $ (GAME_PATH) / spel / *. cpp))

LOCAL_SHARED_LIBRARIES: \u003d SDL2 SDL2_mixer SDL2_net sdl_ttf pnggo lzma bzip2 aes smk
  LOCAL_CPP_FEATURES + \u003d undantag
  LOCAL_CPP_FEATURES + \u003d rtti
  LOCAL_LDLIBS: \u003d -lGLESv1_CM-logg

Inkludera $ (BUILD_SHARED_LIBRARY)

Det borde också vara tydligt, i LOCAL_C_INCLUDES läggs det till banor där du behöver leta efter sidhuvudfiler, i LOCAL_SRC_FILES lägger vi till filer med källkod,
  i LOCAL_SHARED_LIBRARIES skriver vi applikationsberoenden.

flaggor rtti, undantag   Ansvarig för att använda RTTI och undantag.


3. montering

$ cd android-projekt
   $ Android-uppdateringsprojekt -p. -t android-15
   $ ndk-build V \u003d 1
   $ ant
   $ ant installera


  Teoretiskt sett, efter att ha utfört de beskrivna stegen på den anslutna enheten eller emulatorn, ser du det installerade programmet.


rake
  1. Var ska man leta efter resurser ???
  Resursernas placering beror på OS-implementeringen, men i de flesta fall kommer mappen att vara tillgänglig för applikationen   / sdcard / Android / data / package_name / files, när du använder sökvägen direkt kan det finnas ett åtkomstfel eller ett filsökningsfel.
  Den fullständiga sökvägen till applikationskatalogen kan erhållas genom SDL_AndroidGetExternalStoragePath () -funktionen definierad i SDL_system.h-filen
  2. Använda fönsterflaggor.
Kombination SDL_WINDOW_OPENGL | SDL_WINDOW_SHOWN | SDL_WINDOW_BORDERLESS fungerar inte på alla enheter, ta bort SDL_WINDOW_OPENGL eller SDL_WINDOW_BORDERLESS och se vilken flagga kraschar programmet. Jag kan inte förklara vad detta beteende är kopplat till. Med flaggan SDL_WINDOW_SHOWN loggar den en-mot-en längs stockarna, som med alla flaggor, men sannolikheten för en krasch är mycket mindre.
  3. För många ljudkanaler.
  Det finns kraschar när du ringer funktionen SDL_mixer :: Mix_AllocateChannels (N\u003e 16) med ett fel att det är omöjligt att initialisera ljudet. Det är genom att minska det önskade antalet kanaler, hur jag löser problemet korrekt på detta sätt vet jag inte.
  4. stlport vs gnustl
  Crash när du använder stlport, stötte på det här felet när jag korsade en vektor med iteratorer på Nexus 7-emulatorn (Android 4.0.3). Återigen kan jag inte förklara faktumet med detta fel, jag bestämde mig för att använda gnustl när jag byggde applikationen.
  5. Min kungfu är starkare än din.
  Att använda ett bibliotek med ett namn som liknar namnet på det som redan finns i systemet kommer att ladda ett främmande bibliotek, vilket kanske inte gör det erforderliga funktioner. Felet visade sig på grund av att jag bygger min version av libpng.so, lösningen hittades på stackoverflow, den fixades genom att byta ut bibliotekets namn libpng.so   på libpnggo.so

Sammanfattningsvis ...
  Det fungerar! Nästan inte annorlunda från BB! Är jag nöjd Inte riktigt!

Faktum är att jag är krivoruyi takfiltar, skidfiltar går inte, men på surfplattan visade sig applikationen vara extremt långsam (10-12 fps för en extremt enkel bild, resultatet är tråkigt), jag tror att felet här är i händerna och okunnigheten på utrustningen. SDL är ett fantastiskt bibliotek i både reinkarnationer och mycket verkligen bra spel   använder det samt lägger till taggar

Gmbox fortsätter en serie artiklar där vi pratar om de bästa mobilspelen på plattformen Android   - de vackraste skyttarna, de snabbaste tävlingarna, de svåraste pussel, de mest beroendeframkallande RPG: erna och andra enastående representanter för deras genre. Tidigare talade vi om, och i dag kommer du att lära dig om de mest framgångsrika portarna från en PC till Android.

Det bästa twitch arkadspelet i vår tid, gjord av en intressant singelutvecklare med namn. För den rytmiska 8-bitars musiken måste spelaren snabbt flytta en liten triangel på ytan geometriska former i mitten av skärmen för att undvika kollision med väggar som kommer från alla sidor. Super Hexagon - en primitiv men spännande resa till spelbranschens ursprung. Något liknande kommer sannolikt att användas för att utbilda piloter av militära kämpar. Mycket svårt, men värt det.





Tre delar av Five Nights at Freddy's är en indiehistoria från en kristen spelutvecklare för barn som vände sig till den mörka sidan tack vare den berömda speljournalisten Jim Sterling, som kritiserade hur han skildrade barnleksaker i ett av sina projekt. skräck med deltagande av sinister animatronics - plyschdjur som kan röra sig. Spelaren måste tillbringa fem nätter i samma byggnad, men för att inte dö (från vilken det inte är särskilt tydligt, sannolikt bara av rädsla och en hjärtattack) måste du följa allt lokaler med hjälp av kameror och belysningsstyrning. Naturligtvis är inte tillräckligt batteriet på permanent belysning av byggnaden hela natten.



Otroligt populär virtuell sandlåda, gjord av skaparen Marcus Persson. Minecraft sätter spelaren i en slumpmässigt genererad värld och erbjuder att bygga in allt som kommer till minnet - slott, rymdskepp och portaler i andra dimensioner. Byggnader måste försvaras från flera typer av monster, till exempel långsamma och dumma zombies eller explosiva rankare som har blivit en symbol för spelet. Mobilversionen är märkbar bakom datorn och konsolen när det gäller innehåll (du kan bara spela med andra användare i lokalt wifi-nätverk), men det kan fortfarande fängsla i många timmar.



En klassisk äventyrsplattformare som kom ut på PC 1991. Huvudpersonen i rollen som en fysiker vid namn Leicester Knight Chaykin som ett resultat av ett misslyckat experiment faller på en planet i andra änden av universum och måste överleva genom att slåss mot utlänningar och hitta vägar ur många farliga situationer. Intressant nog serveras handlingen i spelet på ett ovanligt sätt: alla karaktärer som möter spelaren talar ett okänt språk.



Enkelt uttryckt är detta en 2D Minecraft med sidovy. Men Terraria är också intressant isolerat från sin äldre bror - här är det mycket mer intressant att slåss mot monster, bland vilka det finns ganska komplexa och unika chefer. Det senare efter segern lämnar spelaren med mer och mer kraftfull utrustning - detta är en annan aspekt där Terraria är mycket djupare än Minecraft. Annars är allt mycket lika: oändlig hantverk, en nästan helt förstörbar värld och de bredaste möjligheterna att experimentera och bygga egna slott. Multiuser-läge i mobilversion   Ja, men du kan bara spela det på det lokala trådlösa nätverket.







      2019 © gtavrl.ru.