This repository has been archived by the owner on May 21, 2023. It is now read-only.
forked from xyzz/openmw-android
-
Notifications
You must be signed in to change notification settings - Fork 6
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
67 changed files
with
3,892 additions
and
617 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,61 +1,53 @@ | ||
# OMW (неофіційна збірка openmw для android) | ||
# ВАЖЛИВА ІНФОРМАЦІЯ - У зв'язку з нападом росії на територію України, я припиняю підтримку ціеї програми на російскій мові! | ||
# ВАЖЛИВА ІНФОРМАЦІЯ - У зв'язку з нападом росії на територію України, я припиняю підтримку цієї програми на російській мові! | ||
|
||
Автор оригінального коду припинив підтримку. Тепер ви перебуваєте на сторінці форка цієї програми. Я не готовий дати 100% гарантію, що програма буде працювати ідеально у вас. | ||
|
||
Я не є офіційним членом розробників OpenMW. Якщо у вас виникли проблеми з роботою цього додатка на вашому смартфоні, я щиро прошу, НЕ повідомляли про розробників OpenMW, вони офіційно не підтримують цей порт. Будь ласка, поставтеся з розумінням. Спасибі. | ||
Я не є офіційним членом розробників OpenMW. Якщо у вас виникли проблеми з роботою цього додатка на вашому смартфоні, я щиро прошу, НЕ повідомляли про розробників OpenMW, вони офіційно не підтримують цей порт. Будь ласка, поставитися з розумінням. Спасибі. | ||
|
||
Існує два кроки для створення OpenMW для Android. Першим кроком є створення бібліотек C/C++. Другим кроком є створення програми запуску Java. | ||
|
||
# Передумови | ||
# Підготовка до гри | ||
|
||
Вам знадобляться встановлені стандартні інструменти, які, ймовірно, у вас вже є (bash, gcc, g++, sha256sum, unzip). | ||
Для того, щоб грати в гру, яка має назву The Elder Scrolls III: Morrowind на вашому Android пристрої, у вас в першу чергу повинна бути ліцензійна копія самої гри, яку ви можете придбати у магазинах Steam чи GOG. Посилання на придбання ліцензії за посиланнями на вибір. | ||
https://store.steampowered.com/app/22320/The_Elder_Scrolls_III_Morrowind_Game_of_the_Year_Edition/ | ||
https://www.gog.com/game/the_elder_scrolls_iii_morrowind_goty_edition | ||
|
||
CMake 3.6.0 або новіша версія **потрібна**, ви можете завантажити останню версію [тут](https://cmake.org/download/) (і розмістити у своєму `PATH`), якщо ваш дистрибутив постачається із застарілою версія. | ||
Далі вам потрібно завантажити на свій телефон з вашого ПК папку з ресурсами гри, яка має назву "Data Files". | ||
Після цього ви можете запустити лаунчер гри. | ||
|
||
Крім того, щоб створити програму запуску, вам знадобиться встановлений Android SDK. Рекомендується використовувати Android Studio, яка може налаштувати його для вас (див. крок 2). | ||
# Налаштування в лаунчері | ||
|
||
# Крок 1: Створіть бібліотеки | ||
Мова - тут ви можете настроїти мову, на якій у вас файли гри. | ||
|
||
Перейдіть до каталогу `buildscripts` і запустіть `./build.sh`. Сценарій автоматично завантажить набір інструментів Android і всі залежності, а також скомпілює та встановить їх. | ||
Файли гри - тут потрібно вибрати директорію, куди ви завантажили файли гри, це повинен буди каталог, в якому є morrowind.ini та папка Data Files. | ||
|
||
# Крок 2: Створіть програму запуску Java | ||
Моди - тут ви можете вибрати додаткові моди та ресурси гри. | ||
|
||
Щоб отримати файл APK, який можна встановити, відкрийте каталог `openmw-android` в Android Studio та запустіть проект. | ||
Екранне керування - тут можно налаштувати всі елементи екранного керування за своїм смаком. | ||
|
||
Крім того, якщо у вас не встановлена Android Studio або ви не хочете її використовувати, запустіть `./gradlew assembleDebug` з кореневого каталогу цього репозиторію. Отриманий файл .apk, розташований за адресою `./app/build/outputs/apk/debug/app-debug.apk`, можна перенести на пристрій та встановити. | ||
Режим керування - тип керування у грі. Джойстик - керування імітуе роботу тачпада на ноутбуці. Тачскрін - керування більш класичне для пристроїв з сенсорним екраном. Гібрид - поєднує всі переваги кожного з типів (тип керування за дефолтом). | ||
|
||
# Примітки для розробників | ||
Масштаб інтерфейсу - можно налаштувати масштаб ігрового інтерфейсу (окна, текст), якщо текст дуже маленький, або навпаки, дуже великий масштаб та текст не поміщається в єкран. | ||
|
||
Сховати екранне керування - якщо включити, на екрані не буде жодного елементу керування. Добре підходить для гри на геймпаді та на смарт-тв. | ||
|
||
Відображати всі кнопки - якщо включити, на екрані завжди будуть відображатись всі основні кнопки гри. Коли вимкнено - верхній ряд кнопок схований, його можно визвати під час гри нажавши на іконку з трїома рисочками. | ||
|
||
# Налагодження рідного коду | ||
Увімкнути швидкі кнопки - можна вивести на єкран додаткові кнопки (цифри від 0-9). | ||
|
||
Ви можете налагодити рідний код за допомогою `ndk-gdb`. Щоб використовувати його, після того, як ви створили і бібліотеки, і apk, і встановили apk, запустіть програму і нехай вона залишиться в головному меню. Потім `cd` до `app/src/main` і запустіть `./gdb.sh [arch]`. Змінна `arch` має відповідати бібліотеці, яку використовуватиме ваш пристрій (один із `arm`, `arm64`, `x86_64`, `x86`; `arm` є за замовчуванням). | ||
Увімкнути FN кнопки - можна вивести на єкран додаткові кнопки (F1, F3, F4, F10, F11). | ||
|
||
Це також автоматично дозволяє gdb використовувати нерозчіслені бібліотеки, тож ви отримуєте правильні символи, посилання на вихідний код тощо. | ||
Экран завжди увімкнено - якщо включено, єкран буде працювати постійно, поки ви не вийшли з гри, в іньшому разі, єкран буде з годом гаснути. | ||
|
||
# Запущений Address Sanitizer | ||
Графічна бібліотека - на вибір два варіанта вивода зображення на єкран, GLES1 - цей варіант дуже устарілий та вмикати його треба лише тоді, коли у вас є проблеми з продуктивністю. GLES2 - оптимальний варіант для гри. | ||
|
||
Щоб зібрати все з ASAN:b267e232cd7a370ea45d096a551fcdab0d55a3e2 | ||
Деталізація LOG файлу - як що у вас е якісь проблеми з модами чи щось у грі працюе погано, можно включити LOG та подивитись проблему у вайлі openmw.log, який знаходится в діректорії OMW. | ||
|
||
``` | ||
# Очистіть попередню збірку | ||
./clean.sh | ||
# Створення з увімкненим ASAN і символами налагодження | ||
./build.sh --ccache --asan --debug | ||
# Або: ./build.sh --ccache --asan --debug --arch arm64 | ||
``` | ||
|
||
Потім відкрийте Android Studio, скомпілюйте та встановіть проект. | ||
|
||
Щоб отримати символізований вихід: | ||
|
||
``` | ||
adb logcat | ./tool/asan_symbolize.py --demangle -s ./symbols/armeabi-v7a/ | ||
# Або: adb logcat | ./tool/asan_symbolize.py --demangle -s ./symbols/arm64-v8a/ | ||
``` | ||
Також, якщо натиснути у верхній правій частини лаунчеру на іконку "три крапки", зʼявиться меню, в якому ви можете зробити скидання налаштувань а також вибрати готовий пресет графічних налаштувань під ваш гаджет. Рекомендований пресет - сбалансований. Якщо у вас слабкий гаджет, ви можете вибрати пресет "продуктивність", та навпаки, якщо у вас дуже потужний девайс, виберіть "Якість зображення" та насолоджуйтесь дуже високою якістю графіки. | ||
|
||
# Про це програмне забезпеченя | ||
|
||
Оригінальний код Java, написаний Sandstranger та xyzz. Білдскипти були написані Sandstranger і bwhaine. | ||
|
||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.