File tree Expand file tree Collapse file tree 4 files changed +46
-7
lines changed Expand file tree Collapse file tree 4 files changed +46
-7
lines changed Original file line number Diff line number Diff line change @@ -29,6 +29,22 @@ default = [
29
29
" mp3" ,
30
30
" x11" ,
31
31
]
32
+
33
+ supported_android_features = [
34
+ # cpal is not supported yet
35
+ # "bevy_audio",
36
+ " bevy_dynamic_plugin" ,
37
+ " bevy_gilrs" ,
38
+ " bevy_gltf" ,
39
+ " bevy_wgpu" ,
40
+ " bevy_winit" ,
41
+ " render" ,
42
+ " png" ,
43
+ " hdr" ,
44
+ # "mp3",
45
+ " x11" ,
46
+ ]
47
+
32
48
profiler = [" bevy_ecs/profiler" , " bevy_diagnostic/profiler" ]
33
49
wgpu_trace = [" bevy_wgpu/trace" ]
34
50
@@ -90,6 +106,11 @@ log = "0.4"
90
106
ron = " 0.6"
91
107
anyhow = " 1.0"
92
108
109
+ # bevy (Android)
110
+ [target .'cfg(target_os = "android")' .dependencies ]
111
+ ndk-glue = { version = " 0.2" , features = [" logger" ] }
112
+ android_logger = " 0.9"
113
+
93
114
[target .'cfg(target_arch = "wasm32")' .dev-dependencies ]
94
115
console_error_panic_hook = " 0.1.6"
95
116
console_log = { version = " 0.2" , features = [" color" ] }
@@ -314,3 +335,16 @@ name = "assets_wasm"
314
335
path = " examples/wasm/assets_wasm.rs"
315
336
required-features = [" bevy_winit" ]
316
337
338
+ [[example ]]
339
+ name = " bevy_android"
340
+ path = " examples/android/bevy_android.rs"
341
+ crate-type = [" cdylib" ]
342
+
343
+ [package .metadata .android ]
344
+ build_targets = [ " aarch64-linux-android" , " armv7-linux-androideabi" ]
345
+ target_sdk_version = 28
346
+ min_sdk_version = 28
347
+
348
+ [[package .metadata .android .feature ]]
349
+ name = " android.hardware.vulkan.level"
350
+ version = " 1"
Original file line number Diff line number Diff line change @@ -48,7 +48,7 @@ parking_lot = "0.11.0"
48
48
spirv-reflect = " 0.2.3"
49
49
50
50
[target .'cfg(all(not(target_os = "ios"), not(target_arch = "wasm32")))' .dependencies ]
51
- bevy-glsl-to-spirv = " 0.1.7 "
51
+ bevy-glsl-to-spirv = " 0.2.0 "
52
52
53
53
[target .'cfg(target_os = "ios")' .dependencies ]
54
54
shaderc = " 0.6.3"
Original file line number Diff line number Diff line change @@ -28,12 +28,7 @@ fn glsl_to_spirv(
28
28
stage : ShaderStage ,
29
29
shader_defs : Option < & [ String ] > ,
30
30
) -> Vec < u32 > {
31
- use std:: io:: Read ;
32
-
33
- let mut output = bevy_glsl_to_spirv:: compile ( glsl_source, stage. into ( ) , shader_defs) . unwrap ( ) ;
34
- let mut spv_bytes = Vec :: new ( ) ;
35
- output. read_to_end ( & mut spv_bytes) . unwrap ( ) ;
36
- bytes_to_words ( & spv_bytes)
31
+ bevy_glsl_to_spirv:: compile ( glsl_source, stage. into ( ) , shader_defs) . unwrap ( )
37
32
}
38
33
39
34
#[ cfg( target_os = "ios" ) ]
Original file line number Diff line number Diff line change
1
+ // Edit to run any single file example from Bevy.
2
+ include ! ( "../3d/3d_scene.rs" ) ;
3
+
4
+ #[ cfg_attr(
5
+ target_os = "android" ,
6
+ ndk_glue:: main( logger( level = "trace" , tag = "bevy_android" ) , backtrace = "full" )
7
+ ) ]
8
+ pub fn android_main ( ) {
9
+ main ( ) ;
10
+ }
You can’t perform that action at this time.
0 commit comments