Iron example "edit" can't generate Android project


#1

i download examples armory3d/iron_examples it run ok for web, but when i try to generate project for android studio i get error

**Creating Kha project.

Exporting asset 1 of 7 (Material_data.arm).
Exporting asset 2 of 7 (Scene.arm).
Exporting asset 3 of 7 (arial.ttf).
Exporting asset 4 of 7 (mesh_Cube.arm).
Exporting asset 5 of 7 (simple_path.arm).
Exporting asset 6 of 7 (main.xml).
Exporting asset 7 of 7 (dark.css).
Compiling shader 1 of 2 (mesh.frag.glsl).
Compiling shader 2 of 2 (mesh.vert.glsl).
Compiling shader 1 of 8 (painter-colored.frag.glsl).
Compiling shader 2 of 8 (painter-colored.vert.glsl).
Compiling shader 3 of 8 (painter-image.frag.glsl).
Compiling shader 4 of 8 (painter-image.vert.glsl).
Compiling shader 5 of 8 (painter-text.frag.glsl).
Compiling shader 6 of 8 (painter-text.vert.glsl).
Compiling shader 7 of 8 (painter-video.frag.glsl).
Compiling shader 8 of 8 (painter-video.vert.glsl).
d:\iron_examples\iron\Sources/iron/data/WorldData.hx:179: characters 32-35 : Array<kha.FastFloat> should be haxe.ds._Vector.VectorData<Unknown<0>>
d:\iron_examples\iron\Sources/iron/data/WorldData.hx:179: characters 32-35 : Array<kha.FastFloat> should be java.NativeArray<Unknown<0>>
d:\iron_examples\iron\Sources/iron/data/WorldData.hx:179: characters 32-35 : For function argument 'data’
d:\iron_examples\iron\Sources/iron/data/WorldData.hx:189: characters 33-60 : Array<kha.FastFloat> should be haxe.ds._Vector.VectorData<Unknown<0>>
d:\iron_examples\iron\Sources/iron/data/WorldData.hx:189: characters 33-60 : Array<kha.FastFloat> should be java.NativeArray<Unknown<0>>
d:\iron_examples\iron\Sources/iron/data/WorldData.hx:189: characters 33-60 : For function argument 'data’
d:\iron_examples\iron\Sources/iron/data/Mesh.hx:119: characters 65-66 : Int should be Bool
d:\iron_examples\iron\Sources/iron/data/Mesh.hx:119: characters 65-66 : For optional function argument 'canRead’
D:\armory\kha\Tools\haxe\std/java/_std/haxe/zip/Uncompress.hx:45: characters 46-56 : Too many arguments
d:\iron_examples\iron\Sources/iron/data/Mesh.hx:88: characters 2-21 : kha.graphics4.VertexBuffer has no field delete
d:\iron_examples\iron\Sources/iron/data/Mesh.hx:90: characters 28-38 : kha.graphics4.IndexBuffer has no field delete
d:\iron_examples\iron\Sources/iron/data/ShaderData.hx:207: characters 2-18 : kha.graphics4.PipelineState has no field delete
d:\iron_examples\iron\Sources/iron/data/GreasePencilData.hx:151: characters 2-21 : kha.graphics4.VertexBuffer has no field delete
D:\armory\kha\Backends\Android/kha/android/Graphics.hx:314: characters 2-21 : Class<android.opengl.GLES20> has no field glUniform4fv (Suggestions: glUniform4f, glUniform1fv, glUniform3f, glUniform2f, glUniform1f, glUniform1i)
D:\armory\kha\Backends\Android/kha/android/Graphics.hx:345: characters 2-27 : Class<android.opengl.GLES20> has no field glUniformMatrix3fv (Suggestion: glUniformMatrix4fv)
**


#2

i try to use different Kha, from github and from Kode studio, the same result.

previously i get error “d:\iron_examples\edit\Libraries\haxeui-kha/haxe/ui/backend/ComponentBase.hx:13: characters 7-20 : You cannot access the js package while targeting java (for js.html.Image)”

