From 7b4130667415ac6e9ece6eace2143e86f1bba127 Mon Sep 17 00:00:00 2001 From: luboslenco Date: Sat, 22 Feb 2020 19:23:42 +0100 Subject: [PATCH] iOS stubs --- Assets/readme/readme_ios.txt | 1 + Sources/arm/Config.hx | 4 ++-- Sources/arm/node/Material.hx | 4 ++-- Sources/arm/node/MaterialShader.hx | 2 +- Sources/arm/sys/File.hx | 4 ++-- Sources/arm/ui/BoxExport.hx | 2 +- Sources/arm/ui/BoxPreferences.hx | 2 +- Sources/arm/ui/UITrait.hx | 2 +- khafile.js | 20 +++++++++++++++----- 9 files changed, 26 insertions(+), 15 deletions(-) create mode 100644 Assets/readme/readme_ios.txt diff --git a/Assets/readme/readme_ios.txt b/Assets/readme/readme_ios.txt new file mode 100644 index 00000000..b0e2aa07 --- /dev/null +++ b/Assets/readme/readme_ios.txt @@ -0,0 +1 @@ +keepme diff --git a/Sources/arm/Config.hx b/Sources/arm/Config.hx index b2f2d9f2..f907d36f 100644 --- a/Sources/arm/Config.hx +++ b/Sources/arm/Config.hx @@ -50,7 +50,7 @@ class Config { raw.rp_bloom = false; raw.rp_gi = false; raw.rp_motionblur = false; - #if krom_android + #if (krom_android || krom_ios) raw.rp_ssgi = false; #else raw.rp_ssgi = true; @@ -61,7 +61,7 @@ class Config { if (disp != null && disp.width >= 3000 && disp.height >= 2000) { raw.window_scale = 2.0; } - #if krom_android + #if (krom_android || krom_ios) raw.window_scale = 2.0; #end #if arm_painter diff --git a/Sources/arm/node/Material.hx b/Sources/arm/node/Material.hx index 80621bd0..627e4289 100644 --- a/Sources/arm/node/Material.hx +++ b/Sources/arm/node/Material.hx @@ -1451,7 +1451,7 @@ class Material { } public static inline function vec1(v: Float): String { - #if (kha_webgl ||krom_android) + #if (kha_webgl || krom_android || krom_ios) return 'float($v)'; #else return '$v'; @@ -1459,7 +1459,7 @@ class Material { } public static inline function vec3(v: Array): String { - #if (kha_webgl ||krom_android) + #if (kha_webgl || krom_android || krom_ios) return 'vec3(float(${v[0]}), float(${v[1]}), float(${v[2]}))'; #else return 'vec3(${v[0]}, ${v[1]}, ${v[2]})'; diff --git a/Sources/arm/node/MaterialShader.hx b/Sources/arm/node/MaterialShader.hx index d02d8dcf..1358b93f 100644 --- a/Sources/arm/node/MaterialShader.hx +++ b/Sources/arm/node/MaterialShader.hx @@ -481,7 +481,7 @@ class MaterialShader { #else // kha_opengl - #if (kha_webgl || krom_android) + #if (kha_webgl || krom_android || krom_ios) var s = '#version 300 es\n'; if (shader_type == 'frag') { s += 'precision highp float;\n'; diff --git a/Sources/arm/sys/File.hx b/Sources/arm/sys/File.hx index 11955360..66f99570 100644 --- a/Sources/arm/sys/File.hx +++ b/Sources/arm/sys/File.hx @@ -18,7 +18,7 @@ class File { #end public static function readDirectory(path: String, foldersOnly = false): Array { - #if (krom_windows || krom_linux || krom_android) + #if (krom_windows || krom_linux || krom_android || krom_ios) return Krom.readDirectory(path, foldersOnly).split("\n"); #else var save = Path.data() + Path.sep + "tmp.txt"; @@ -54,7 +54,7 @@ class File { Krom.sysCommand('explorer "' + url + '"'); #elseif krom_linux Krom.sysCommand('xdg-open "' + url + '"'); - #elseif krom_android + #elseif (krom_android || krom_ios) Krom.loadUrl(url); #else Krom.sysCommand('open "' + url + '"'); diff --git a/Sources/arm/ui/BoxExport.hx b/Sources/arm/ui/BoxExport.hx index efeaef7c..fea35f2c 100644 --- a/Sources/arm/ui/BoxExport.hx +++ b/Sources/arm/ui/BoxExport.hx @@ -217,7 +217,7 @@ class BoxExport { } static function fetchPresets() { - #if krom_android + #if (krom_android || krom_ios) files = ["generic"]; diff --git a/Sources/arm/ui/BoxPreferences.hx b/Sources/arm/ui/BoxPreferences.hx index 41f48b54..645a22ff 100644 --- a/Sources/arm/ui/BoxPreferences.hx +++ b/Sources/arm/ui/BoxPreferences.hx @@ -54,7 +54,7 @@ class BoxPreferences { UITrait.inst.tagUIRedraw(); } - #if (!krom_android) + #if (!krom_android && !krom_ios) UITrait.inst.nativeBrowser = ui.check(Id.handle({selected: UITrait.inst.nativeBrowser}), "Native File Browser"); #end diff --git a/Sources/arm/ui/UITrait.hx b/Sources/arm/ui/UITrait.hx index c8ccfe02..52e20af3 100644 --- a/Sources/arm/ui/UITrait.hx +++ b/Sources/arm/ui/UITrait.hx @@ -132,7 +132,7 @@ class UITrait { public var viewportMode = ViewRender; public var hscaleWasChanged = false; public var exportMeshFormat = FormatObj; - #if krom_android + #if (krom_android || krom_ios) public var nativeBrowser = false; #else public var nativeBrowser = true; diff --git a/khafile.js b/khafile.js index b1a8f8ab..dbd2fdc2 100644 --- a/khafile.js +++ b/khafile.js @@ -1,5 +1,6 @@ let project = new Project("ArmorPaint"); let android = false; // Temp +let ios = false; // Temp project.addSources("Sources"); project.addLibrary("iron"); @@ -13,7 +14,7 @@ project.addAssets("Assets/themes/*", { notinlist: true, destination: "data/theme project.addDefine("arm_taa"); project.addDefine("arm_veloc"); project.addDefine("arm_particles"); -if (!android) { +if (!android && !ios) { project.addDefine("arm_data_dir"); } @@ -22,6 +23,10 @@ if (android) { project.addDefine("kha_android"); project.addDefine("kha_android_rmb"); } +else if (ios) { + project.addDefine("krom_ios"); + project.addDefine("kha_ios"); +} else if (process.platform === "win32") { project.addDefine("krom_windows"); } @@ -58,12 +63,14 @@ if (raytrace) { if (android) { project.addAssets("Assets/readme/readme_android.txt", { notinlist: true, destination: "{name}" }); } - -if (process.platform === "darwin") { +else if (ios) { + project.addAssets("Assets/readme/readme_ios.txt", { notinlist: true, destination: "{name}" }); +} +else if (process.platform === "darwin") { project.addAssets("Assets/readme/readme_macos.txt", { notinlist: true, destination: "INSTRUCTIONS.txt" }); } -if (process.platform !== "darwin" && !raytrace && !android) { +if (process.platform !== "darwin" && !raytrace && !android && !ios) { project.addDefine("rp_voxelao"); project.addDefine("arm_voxelgi_revox"); @@ -87,6 +94,9 @@ else { // painter, creator if (android) { + } + else if (ios) { + } else if (process.platform === "win32") { project.addAssets("Assets/bin/cmft.exe", { notinlist: true, destination: "data/{name}" }); @@ -104,7 +114,7 @@ else { // painter, creator project.addAssets("Assets/painter/export_presets/*", { notinlist: true, destination: "data/export_presets/{name}" }); project.addAssets("Assets/painter/keymap_presets/*", { notinlist: true, destination: "data/keymap_presets/{name}" }); - if (process.platform === "win32" && win_hlsl && !android) { + if (process.platform === "win32" && win_hlsl && !android && !ios) { project.addShaders("Shaders/painter/hlsl/*.glsl", { noprocessing: true, noembed: false }); } else {