mirror of
https://github.com/minetest/minetest.git
synced 2024-11-23 16:13:46 +01:00
7148834440
* added vector.rotate * added vector.forward_from_rotation and vector.up_from_rotation * added vector.forward_up_to_rotatiton * fixed some bugs and formatting with vector functions * shortened name of some new vector functions and added documentation * made vector.rotate not require a unit vector as axis * fixed crash with vector.forward_up_to_rot * renamed new vector functions, made vector.rotate apply a rotation matrix, old vector.rotate is now called vector.rotate_around_axis * documented vector function changes * removed some whitespace to appease luacheck * implemented and fixed optimization of vector.rotate_around_axis by SmallJoker * added some unit tests for rotation vector functions * clarified that rotation vectors are in radians and according to the left hand rule * hopefully appeased luacheck * renamed rotation_to_horizontal to forward_at_rotation, rotation_to_vertical to up_at_rotation * handled cases where sin or cos are 0 in rotation vector functions * added more comments * clarified documentation of rotation vector functions * added more unit tests * changed way in which vector.rotate_around_axis is adjusted for left handed coordinate systems * made vector.rotate_around_axis actually left handed * unrolled matrix multiplication * removed vector.forward_at_rotation and vector.up_at_rotation * prettified vector.rotate_around_axis, made previous commits not break anything * removed references to removed vector.forward_at_rotation and vector.up_at_rotation * removed documentation of removed vector functions * clarified documentation and fixed styling of rotation vector functions * restyled comments minorly * spelling fixes and some hopefully better comments * allowed 'up' to be missing from vector.directions_to_rotation and removed requirement for unit vectors as arguments * made vector.rotate_around_axis() right handed again for consistency * documented previous changes * made matrix multiplication actually multiply * renamed vector.directions_to_rotation() to vector.dir_to_rotation() * optimized a distance comparison * Fixed potential false positive in unit tests. Co-authored-by: NetherEran <nethereran@hotmail.com> |
||
---|---|---|
.. | ||
mkdocs | ||
client_lua_api.txt | ||
Doxyfile.in | ||
fst_api.txt | ||
lgpl-2.1.txt | ||
lua_api.txt | ||
main_page.dox | ||
menu_lua_api.txt | ||
minetest.6 | ||
minetestserver.6 | ||
mod_channels.png | ||
protocol.txt | ||
README.android | ||
texture_packs.txt | ||
world_format.txt |
Minetest: Android version ========================= Controls -------- The Android port doesn't support everything you can do on PC due to the limited capabilities of common devices. What can be done is described below: While you're playing the game normally (that is, no menu or inventory is shown), the following controls are available: * Look around: touch screen and slide finger * double tap: place a node or use selected item * long tap: dig node * touch shown buttons: press button * Buttons: ** left upper corner: chat ** right lower corner: jump ** right lower corner: crouch ** left lower corner: walk/step... left up right down ** left lower corner: display inventory When a menu or inventory is displayed: * double tap outside menu area: close menu * tap on an item stack: select that stack * tap on an empty slot: if you selected a stack already, that stack is placed here * drag and drop: touch stack and hold finger down, move the stack to another slot, tap another finger while keeping first finger on screen --> places a single item from dragged stack into current (first touched) slot Special settings ---------------- There are some settings especially useful for Android users. Minetest's config file can usually be found at /mnt/sdcard/Minetest. * gui_scaling: this is a user-specified scaling factor for the GUI- In case main menu is too big or small on your device, try changing this value. Requirements ------------ In order to build, your PC has to be set up to build Minetest in the usual manner (see the regular Minetest documentation for how to get this done). In addition to what is required for Minetest in general, you will need the following software packages. The version number in parenthesis denotes the version that was tested at the time this README was drafted; newer/older versions may or may not work. * Android SDK 29 * Android NDK r21 * Android Studio 3 [optional] Additionally, you'll need to have an Internet connection available on the build system, as the Android build will download some source packages. Build ----- The new build system Minetest Android is fully functional and is designed to speed up and simplify the work, as well as adding the possibility of cross-platform build. You can use `./gradlew assemblerelease` or `./gradlew assembledebug` from the command line or use Android Studio and click the build button. When using gradlew, the newest NDK will be downloaded and installed automatically. Or you can create a `local.properties` file and specify `sdk.dir` and `ndk.dir` yourself. * In order to make a release build you'll have to have a keystore setup to sign the resulting apk package. How this is done is not part of this README. There are different tutorials on the web explaining how to do it - choose one yourself. * Once your keystore is setup, enter build/android subdirectory and create a new file "ant.properties" there. Add following lines to that file: > key.store=<path to your keystore> > key.alias=Minetest