Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .github/workflows/android.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ on:

jobs:
build-android:
runs-on: macos-latest
runs-on: macos-15
steps:
- name: Checkout Repo
uses: actions/checkout@v4.2.2
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/ios.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ on:

jobs:
build-iOS:
runs-on: macos-latest
runs-on: macos-15
steps:
- name: Checkout Repo
uses: actions/checkout@v4.2.2
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/package.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ on:

jobs:
package:
runs-on: macos-latest
runs-on: macos-15
steps:
- name: Checkout Repo
uses: actions/checkout@v4.2.2
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/publish.yml
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ jobs:
uses: ./.github/workflows/package.yml

publish:
runs-on: macos-latest
runs-on: macos-15
needs: [package]
steps:
- name: Setup Node.js
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/publish_preview.yml
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ jobs:
uses: ./.github/workflows/package.yml

publish:
runs-on: macos-latest
runs-on: macos-15
needs: [package]
steps:
- name: Setup Node.js
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/test_android.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ on:

jobs:
build-test-android:
runs-on: macos-latest
runs-on: macos-15
steps:
- name: Checkout Repo
uses: actions/checkout@v4.2.2
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/test_ios.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ on:

jobs:
build-test-iOS:
runs-on: macos-latest
runs-on: macos-15
steps:
- name: Checkout Repo
uses: actions/checkout@v4.2.2
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/typescript.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ on:
workflow_call
jobs:
Build:
runs-on: macos-latest
runs-on: macos-15
steps:
- name: Checkout Repo
uses: actions/checkout@v4.2.2
Expand Down
4 changes: 3 additions & 1 deletion Apps/Playground/android/gradle.properties
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,9 @@ android.jetifier.ignorelist=hermes-android
# Use this property to specify which architecture you want to build.
# You can also override it from the CLI using
# ./gradlew <task> -PreactNativeArchitectures=x86_64
reactNativeArchitectures=armeabi-v7a,arm64-v8a,x86,x86_64
# NOTE: the 32-bit x86 ABI is not supported. bgfx's bx requires SSE4.x
# intrinsics, which are above the Android x86 ABI baseline (SSSE3).
reactNativeArchitectures=armeabi-v7a,arm64-v8a,x86_64

# Use this property to enable support to the new architecture.
# This will allow you to use TurboModules and the Fabric render in
Expand Down
2 changes: 1 addition & 1 deletion Modules/@babylonjs/react-native/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -74,7 +74,7 @@ Babylon.js minimal version:

|BabylonReactNative version | Babylon.js version | BabylonNative commit |
| ----------- | ------------------------ | --- |
|2.0.2 | 9.0.0 | ce2edf0851e0c8483559832a4f8eb9d39c6b2f53
|2.0.2 | 9.0.0 | b9aab7a366a0b0e81e65945449a3dd9960609d78
|2.0.0 | 8.3.0 | 6c25966e8f8c0f3a0c13fdf77064f1bde790391f


Expand Down
11 changes: 10 additions & 1 deletion Modules/@babylonjs/react-native/android/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,16 @@ apply plugin: 'kotlin-android'

def reactNativeArchitectures() {
def value = project.getProperties().get("reactNativeArchitectures")
return value ? value.split(",") : ["armeabi-v7a", "x86", "x86_64", "arm64-v8a"]
def architectures = value ? value.split(",").collect { it.trim() } : ["armeabi-v7a", "x86_64", "arm64-v8a"]
// The 32-bit x86 ABI is not supported: bgfx's bx uses SSE4.x intrinsics
// (_mm_blendv_ps, _mm_round_ps), which are above the Android x86 ABI baseline
// of SSSE3 and fail to compile. Drop it rather than break the whole build for
// consumers still carrying x86 in the React Native default property.
def unsupported = architectures.findAll { it == "x86" }
if (!unsupported.isEmpty()) {
logger.warn("BabylonReactNative: skipping unsupported ABI 'x86' (requires SSE4.x, unavailable on the Android x86 baseline).")
}
return architectures - unsupported
}

static def findNodeModules(baseDir) {
Expand Down
6 changes: 1 addition & 5 deletions Modules/@babylonjs/react-native/react-native-babylon.podspec
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,6 @@ items = ['/shared/BabylonNative/Repo/Polyfills/Canvas',
'/_deps/glslang-build/OGLCompilersDLL',
'/_deps/glslang-build/SPIRV',
'/_deps/urllib-build',
'/_deps/libwebp-build',
'/_deps/jsruntimehost-build/Polyfills/XMLHttpRequest',
'/_deps/jsruntimehost-build/Polyfills/Scheduling',
'/_deps/jsruntimehost-build/Core/JsRuntime',
Expand Down Expand Up @@ -102,10 +101,7 @@ Pod::Spec.new do |s|
'Window',
'XMLHttpRequest',
'ShaderCache',
'ShaderCompiler',
'webp',
'metal-cpp',
'sharpyuv']
'ShaderCompiler']