and just comment string “import js.html.Image;”


#3

also i try iron from git and from examples


#4

Hi @uncle_Bob ,

Sorry about the delay - try generating project files using

node Kha/make android-native

This will go through C++ route which is more tested, while regular ‘android’ command uses Java.


#5

i tried generate for Android NDK in Kode Studio , the same error. anyway i will wait when it(Kha) will be more stable. Thanks for answer. i understand that now is not better time for fixing bugs, when You and R.Conrad make new Features


#6

If by the same error you mean the ones mentioning D:\armory\kha\Backends\Android then it is somehow still generating using Java backend.

The C++ backend should be something like D:\armory\kha\Kore\Backends\Android (notice the Kore folder). In build folder, project files should be located in android-native-build.


#7
  1. Compiling to Android (native).
    Saving all files.
    Using Kha from D:\Kha
    Creating Kha project.
    Exporting asset 1 of 7 (Material_data.arm).
    Exporting asset 2 of 7 (Scene.arm).
    Exporting asset 3 of 7 (arial.ttf).
    Exporting asset 4 of 7 (mesh_Cube.arm).
    Exporting asset 5 of 7 (simple_path.arm).
    Exporting asset 6 of 7 (dark.css).
    Exporting asset 7 of 7 (main.xml).
    Compiling shader 1 of 2 (mesh.frag.glsl).
    Compiling shader 2 of 2 (mesh.vert.glsl).
    Compiling shader 1 of 8 (painter-colored.frag.glsl).
    Compiling shader 2 of 8 (painter-image.frag.glsl).
    Compiling shader 3 of 8 (painter-colored.vert.glsl).
    Compiling shader 4 of 8 (painter-image.vert.glsl).
    Compiling shader 5 of 8 (painter-text.vert.glsl).
    Compiling shader 6 of 8 (painter-text.frag.glsl).
    Compiling shader 7 of 8 (painter-video.frag.glsl).
    Compiling shader 8 of 8 (painter-video.vert.glsl).
    d:\KodeStudio-win32\iron_examples-master\edit\Libraries\haxeui-kha/haxe/ui/backend/ComponentBase.hx:13: characters 7-20 : You cannot access the js package while targeting cpp (for js.html.Image)
    d:\KodeStudio-win32\iron_examples-master\edit\Libraries\haxeui-core/haxe/ui/core/Component.hx:3: characters 7-36 : referenced here
    d:\KodeStudio-win32\iron_examples-master\edit\Libraries\haxeui-core/haxe/ui/animation/AnimationManager.hx:3: characters 7-29 : referenced here
    d:\KodeStudio-win32\iron_examples-master\edit\Libraries\haxeui-core/haxe/ui/core/Screen.hx:3: characters 7-41 : referenced here
    d:\KodeStudio-win32\iron_examples-master\edit\Libraries\haxeui-core/haxe/ui/util/Variant.hx:3: characters 7-26 : referenced here
    d:\KodeStudio-win32\iron_examples-master\edit\Libraries\haxeui-core/haxe/ui/core/Behaviour.hx:3: characters 7-27 : referenced here
    d:\KodeStudio-win32\iron_examples-master\edit\Libraries\haxeui-core/haxe/ui/components/Button.hx:3: characters 7-29 : referenced here
    d:\KodeStudio-win32\iron_examples-master\edit\Libraries\haxeui-core/haxe/ui/Toolkit.hx:3: characters 7-32 : referenced here
    d:\KodeStudio-win32\iron_examples-master\edit\Sources/Main.hx:3: characters 7-22 : referenced here

  2. then i comment //“import js.html.Image;” in iron_examples\edit\Libraries\haxeui-kha/haxe/ui/backend/ComponentBase.hx:13: Haaa, now it works ,at least in generating project


#8

Thank You! will try to deploy little bit later


#9

Cool! I think haxeui lib has troubles compiling on C++ targets, will look for a fix.