summaryrefslogtreecommitdiffstats
path: root/platform/iphone/export/export.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Remove obsolete GLES3 backendRémi Verschelde2020-02-131-4/+2
| | | | | | | | | | | | | | Due to the port to Vulkan and complete redesign of the rendering backend, the `drivers/gles3` code is no longer usable in this state and is not planned to be ported to the new architecture. The GLES2 backend is kept (while still disabled and non-working) as it will eventually be ported to serve as the low-end renderer for Godot 4.0. Some GLES3 features might be selectively ported to the updated GLES2 backend if there's a need for them, and extensions we can use for that. So long, OpenGL driver bugs!
* Texture refactorJuan Linietsky2020-02-111-1/+1
| | | | | | | | -Texture renamed to Texture2D -TextureLayered as base now inherits 2Darray, cubemap and cubemap array -Removed all references to flags in textures (they will go in the shader) -Texture3D gone for now (will come back later done properly) -Create base rasterizer for RenderDevice, RasterizerRD
* Merge pull request #34140 from bruvzg/ios_auto_icons_and_loadscreensRémi Verschelde2020-02-101-25/+166
|\ | | | | [iOS] Option to automatically generate icons and launch screens
| * [iOS] Adds export options to automatically generate iOS icons and launch ↵bruvzg2019-12-061-25/+166
| | | | | | | | screens from the project icon and boot splash.
* | Remove duplicate ERR_PRINT macro.Marcel Admiraal2020-02-051-4/+4
| |
* | Export: Improve usability of command line interfaceRémi Verschelde2020-01-071-15/+20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | I'm barely scratching the surface of the changes needed to make the --export command line interface easy to use, but this should already improve things somewhat. - Streamline `can_export()` templates check in all platforms, checking first for the presence of official templates, then of any defined custom template, and reporting on the absence of any. Shouldn't change the actual return value much which is still true if either release or debug is usable - we might want to change that eventually and better validate against the requested target. - Fix discrepancy between platforms using `custom_package/debug` and `custom_template/debug` (resp. `release`). All now use `custom_template`, which will break compatibility for `export_presets.cfg` with earlier projects (but is easy to fix). - Use `can_export()` when attempting a command line export and report the same errors that would be shown in the editor. - Improve error reporting after a failed export attempt, handling missing template and invalid path more gracefully. - Cleanup of unused stuff in EditorNode around the export workflow. - Improve --export documentation in --help a bit. Fixes #16949 (at least many of the misunderstandings listed there). Fixes #18470.
* | Update copyright statements to 2020Rémi Verschelde2020-01-011-2/+2
| | | | | | | | | | | | | | | | | | | | | | Happy new year to the wonderful Godot community! We're starting a new decade with a well-established, non-profit, free and open source game engine, and tons of further improvements in the pipeline from hundreds of contributors. Godot will keep getting better, and we're looking forward to all the games that the community will keep developing and releasing with it.
* | Change bundle name rules on iOS to match Apple's requirementsJonas Bernemann2019-12-141-41/+1
|/ | | | | | | | | | Changed the bundle identifier verification to match the official verficiation. https://developer.apple.com/documentation/bundleresources/information_property_list/cfbundleidentifier This help developers to migrate existing games to godot without constantly having to change the bundle identifier in the generated XCode project.
* iOS: Disable armv7 as target arch by defaultRémi Verschelde2019-12-061-1/+1
| | | | | | | | | | | | | | | We no longer compile for armv7 and x86 in the official export templates, as those architectures are no longer relevant for iOS. If users really want to support armv7 (used on devices from before September 2013, e.g. iPhone 5), they can still build their own templates and toggle the option. We might remove the option altogether in a later release to avoid the confusion for users that might tick the checkbox without having compiled their own templates. Fixes #34135.
* [iOS] Add export options to control external access to user data.bruvzg2019-12-031-0/+7
|
* iOS modular build and export implementation.bruvzg2019-12-011-1/+54
|
* Merge pull request #32051 from qarmin/some_error_explanationRémi Verschelde2019-09-251-4/+4
|\ | | | | Added some obvious errors explanations
| * Added some obvious errors explanationsqarmin2019-09-251-4/+4
| |
* | Changed some code found by Clang Tidy and Coverityqarmin2019-09-221-5/+5
|/
* Replace 'ERR_EXPLAIN' with 'ERR_FAIL_*_MSG' in "platform", ↵Robin Hübner2019-08-091-4/+2
| | | | "modules/gdnative", "modules/gdscript" directories.
* Changed some code showed in LGTM and Coverageqarmin2019-07-201-1/+2
|
* Add microphone privilege settings support back into export and add privilege ↵Bastiaan Olij2019-07-061-2/+6
| | | | exist check to camera server for iOS
* Merge pull request #29815 from NilsIrl/plus_file_1Rémi Verschelde2019-07-011-2/+2
|\ | | | | Replace ` + "/" + ` with `String::file_add()`
| * Replace ` + "/" + ` with `String::file_add()`Nils ANDRÉ-CHANG2019-06-231-2/+2
| |
* | ARKit for Godot 3.2BastiaanOlij2019-06-301-4/+25
| | | | | | | | | | | | | | This PR introduces support for ARKit to the iOS version of Godot. ARKit is Apples Augmented Reality platform. This PR brings in support for ARKit 1.0 and implements a few ARKit 2.0 features. It requires iOS 11 to run but should not prevent Godot from running on older versions as long as ARKit remains unused.
* | Allow '-' character in iOS reverse DNS identifiers dissallow underscores.Nicholas Thompson2019-06-251-2/+2
|/
* Fix error macro calls not ending with semicolonRémi Verschelde2019-06-111-1/+1
| | | | | | | It's not necessary, but the vast majority of calls of error macros do have an ending semicolon, so it's best to be consistent. Most WARN_DEPRECATED calls did *not* have a semicolon, but there's no reason for them to be treated differently.
* Allow project export to be canceledGeorge Marques2019-05-181-6/+16
|
* Small fixes to static analyzer bugsqarmin2019-04-041-1/+1
|
* Fix directory check when exporting projectvolzhs2019-03-061-1/+1
| | | | Fix #26702
* Merge pull request #26633 from akien-mga/driver-fallback-etcRémi Verschelde2019-03-061-0/+3
|\ | | | | Disable driver fallback to GLES2 by default
| * Disable driver fallback to GLES2 by defaultRémi Verschelde2019-03-051-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | GLES2 is not designed to be a drop-in replacement for the GLES3 backend, so the fallback mode has to be used knowingly. It *can* make sense for simple projects which make sure to handle the differences between both rendering backends, but most users should stick to one supported backend. By making it opt-in, we can now use this parameter to define whether to export ETC textures to Android and iOS when using GLES3 + Fallback. When using GLES3 without Fallback on Android, set the proper min GLES version in the AndroidManifest. Also made the option boolean and renamed it for clarity and to avoid conflict with the previous String option (which would always evaluate as "true" otherwise). Fixes #26569.
* | Merge pull request #26626 from rluders/misleading-error-message-exportRémi Verschelde2019-03-051-0/+4
|\ \ | |/ |/| Fixing misleading error message when trying to export
| * Fixes misleading error message when trying to exportRicardo Lüders2019-03-051-0/+4
| | | | | | | | | | | | | | This patch fixes the misleading error message when users try to "export all" into an invalid destination path. Closes #26539
* | Remove microphone from export options and distribution plistSam Green2019-03-041-4/+0
|/
* Improve VRAM texture compression checks for mobile/webRémi Verschelde2019-03-031-10/+4
| | | | | | | | | | | For HTML5, we need to support S3TC if running on desktop, and ETC or ETC2 for mobile, so make this explicit. Add logic to check for ETC2 support on GLES3, and remove incorrect ETC feature for GLES3 on Android. Fix ETC check invalidating templates on HTML5. Fixes #26476.
* -Properly handle missing ETC support on exportJuan Linietsky2019-02-261-0/+6
| | | | | -Added ability for resource importers to save metadata -Added ability for resource importers to validate depending on project settings
* New export options iOSBastiaan Olij2019-02-161-2/+77
|
* ExportDialog: Make error messages translatableRémi Verschelde2019-01-211-12/+12
| | | | Also fix missing newlines that caused #24202.
* Make export valid when setting custom packages for iOSvolzhs2019-01-121-12/+18
| | | | | even no templates installed. all others export work as this already.
* Update copyright statements to 2019Rémi Verschelde2019-01-011-2/+2
| | | | Happy new year to the wonderful Godot community!
* Add checking required field for exporting iOSvolzhs2018-12-051-0/+70
| | | | without specifying Identifier, it will cause `can not be parsed` error on Xcode
* Show error if required fields are not filled when exporting iOSvolzhs2018-11-231-1/+17
|
* Export for OS X on OS X now lets you select .dmg or .zipMarcelo Fernandez2018-11-011-1/+5
|
* Fix warnings for comparison between signed and unsigned integers ↵Rémi Verschelde2018-09-271-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | [-Wsign-compare] Also turn off -Wsign-compare warnings in the future, we do not consider them important. Fixes the following GCC 5 warnings: ``` core/node_path.cpp:279:24: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] core/oa_hash_map.h:169:21: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] core/oa_hash_map.h:314:21: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] drivers/gles2/shader_gles2.cpp:985:23: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] drivers/gles3/rasterizer_storage_gles3.cpp:1075:25: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] drivers/pulseaudio/audio_driver_pulseaudio.cpp:343:34: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] editor/editor_plugin.cpp:525:21: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] editor/editor_properties_array_dict.cpp:747:25: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] editor/plugins/spatial_editor_plugin.cpp:2078:20: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] editor/plugins/spatial_editor_plugin.cpp:4096:27: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] editor/plugins/sprite_editor_plugin.cpp:100:20: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] modules/cvtt/image_compress_cvtt.cpp:122:23: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] modules/cvtt/image_compress_cvtt.cpp:134:77: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] modules/cvtt/image_compress_cvtt.cpp:339:25: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] modules/etc/image_etc.cpp:222:34: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] modules/gdnative/register_types.cpp:242:21: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] modules/gdnative/register_types.cpp:258:21: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] modules/opensimplex/simplex_noise.cpp:200:13: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] modules/opensimplex/simplex_noise.cpp:222:13: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] modules/opensimplex/simplex_noise.cpp:246:13: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] platform/android/export/export.cpp:1085:21: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] platform/android/export/export.cpp:1489:23: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] platform/android/export/export.cpp:1623:22: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] platform/iphone/export/export.cpp:206:20: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] platform/iphone/export/export.cpp:356:20: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] platform/iphone/export/export.cpp:406:20: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] platform/iphone/export/export.cpp:493:21: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] scene/3d/audio_stream_player_3d.cpp:420:23: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] scene/resources/audio_stream_sample.cpp:565:22: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] scene/resources/audio_stream_sample.cpp:571:22: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] servers/audio/audio_rb_resampler.cpp:156:36: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] ``` The following warnings were not fixed, as they implied casting for no gain: ``` core/io/packet_peer.cpp:228:38: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] core/io/resource_format_binary.cpp:109:11: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] drivers/gles2/rasterizer_scene_gles2.cpp:144:57: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] drivers/unix/file_access_unix.cpp:249:46: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] scene/3d/voxel_light_baker.cpp:889:14: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] scene/3d/voxel_light_baker.cpp:1020:14: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] scene/3d/voxel_light_baker.cpp:1154:14: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] scene/3d/voxel_light_baker.cpp:2255:38: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] scene/resources/bit_mask.cpp:336:25: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] servers/audio/audio_stream.cpp:141:49: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] servers/audio/audio_stream.cpp:150:19: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] servers/audio/audio_stream.cpp:154:19: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] servers/audio_server.cpp:86:21: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] servers/audio_server.cpp:89:17: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] ```
* Make core/ includes absolute, remove subfolders from include pathRémi Verschelde2018-09-121-7/+7
| | | | | | This allows more consistency in the manner we include core headers, where previously there would be a mix of absolute, relative and include path-dependent includes.
* Make some debug prints verbose-only, remove othersRémi Verschelde2018-08-241-2/+1
|
* Fix file hintsMarcin Zawiejski2018-08-231-11/+11
| | | | Fixes file hints so the file dialog actually displays the files with given extension (e.g. *.apk).
* BPTC supportelasota2018-08-211-0/+3
|
* Add PROPERTY_HINT_PLACEHOLDER_TEXT for String propertiesRémi Verschelde2018-08-201-5/+5
| | | | | | Use it to provide a better example for application identifiers on Android, iOS and macOS, where users thought they *had* to use this as a magic token.
* Reduce unnecessary COW on Vector by make writing explicitHein-Pieter van Braam2018-07-261-3/+3
| | | | | | | | | | | | | | | | | | | | | | | This commit makes operator[] on Vector const and adds a write proxy to it. From now on writes to Vectors need to happen through the .write proxy. So for instance: Vector<int> vec; vec.push_back(10); std::cout << vec[0] << std::endl; vec.write[0] = 20; Failing to use the .write proxy will cause a compilation error. In addition COWable datatypes can now embed a CowData pointer to their data. This means that String, CharString, and VMap no longer use or derive from Vector. _ALWAYS_INLINE_ and _FORCE_INLINE_ are now equivalent for debug and non-debug builds. This is a lot faster for Vector in the editor and while running tests. The reason why this difference used to exist is because force-inlined methods used to give a bad debugging experience. After extensive testing with modern compilers this is no longer the case.
* Removed unnecessary assignmentsWilson E. Alvarez2018-07-241-1/+5
|
* iPhone X support and iOS-related fixesRuslan Mustakov2018-04-111-33/+34
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Starting from April 2018 Apple no longer accepts apps that do not support iPhone X. For games this mainly means respecting the safe area, unobstructed by notch and virtual home button. UI controls must be placed within the safe area so that users can interact with them. This commit: - Adds OS::get_window_safe_area method that returns unobscured area of the window, where interactive controls should be rendered. - Reorganizes how launch screens are exported - the previous way was incorrect and modern iPhones did not pick up the correct screens and because of that used a non-native resolution to render the game. - Adds launch screen options for iPhone X. - Makes launch screens optional in the export template. If not specified, a white screen will be used. - Adds App Store icon (1024x1024) export option as it now has to be bundled with the app instead of being provided in iTunes Connect. - Fixes crash when launching games in iOS Simulator. It happened because controllerWasConnected callback came before the engine was initialized. Now in such case the controllers will be queued up and registered after initialization is done. - Fixes issue with the virtual keyboard where for some reason autocorrection panel would intersect with the keyboard itself and not allow you to use the top row of the keyboard. This is fixed by disabling autocorrection altogether. Closes #17358. Fixes #17428. Fixes #17331.
* Improve missing iOS loading screen error messageRuslan Mustakov2018-01-071-1/+1
|
* Update copyright statements to 2018Rémi Verschelde2018-01-011-2/+2
| | | | Happy new year to the wonderful Godot community!