if ENV['BABYLON_NATIVE_PLUGIN_NATIVECAMERA'] != '0'
libs << 'NativeCamera'
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,6 @@ set(FETCHCONTENT_SOURCE_DIR_CMAKEEXTENSIONS "${CMAKE_CURRENT_SOURCE_DIR}/deps/cm
set(FETCHCONTENT_SOURCE_DIR_JSRUNTIMEHOST "${CMAKE_CURRENT_SOURCE_DIR}/deps/jsruntimehost-src")
set(FETCHCONTENT_SOURCE_DIR_URLLIB "${CMAKE_CURRENT_SOURCE_DIR}/deps/urllib-src")
set(FETCHCONTENT_SOURCE_DIR_SPIRV-CROSS "${CMAKE_CURRENT_SOURCE_DIR}/deps/spirv-cross-src")
set(FETCHCONTENT_SOURCE_DIR_LIBWEBP "${CMAKE_CURRENT_SOURCE_DIR}/deps/libwebp-src")
set(FETCHCONTENT_SOURCE_DIR_GLSLANG "${CMAKE_CURRENT_SOURCE_DIR}/deps/glslang-src")
set(FETCHCONTENT_SOURCE_DIR_BASE-N "${CMAKE_CURRENT_SOURCE_DIR}/deps/base-n-src")
set(FETCHCONTENT_SOURCE_DIR_IOS-CMAKE "${CMAKE_CURRENT_SOURCE_DIR}/deps/ios-cmake-src")
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -148,7 +148,6 @@
$(BabylonNativeBuildDir)_deps\jsruntimehost-build\Polyfills\XMLHttpRequest\$(Configuration);
$(BabylonNativeBuildDir)_deps\jsruntimehost-build\Core\Foundation\$(Configuration);
$(BabylonNativeBuildDir)_deps\urllib-build\$(Configuration);
$(BabylonNativeBuildDir)_deps\libwebp-build\$(Configuration);
$(BabylonNativeBuildDir)_deps\bgfx.cmake-build\cmake\bgfx\$(Configuration);
$(BabylonNativeBuildDir)_deps\bgfx.cmake-build\cmake\bx\$(Configuration);
$(BabylonNativeBuildDir)_deps\bgfx.cmake-build\cmake\bimg\$(Configuration);
Expand Down Expand Up @@ -207,8 +206,6 @@
SPIRVd.lib;
UrlLib.lib;
Window.lib;
libwebp.lib;
libsharpyuv.lib;
Scheduling.lib;
XMLHttpRequest.lib;
WindowsApp.lib;
Expand Down Expand Up @@ -269,8 +266,6 @@
Scheduling.lib;
XMLHttpRequest.lib;
WindowsApp.lib;
libwebp.lib;
libsharpyuv.lib;
%(AdditionalDependencies);
</AdditionalDependencies>
<AdditionalOptions>%(AdditionalOptions)</AdditionalOptions>
Expand Down
7 changes: 5 additions & 2 deletions Package/gulpfile.js
Original file line number Diff line number Diff line change
Expand Up @@ -230,7 +230,7 @@ const createPackage = async () => {
exec('npm pack', 'Assembled');
};

const COMMIT_ID = 'ce2edf0851e0c8483559832a4f8eb9d39c6b2f53';
const COMMIT_ID = 'a4031689b3c4ec08062f0e044b67970eb2382c9f';
const ZIP_URL = `https://github.com/BabylonJS/BabylonNative/archive/${COMMIT_ID}.zip`;
const TARGET_DIR = path.resolve(__dirname, '../Modules/@babylonjs/react-native/shared/BabylonNative');
const ZIP_PATH = path.join(TARGET_DIR, `${COMMIT_ID}.zip`);
Expand Down Expand Up @@ -380,7 +380,10 @@ const buildBabylonNativeSourceTree = async () => {
deleteFolderRecursive(`${UNZIP_FOLDER}/Install`);

// dependencies cleanup
deleteFolderRecursive(`${DEPS_OUTPUT_DIR}/bgfx.cmake-src/bgfx/3rdparty`, ['renderdoc', 'stb', 'sdf']);
// Keep only the 3rdparty folders that bgfx/src actually includes:
// renderdoc (debug_renderdoc.cpp), metal-cpp (renderer_mtl.h), h264 (video.h),
// plus stb/sdf.
deleteFolderRecursive(`${DEPS_OUTPUT_DIR}/bgfx.cmake-src/bgfx/3rdparty`, ['renderdoc', 'stb', 'sdf', 'metal-cpp', 'h264']);
deleteFolderRecursive(`${DEPS_OUTPUT_DIR}/bgfx.cmake-src/bgfx/examples`,['common']);
deleteFolderRecursive(`${DEPS_OUTPUT_DIR}/bgfx.cmake-src/bgfx/bindings`);
deleteFolderRecursive(`${DEPS_OUTPUT_DIR}/bgfx.cmake-src/bgfx/docs`);
Expand Down
Loading