react-native-wgpu 0.1.2 → 0.1.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/android/cpp/AndroidPlatformContext.h +108 -2
- package/android/cpp/cpp-adapter.cpp +5 -2
- package/android/src/main/java/com/webgpu/WebGPUModule.java +8 -2
- package/cpp/rnwgpu/PlatformContext.h +14 -1
- package/cpp/rnwgpu/RNWebGPUManager.cpp +6 -9
- package/cpp/rnwgpu/RNWebGPUManager.h +0 -3
- package/cpp/rnwgpu/api/GPU.cpp +33 -52
- package/cpp/rnwgpu/api/GPUAdapter.cpp +92 -92
- package/cpp/rnwgpu/api/GPUBuffer.h +1 -1
- package/cpp/rnwgpu/api/GPUQueue.cpp +45 -2
- package/cpp/rnwgpu/api/ImageBitmap.h +34 -0
- package/cpp/rnwgpu/api/RNWebGPU.h +100 -0
- package/cpp/rnwgpu/api/descriptors/GPUImageCopyExternalImage.h +14 -4
- package/ios/IOSPlatformContext.h +3 -0
- package/ios/IOSPlatformContext.mm +50 -0
- package/ios/SurfaceUtils.mm +0 -1
- package/lib/commonjs/Canvas.js +1 -3
- package/lib/commonjs/Canvas.js.map +1 -1
- package/lib/commonjs/index.js +25 -0
- package/lib/commonjs/index.js.map +1 -1
- package/lib/commonjs/utils.js +39 -0
- package/lib/commonjs/utils.js.map +1 -0
- package/lib/module/Canvas.js +1 -3
- package/lib/module/Canvas.js.map +1 -1
- package/lib/module/index.js +14 -0
- package/lib/module/index.js.map +1 -1
- package/lib/module/utils.js +31 -0
- package/lib/module/utils.js.map +1 -0
- package/lib/typescript/lib/commonjs/utils.d.ts +5 -0
- package/lib/typescript/lib/commonjs/utils.d.ts.map +1 -0
- package/lib/typescript/lib/module/Canvas.d.ts.map +1 -1
- package/lib/typescript/lib/module/WebGPUViewNativeComponent.d.ts +0 -1
- package/lib/typescript/lib/module/index.d.ts +1 -0
- package/lib/typescript/lib/module/utils.d.ts +3 -0
- package/lib/typescript/lib/module/utils.d.ts.map +1 -0
- package/lib/typescript/src/Canvas.d.ts +6 -1
- package/lib/typescript/src/Canvas.d.ts.map +1 -1
- package/lib/typescript/src/WebGPUViewNativeComponent.d.ts +0 -1
- package/lib/typescript/src/WebGPUViewNativeComponent.d.ts.map +1 -1
- package/lib/typescript/src/index.d.ts +1 -0
- package/lib/typescript/src/index.d.ts.map +1 -1
- package/lib/typescript/src/utils.d.ts +6 -0
- package/lib/typescript/src/utils.d.ts.map +1 -0
- package/libs/android/arm64-v8a/libwebgpu_dawn.so +0 -0
- package/libs/android/armeabi-v7a/libwebgpu_dawn.so +0 -0
- package/libs/android/x86/libwebgpu_dawn.so +0 -0
- package/libs/android/x86_64/libwebgpu_dawn.so +0 -0
- package/libs/ios/arm64_iphoneos/libwebgpu_dawn.a +0 -0
- package/libs/ios/arm64_iphonesimulator/libwebgpu_dawn.a +0 -0
- package/libs/ios/arm64_xros/libwebgpu_dawn.a +0 -0
- package/libs/ios/arm64_xrsimulator/libwebgpu_dawn.a +0 -0
- package/libs/ios/libwebgpu_dawn.a +0 -0
- package/libs/ios/libwebgpu_dawn.xcframework/Info.plist +36 -5
- package/libs/ios/libwebgpu_dawn.xcframework/ios-arm64/libwebgpu_dawn.a +0 -0
- package/libs/ios/libwebgpu_dawn.xcframework/ios-arm64_x86_64-simulator/libwebgpu_dawn.a +0 -0
- package/libs/ios/libwebgpu_dawn.xcframework/xros-arm64/libwebgpu_dawn.a +0 -0
- package/libs/ios/libwebgpu_dawn.xcframework/xros-arm64_x86_64-simulator/libwebgpu_dawn_visionos.a +0 -0
- package/libs/ios/libwebgpu_dawn_visionos.a +0 -0
- package/libs/ios/x86_64_iphonesimulator/libwebgpu_dawn.a +0 -0
- package/libs/ios/x86_64_xrsimulator/libwebgpu_dawn.a +0 -0
- package/package.json +3 -20
- package/react-native-wgpu.podspec +1 -1
- package/src/Canvas.tsx +8 -3
- package/src/index.tsx +19 -0
- package/src/utils.ts +40 -0
- package/cpp/rnwgpu/api/ImageData.h +0 -50
- package/cpp/rnwgpu/api/Navigator.h +0 -46
- package/lib/typescript/example/src/Triangle/triangle.d.ts +0 -3
- package/lib/typescript/example/src/Triangle/triangle.d.ts.map +0 -1
- package/lib/typescript/example/src/Wireframe/Shaders.d.ts +0 -3
- package/lib/typescript/example/src/Wireframe/Shaders.d.ts.map +0 -1
- package/lib/typescript/example/src/Wireframe/models.d.ts +0 -29
- package/lib/typescript/example/src/Wireframe/models.d.ts.map +0 -1
- package/lib/typescript/example/src/components/DrawingContext.d.ts +0 -13
- package/lib/typescript/example/src/components/DrawingContext.d.ts.map +0 -1
- package/lib/typescript/example/src/components/cube.d.ts +0 -7
- package/lib/typescript/example/src/components/cube.d.ts.map +0 -1
- package/lib/typescript/example/src/components/meshes/sphere.d.ts +0 -12
- package/lib/typescript/example/src/components/meshes/sphere.d.ts.map +0 -1
- package/lib/typescript/example/src/components/meshes/teapot.d.ts +0 -6
- package/lib/typescript/example/src/components/meshes/teapot.d.ts.map +0 -1
- package/lib/typescript/example/src/components/meshes/utils.d.ts +0 -10
- package/lib/typescript/example/src/components/meshes/utils.d.ts.map +0 -1
|
@@ -0,0 +1,100 @@
|
|
|
1
|
+
#pragma once
|
|
2
|
+
|
|
3
|
+
#include <memory>
|
|
4
|
+
#include <string>
|
|
5
|
+
|
|
6
|
+
#include "GPU.h"
|
|
7
|
+
#include "GPUCanvasContext.h"
|
|
8
|
+
#include "ImageBitmap.h"
|
|
9
|
+
#include "PlatformContext.h"
|
|
10
|
+
|
|
11
|
+
namespace rnwgpu {
|
|
12
|
+
|
|
13
|
+
namespace m = margelo;
|
|
14
|
+
|
|
15
|
+
struct Blob {
|
|
16
|
+
std::string blobId;
|
|
17
|
+
double size;
|
|
18
|
+
double offset;
|
|
19
|
+
std::string type;
|
|
20
|
+
std::string name;
|
|
21
|
+
};
|
|
22
|
+
|
|
23
|
+
class RNWebGPU : public m::HybridObject {
|
|
24
|
+
public:
|
|
25
|
+
explicit RNWebGPU(std::shared_ptr<GPU> gpu,
|
|
26
|
+
std::shared_ptr<PlatformContext> platformContext)
|
|
27
|
+
: HybridObject("RNWebGPU"), _gpu(gpu), _platformContext(platformContext) {
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
std::shared_ptr<GPU> getGPU() { return _gpu; }
|
|
31
|
+
|
|
32
|
+
std::shared_ptr<GPUCanvasContext>
|
|
33
|
+
MakeWebGPUCanvasContext(std::shared_ptr<Canvas> canvas) {
|
|
34
|
+
auto nativeSurface = canvas->getSurface();
|
|
35
|
+
auto width = canvas->getWidth();
|
|
36
|
+
auto height = canvas->getHeight();
|
|
37
|
+
auto surface = _platformContext->makeSurface(
|
|
38
|
+
_gpu->get(), reinterpret_cast<void *>(nativeSurface), width, height);
|
|
39
|
+
if (surface == nullptr) {
|
|
40
|
+
throw std::runtime_error("null surface");
|
|
41
|
+
}
|
|
42
|
+
auto ctx = std::make_shared<GPUCanvasContext>(surface, canvas);
|
|
43
|
+
return ctx;
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
std::shared_ptr<ImageBitmap> createImageBitmap(std::shared_ptr<Blob> blob) {
|
|
47
|
+
auto imageData = _platformContext->createImageBitmap(
|
|
48
|
+
blob->blobId, blob->offset, blob->size);
|
|
49
|
+
auto imageBitmap = std::make_shared<ImageBitmap>(imageData);
|
|
50
|
+
return imageBitmap;
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
void loadHybridMethods() override {
|
|
54
|
+
registerHybridGetter("gpu", &RNWebGPU::getGPU, this);
|
|
55
|
+
registerHybridMethod("createImageBitmap", &RNWebGPU::createImageBitmap,
|
|
56
|
+
this);
|
|
57
|
+
registerHybridMethod("MakeWebGPUCanvasContext",
|
|
58
|
+
&RNWebGPU::MakeWebGPUCanvasContext, this);
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
private:
|
|
62
|
+
std::shared_ptr<GPU> _gpu;
|
|
63
|
+
std::shared_ptr<PlatformContext> _platformContext;
|
|
64
|
+
};
|
|
65
|
+
|
|
66
|
+
} // namespace rnwgpu
|
|
67
|
+
|
|
68
|
+
namespace margelo {
|
|
69
|
+
|
|
70
|
+
template <> struct JSIConverter<std::shared_ptr<rnwgpu::Blob>> {
|
|
71
|
+
static std::shared_ptr<rnwgpu::Blob>
|
|
72
|
+
fromJSI(jsi::Runtime &runtime, const jsi::Value &arg, bool outOfBounds) {
|
|
73
|
+
if (!outOfBounds && arg.isObject()) {
|
|
74
|
+
auto result = std::make_unique<rnwgpu::Blob>();
|
|
75
|
+
auto val = arg.asObject(runtime);
|
|
76
|
+
if (val.hasProperty(runtime, "_data")) {
|
|
77
|
+
auto value = val.getPropertyAsObject(runtime, "_data");
|
|
78
|
+
result->blobId = JSIConverter<std::string>::fromJSI(
|
|
79
|
+
runtime, value.getProperty(runtime, "blobId"), false);
|
|
80
|
+
// result->type = JSIConverter<std::string>::fromJSI(
|
|
81
|
+
// runtime, value.getProperty(runtime, "type"), false);
|
|
82
|
+
// result->name = JSIConverter<std::string>::fromJSI(
|
|
83
|
+
// runtime, value.getProperty(runtime, "name"), false);
|
|
84
|
+
result->size = JSIConverter<double>::fromJSI(
|
|
85
|
+
runtime, value.getProperty(runtime, "size"), false);
|
|
86
|
+
result->offset = JSIConverter<double>::fromJSI(
|
|
87
|
+
runtime, value.getProperty(runtime, "offset"), false);
|
|
88
|
+
}
|
|
89
|
+
return result;
|
|
90
|
+
} else {
|
|
91
|
+
throw std::runtime_error("Invalid Blob::fromJSI()");
|
|
92
|
+
}
|
|
93
|
+
}
|
|
94
|
+
static jsi::Value toJSI(jsi::Runtime &runtime,
|
|
95
|
+
std::shared_ptr<rnwgpu::Blob> arg) {
|
|
96
|
+
throw std::runtime_error("Invalid Blob::toJSI()");
|
|
97
|
+
}
|
|
98
|
+
};
|
|
99
|
+
|
|
100
|
+
} // namespace margelo
|
|
@@ -12,7 +12,7 @@
|
|
|
12
12
|
#include "RNFJSIConverter.h"
|
|
13
13
|
|
|
14
14
|
#include "GPUOrigin2D.h"
|
|
15
|
-
#include "
|
|
15
|
+
#include "ImageBitmap.h"
|
|
16
16
|
|
|
17
17
|
namespace jsi = facebook::jsi;
|
|
18
18
|
namespace m = margelo;
|
|
@@ -20,7 +20,7 @@ namespace m = margelo;
|
|
|
20
20
|
namespace rnwgpu {
|
|
21
21
|
|
|
22
22
|
struct GPUImageCopyExternalImage {
|
|
23
|
-
std::shared_ptr<
|
|
23
|
+
std::shared_ptr<ImageBitmap> source; // GPUImageCopyExternalImageSource
|
|
24
24
|
std::optional<std::shared_ptr<GPUOrigin2D>> origin; // GPUOrigin2DStrict
|
|
25
25
|
std::optional<bool> flipY; // boolean
|
|
26
26
|
};
|
|
@@ -40,9 +40,19 @@ struct JSIConverter<std::shared_ptr<rnwgpu::GPUImageCopyExternalImage>> {
|
|
|
40
40
|
auto obj = arg.getObject(runtime);
|
|
41
41
|
if (obj.hasProperty(runtime, "source")) {
|
|
42
42
|
auto prop = obj.getProperty(runtime, "source");
|
|
43
|
-
result->source = JSIConverter<std::shared_ptr<
|
|
43
|
+
result->source = JSIConverter<std::shared_ptr<ImageBitmap>>::fromJSI(
|
|
44
44
|
runtime, prop, false);
|
|
45
45
|
}
|
|
46
|
+
if (obj.hasProperty(runtime, "origin")) {
|
|
47
|
+
auto prop = obj.getProperty(runtime, "origin");
|
|
48
|
+
result->origin = JSIConverter<std::shared_ptr<GPUOrigin2D>>::fromJSI(
|
|
49
|
+
runtime, prop, false);
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
if (obj.hasProperty(runtime, "flipY")) {
|
|
53
|
+
auto prop = obj.getProperty(runtime, "flipY");
|
|
54
|
+
result->flipY = JSIConverter<bool>::fromJSI(runtime, prop, false);
|
|
55
|
+
}
|
|
46
56
|
}
|
|
47
57
|
|
|
48
58
|
return result;
|
|
@@ -54,4 +64,4 @@ struct JSIConverter<std::shared_ptr<rnwgpu::GPUImageCopyExternalImage>> {
|
|
|
54
64
|
}
|
|
55
65
|
};
|
|
56
66
|
|
|
57
|
-
} // namespace margelo
|
|
67
|
+
} // namespace margelo
|
package/ios/IOSPlatformContext.h
CHANGED
|
@@ -1,5 +1,9 @@
|
|
|
1
1
|
#include "IOSPlatformContext.h"
|
|
2
2
|
|
|
3
|
+
#import <React/RCTBlobManager.h>
|
|
4
|
+
#import <React/RCTBridge+Private.h>
|
|
5
|
+
#import <ReactCommon/RCTTurboModule.h>
|
|
6
|
+
|
|
3
7
|
#include "RNWebGPUManager.h"
|
|
4
8
|
#include "WebGPUModule.h"
|
|
5
9
|
|
|
@@ -15,4 +19,50 @@ wgpu::Surface IOSPlatformContext::makeSurface(wgpu::Instance instance,
|
|
|
15
19
|
return instance.CreateSurface(&surfaceDescriptor);
|
|
16
20
|
}
|
|
17
21
|
|
|
22
|
+
ImageData IOSPlatformContext::createImageBitmap(std::string blobId,
|
|
23
|
+
double offset, double size) {
|
|
24
|
+
RCTBlobManager *blobManager =
|
|
25
|
+
[[RCTBridge currentBridge] moduleForClass:RCTBlobManager.class];
|
|
26
|
+
NSData *blobData =
|
|
27
|
+
[blobManager resolve:[NSString stringWithUTF8String:blobId.c_str()]
|
|
28
|
+
offset:(long)offset
|
|
29
|
+
size:(long)size];
|
|
30
|
+
|
|
31
|
+
if (!blobData) {
|
|
32
|
+
throw std::runtime_error("Couldn't retrive blob data");
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
UIImage *image = [UIImage imageWithData:blobData];
|
|
36
|
+
if (!image) {
|
|
37
|
+
throw std::runtime_error("Couldn't decode image");
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
CGImageRef cgImage = image.CGImage;
|
|
41
|
+
size_t width = CGImageGetWidth(cgImage);
|
|
42
|
+
size_t height = CGImageGetHeight(cgImage);
|
|
43
|
+
size_t bitsPerComponent = 8;
|
|
44
|
+
size_t bytesPerRow = width * 4;
|
|
45
|
+
std::vector<uint8_t> imageData(height * bytesPerRow);
|
|
46
|
+
|
|
47
|
+
CGColorSpaceRef colorSpace = CGColorSpaceCreateDeviceRGB();
|
|
48
|
+
CGContextRef context = CGBitmapContextCreate(
|
|
49
|
+
imageData.data(), width, height, bitsPerComponent, bytesPerRow,
|
|
50
|
+
colorSpace, kCGImageAlphaPremultipliedLast | kCGBitmapByteOrder32Big);
|
|
51
|
+
|
|
52
|
+
CGContextDrawImage(context, CGRectMake(0, 0, width, height), cgImage);
|
|
53
|
+
|
|
54
|
+
// Now imageData contains a copy of the bitmap data
|
|
55
|
+
|
|
56
|
+
CGContextRelease(context);
|
|
57
|
+
CGColorSpaceRelease(colorSpace);
|
|
58
|
+
|
|
59
|
+
// Use the copied data
|
|
60
|
+
ImageData result;
|
|
61
|
+
result.width = static_cast<int>(width);
|
|
62
|
+
result.height = static_cast<int>(height);
|
|
63
|
+
result.data = imageData;
|
|
64
|
+
result.format = wgpu::TextureFormat::RGBA8Unorm;
|
|
65
|
+
return result;
|
|
66
|
+
}
|
|
67
|
+
|
|
18
68
|
} // namespace rnwgpu
|
package/ios/SurfaceUtils.mm
CHANGED
|
@@ -10,7 +10,6 @@
|
|
|
10
10
|
size:(CGSize)size
|
|
11
11
|
contextId:(int)contextId {
|
|
12
12
|
std::shared_ptr<rnwgpu::RNWebGPUManager> manager = [WebGPUModule getManager];
|
|
13
|
-
CGFloat scaleFactor = [UIScreen mainScreen].scale;
|
|
14
13
|
void *nativeSurface = (__bridge void *)layer;
|
|
15
14
|
manager->surfacesRegistry.addSurface(contextId, nativeSurface, size.width,
|
|
16
15
|
size.height);
|
package/lib/commonjs/Canvas.js
CHANGED
|
@@ -31,9 +31,7 @@ const Canvas = exports.Canvas = /*#__PURE__*/(0, _react.forwardRef)((props, ref)
|
|
|
31
31
|
if (!nativeSurface) {
|
|
32
32
|
return null;
|
|
33
33
|
}
|
|
34
|
-
|
|
35
|
-
// @ts-expect-error
|
|
36
|
-
const ctx = navigator.MakeWebGPUCanvasContext(nativeSurface);
|
|
34
|
+
const ctx = RNWebGPU.MakeWebGPUCanvasContext(nativeSurface);
|
|
37
35
|
return ctx;
|
|
38
36
|
}
|
|
39
37
|
}));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_react","require","_WebGPUViewNativeComponent","_interopRequireDefault","_NativeWebGPUModule","e","__esModule","default","_extends","Object","assign","bind","n","arguments","length","t","r","hasOwnProperty","call","apply","CONTEXT_COUNTER","generateContextId","global","__WebGPUContextRegistry","WebGPUContextRegistry","Canvas","exports","forwardRef","props","ref","contextId","_","useState","useImperativeHandle","getNativeSurface","WebGPUNativeModule","createSurfaceContext","getContext","contextName","Error","nativeSurface","ctx","
|
|
1
|
+
{"version":3,"names":["_react","require","_WebGPUViewNativeComponent","_interopRequireDefault","_NativeWebGPUModule","e","__esModule","default","_extends","Object","assign","bind","n","arguments","length","t","r","hasOwnProperty","call","apply","CONTEXT_COUNTER","generateContextId","global","__WebGPUContextRegistry","WebGPUContextRegistry","Canvas","exports","forwardRef","props","ref","contextId","_","useState","useImperativeHandle","getNativeSurface","WebGPUNativeModule","createSurfaceContext","getContext","contextName","Error","nativeSurface","ctx","RNWebGPU","MakeWebGPUCanvasContext","useEffect","React","createElement"],"sourceRoot":"../../src","sources":["Canvas.tsx"],"mappings":";;;;;;AACA,IAAAA,MAAA,GAAAC,OAAA;AAEA,IAAAC,0BAAA,GAAAC,sBAAA,CAAAF,OAAA;AACA,IAAAG,mBAAA,GAAAD,sBAAA,CAAAF,OAAA;AAAsD,SAAAE,uBAAAE,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAAA,SAAAG,SAAA,WAAAA,QAAA,GAAAC,MAAA,CAAAC,MAAA,GAAAD,MAAA,CAAAC,MAAA,CAAAC,IAAA,eAAAC,CAAA,aAAAP,CAAA,MAAAA,CAAA,GAAAQ,SAAA,CAAAC,MAAA,EAAAT,CAAA,UAAAU,CAAA,GAAAF,SAAA,CAAAR,CAAA,YAAAW,CAAA,IAAAD,CAAA,OAAAE,cAAA,CAAAC,IAAA,CAAAH,CAAA,EAAAC,CAAA,MAAAJ,CAAA,CAAAI,CAAA,IAAAD,CAAA,CAAAC,CAAA,aAAAJ,CAAA,KAAAJ,QAAA,CAAAW,KAAA,OAAAN,SAAA;AAEtD,IAAIO,eAAe,GAAG,CAAC;AACvB,SAASC,iBAAiBA,CAAA,EAAG;EAC3B,OAAOD,eAAe,EAAE;AAC1B;AAsBAE,MAAM,CAACC,uBAAuB,GAAG,CAAC,CAAC;AACnC,MAAMC,qBAAqB,GAAGF,MAAM,CAACC,uBAAuB;AAWrD,MAAME,MAAM,GAAAC,OAAA,CAAAD,MAAA,gBAAG,IAAAE,iBAAU,EAAuB,CAACC,KAAK,EAAEC,GAAG,KAAK;EACrE,MAAM,CAACC,SAAS,EAAEC,CAAC,CAAC,GAAG,IAAAC,eAAQ,EAAC,MAAMX,iBAAiB,CAAC,CAAC,CAAC;EAE1D,IAAAY,0BAAmB,EAACJ,GAAG,EAAE,OAAO;IAC9BK,gBAAgB,EAAEA,CAAA,KAAM;MACtBC,2BAAkB,CAACC,oBAAoB,CAACN,SAAS,CAAC;MAClD,OAAON,qBAAqB,CAACM,SAAS,CAAC;IACzC,CAAC;IACDO,UAAUA,CAACC,WAAqB,EAAwB;MACtD,IAAIA,WAAW,KAAK,QAAQ,EAAE;QAC5B,MAAM,IAAIC,KAAK,CAAC,iCAAiCD,WAAW,EAAE,CAAC;MACjE;MACAH,2BAAkB,CAACC,oBAAoB,CAACN,SAAS,CAAC;MAClD,MAAMU,aAAa,GAAGhB,qBAAqB,CAACM,SAAS,CAAC;MACtD,IAAI,CAACU,aAAa,EAAE;QAClB,OAAO,IAAI;MACb;MACA,MAAMC,GAAG,GAAGC,QAAQ,CAACC,uBAAuB,CAACH,aAAa,CAAC;MAC3D,OAAOC,GAAG;IACZ;EACF,CAAC,CAAC,CAAC;EAEH,IAAAG,gBAAS,EAAC,MAAM;IACd,OAAO,MAAM;MACX,OAAOpB,qBAAqB,CAACM,SAAS,CAAC;IACzC,CAAC;EACH,CAAC,EAAE,CAACA,SAAS,CAAC,CAAC;EAEf,oBAAOe,KAAA,CAAAC,aAAA,CAAC5C,0BAAA,CAAAK,OAAgB,EAAAC,QAAA,KAAKoB,KAAK;IAAEE,SAAS,EAAEA;EAAU,EAAE,CAAC;AAC9D,CAAC,CAAC","ignoreList":[]}
|
package/lib/commonjs/index.js
CHANGED
|
@@ -37,6 +37,18 @@ Object.keys(_WebGPUViewNativeComponent).forEach(function (key) {
|
|
|
37
37
|
}
|
|
38
38
|
});
|
|
39
39
|
});
|
|
40
|
+
var _utils = require("./utils");
|
|
41
|
+
Object.keys(_utils).forEach(function (key) {
|
|
42
|
+
if (key === "default" || key === "__esModule") return;
|
|
43
|
+
if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
|
|
44
|
+
if (key in exports && exports[key] === _utils[key]) return;
|
|
45
|
+
Object.defineProperty(exports, key, {
|
|
46
|
+
enumerable: true,
|
|
47
|
+
get: function () {
|
|
48
|
+
return _utils[key];
|
|
49
|
+
}
|
|
50
|
+
});
|
|
51
|
+
});
|
|
40
52
|
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
41
53
|
/* eslint-disable @typescript-eslint/no-explicit-any */
|
|
42
54
|
|
|
@@ -181,4 +193,17 @@ global.GPUShaderModule = GPUShaderModule;
|
|
|
181
193
|
global.GPUTexture = GPUTexture;
|
|
182
194
|
global.GPUTextureView = GPUTextureView;
|
|
183
195
|
_NativeWebGPUModule.default.install();
|
|
196
|
+
if (!navigator) {
|
|
197
|
+
// eslint-disable-next-line @typescript-eslint/ban-ts-comment
|
|
198
|
+
// @ts-expect-error
|
|
199
|
+
navigator = {};
|
|
200
|
+
}
|
|
201
|
+
// eslint-disable-next-line @typescript-eslint/ban-ts-comment
|
|
202
|
+
// @ts-expect-error
|
|
203
|
+
navigator.gpu = RNWebGPU.gpu;
|
|
204
|
+
|
|
205
|
+
// eslint-disable-next-line @typescript-eslint/ban-ts-comment
|
|
206
|
+
// @ts-ignore
|
|
207
|
+
navigator.userAgent = "react-native";
|
|
208
|
+
global.createImageBitmap = global.createImageBitmap ?? ((...params) => new Promise(resolve => resolve(RNWebGPU.createImageBitmap(...params))));
|
|
184
209
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_NativeWebGPUModule","_interopRequireDefault","require","_Canvas","Object","keys","forEach","key","prototype","hasOwnProperty","call","_exportNames","exports","defineProperty","enumerable","get","_WebGPUViewNativeComponent","e","__esModule","default","GPU","Symbol","hasInstance","instance","__brand","GPUAdapter","GPUAdapterInfo","GPUBindGroup","GPUBindGroupLayout","GPUBuffer","GPUCanvasContext","GPUCommandBuffer","GPUCommandEncoder","GPUCompilationInfo","GPUCompilationMessage","GPUComputePassEncoder","GPUComputePipeline","GPUDevice","GPUDeviceLostInfo","GPUError","GPUExternalTexture","GPUPipelineLayout","GPUQuerySet","GPUQueue","GPURenderBundle","GPURenderBundleEncoder","GPURenderPassEncoder","GPURenderPipeline","GPUSampler","GPUShaderModule","GPUTexture","GPUTextureView","global","WebGPUNativeModule","install"],"sourceRoot":"../../src","sources":["index.tsx"],"mappings":";;;;;;;;;;;;;;AACA,IAAAA,mBAAA,GAAAC,sBAAA,CAAAC,OAAA;AAEA,IAAAC,OAAA,GAAAD,OAAA;AAAAE,MAAA,CAAAC,IAAA,CAAAF,OAAA,EAAAG,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAC,YAAA,EAAAJ,GAAA;EAAA,IAAAA,GAAA,IAAAK,OAAA,IAAAA,OAAA,CAAAL,GAAA,MAAAJ,OAAA,CAAAI,GAAA;EAAAH,MAAA,CAAAS,cAAA,CAAAD,OAAA,EAAAL,GAAA;IAAAO,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAZ,OAAA,CAAAI,GAAA;IAAA;EAAA;AAAA;AACA,IAAAS,0BAAA,GAAAd,OAAA;AAAAE,MAAA,CAAAC,IAAA,CAAAW,0BAAA,EAAAV,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAC,YAAA,EAAAJ,GAAA;EAAA,IAAAA,GAAA,IAAAK,OAAA,IAAAA,OAAA,CAAAL,GAAA,MAAAS,0BAAA,CAAAT,GAAA;EAAAH,MAAA,CAAAS,cAAA,CAAAD,OAAA,EAAAL,GAAA;IAAAO,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAC,0BAAA,CAAAT,GAAA;IAAA;EAAA;AAAA;
|
|
1
|
+
{"version":3,"names":["_NativeWebGPUModule","_interopRequireDefault","require","_Canvas","Object","keys","forEach","key","prototype","hasOwnProperty","call","_exportNames","exports","defineProperty","enumerable","get","_WebGPUViewNativeComponent","_utils","e","__esModule","default","GPU","Symbol","hasInstance","instance","__brand","GPUAdapter","GPUAdapterInfo","GPUBindGroup","GPUBindGroupLayout","GPUBuffer","GPUCanvasContext","GPUCommandBuffer","GPUCommandEncoder","GPUCompilationInfo","GPUCompilationMessage","GPUComputePassEncoder","GPUComputePipeline","GPUDevice","GPUDeviceLostInfo","GPUError","GPUExternalTexture","GPUPipelineLayout","GPUQuerySet","GPUQueue","GPURenderBundle","GPURenderBundleEncoder","GPURenderPassEncoder","GPURenderPipeline","GPUSampler","GPUShaderModule","GPUTexture","GPUTextureView","global","WebGPUNativeModule","install","navigator","gpu","RNWebGPU","userAgent","createImageBitmap","params","Promise","resolve"],"sourceRoot":"../../src","sources":["index.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.warnIfNotHardwareAccelerated = exports.useCanvasEffect = void 0;
|
|
7
|
+
var _react = require("react");
|
|
8
|
+
const warnIfNotHardwareAccelerated = adapter => {
|
|
9
|
+
if (adapter.info.architecture === "swiftshader") {
|
|
10
|
+
console.warn("GPUAdapter is not hardware accelerated. This is common on Android emulators. Rendering will be slow.");
|
|
11
|
+
}
|
|
12
|
+
};
|
|
13
|
+
exports.warnIfNotHardwareAccelerated = warnIfNotHardwareAccelerated;
|
|
14
|
+
const useCanvasEffect = effect => {
|
|
15
|
+
const ref = (0, _react.useRef)(null);
|
|
16
|
+
const unsubscribe = (0, _react.useRef)();
|
|
17
|
+
(0, _react.useEffect)(() => {
|
|
18
|
+
requestAnimationFrame(async () => {
|
|
19
|
+
// const adapter = await navigator.gpu.requestAdapter();
|
|
20
|
+
// if (!adapter) {
|
|
21
|
+
// return;
|
|
22
|
+
// }
|
|
23
|
+
// const device = await adapter.requestDevice();
|
|
24
|
+
const unsub = await effect();
|
|
25
|
+
if (unsub) {
|
|
26
|
+
unsubscribe.current = unsub;
|
|
27
|
+
}
|
|
28
|
+
});
|
|
29
|
+
return () => {
|
|
30
|
+
if (unsubscribe.current) {
|
|
31
|
+
unsubscribe.current();
|
|
32
|
+
}
|
|
33
|
+
};
|
|
34
|
+
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
35
|
+
}, []);
|
|
36
|
+
return ref;
|
|
37
|
+
};
|
|
38
|
+
exports.useCanvasEffect = useCanvasEffect;
|
|
39
|
+
//# sourceMappingURL=utils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_react","require","warnIfNotHardwareAccelerated","adapter","info","architecture","console","warn","exports","useCanvasEffect","effect","ref","useRef","unsubscribe","useEffect","requestAnimationFrame","unsub","current"],"sourceRoot":"../../src","sources":["utils.ts"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AAMO,MAAMC,4BAA4B,GAAIC,OAAmB,IAAK;EACnE,IAAIA,OAAO,CAACC,IAAI,CAACC,YAAY,KAAK,aAAa,EAAE;IAC/CC,OAAO,CAACC,IAAI,CACV,sGACF,CAAC;EACH;AACF,CAAC;AAACC,OAAA,CAAAN,4BAAA,GAAAA,4BAAA;AAEK,MAAMO,eAAe,GAC1BC,MAA8D,IAC3D;EACH,MAAMC,GAAG,GAAG,IAAAC,aAAM,EAAY,IAAI,CAAC;EACnC,MAAMC,WAAW,GAAG,IAAAD,aAAM,EAAc,CAAC;EACzC,IAAAE,gBAAS,EAAC,MAAM;IACdC,qBAAqB,CAAC,YAAY;MAChC;MACA;MACA;MACA;MACA;MACA,MAAMC,KAAK,GAAG,MAAMN,MAAM,CAAC,CAAC;MAC5B,IAAIM,KAAK,EAAE;QACTH,WAAW,CAACI,OAAO,GAAGD,KAAK;MAC7B;IACF,CAAC,CAAC;IACF,OAAO,MAAM;MACX,IAAIH,WAAW,CAACI,OAAO,EAAE;QACvBJ,WAAW,CAACI,OAAO,CAAC,CAAC;MACvB;IACF,CAAC;IACD;EACF,CAAC,EAAE,EAAE,CAAC;EACN,OAAON,GAAG;AACZ,CAAC;AAACH,OAAA,CAAAC,eAAA,GAAAA,eAAA","ignoreList":[]}
|
package/lib/module/Canvas.js
CHANGED
|
@@ -24,9 +24,7 @@ export const Canvas = /*#__PURE__*/forwardRef((props, ref) => {
|
|
|
24
24
|
if (!nativeSurface) {
|
|
25
25
|
return null;
|
|
26
26
|
}
|
|
27
|
-
|
|
28
|
-
// @ts-expect-error
|
|
29
|
-
const ctx = navigator.MakeWebGPUCanvasContext(nativeSurface);
|
|
27
|
+
const ctx = RNWebGPU.MakeWebGPUCanvasContext(nativeSurface);
|
|
30
28
|
return ctx;
|
|
31
29
|
}
|
|
32
30
|
}));
|
package/lib/module/Canvas.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["forwardRef","useEffect","useImperativeHandle","useState","WebGPUNativeView","WebGPUNativeModule","CONTEXT_COUNTER","generateContextId","global","__WebGPUContextRegistry","WebGPUContextRegistry","Canvas","props","ref","contextId","_","getNativeSurface","createSurfaceContext","getContext","contextName","Error","nativeSurface","ctx","
|
|
1
|
+
{"version":3,"names":["forwardRef","useEffect","useImperativeHandle","useState","WebGPUNativeView","WebGPUNativeModule","CONTEXT_COUNTER","generateContextId","global","__WebGPUContextRegistry","WebGPUContextRegistry","Canvas","props","ref","contextId","_","getNativeSurface","createSurfaceContext","getContext","contextName","Error","nativeSurface","ctx","RNWebGPU","MakeWebGPUCanvasContext","React","createElement","_extends"],"sourceRoot":"../../src","sources":["Canvas.tsx"],"mappings":";AACA,SAASA,UAAU,EAAEC,SAAS,EAAEC,mBAAmB,EAAEC,QAAQ,QAAQ,OAAO;AAE5E,OAAOC,gBAAgB,MAAM,6BAA6B;AAC1D,OAAOC,kBAAkB,MAAM,sBAAsB;AAErD,IAAIC,eAAe,GAAG,CAAC;AACvB,SAASC,iBAAiBA,CAAA,EAAG;EAC3B,OAAOD,eAAe,EAAE;AAC1B;AAsBAE,MAAM,CAACC,uBAAuB,GAAG,CAAC,CAAC;AACnC,MAAMC,qBAAqB,GAAGF,MAAM,CAACC,uBAAuB;AAW5D,OAAO,MAAME,MAAM,gBAAGX,UAAU,CAAuB,CAACY,KAAK,EAAEC,GAAG,KAAK;EACrE,MAAM,CAACC,SAAS,EAAEC,CAAC,CAAC,GAAGZ,QAAQ,CAAC,MAAMI,iBAAiB,CAAC,CAAC,CAAC;EAE1DL,mBAAmB,CAACW,GAAG,EAAE,OAAO;IAC9BG,gBAAgB,EAAEA,CAAA,KAAM;MACtBX,kBAAkB,CAACY,oBAAoB,CAACH,SAAS,CAAC;MAClD,OAAOJ,qBAAqB,CAACI,SAAS,CAAC;IACzC,CAAC;IACDI,UAAUA,CAACC,WAAqB,EAAwB;MACtD,IAAIA,WAAW,KAAK,QAAQ,EAAE;QAC5B,MAAM,IAAIC,KAAK,CAAC,iCAAiCD,WAAW,EAAE,CAAC;MACjE;MACAd,kBAAkB,CAACY,oBAAoB,CAACH,SAAS,CAAC;MAClD,MAAMO,aAAa,GAAGX,qBAAqB,CAACI,SAAS,CAAC;MACtD,IAAI,CAACO,aAAa,EAAE;QAClB,OAAO,IAAI;MACb;MACA,MAAMC,GAAG,GAAGC,QAAQ,CAACC,uBAAuB,CAACH,aAAa,CAAC;MAC3D,OAAOC,GAAG;IACZ;EACF,CAAC,CAAC,CAAC;EAEHrB,SAAS,CAAC,MAAM;IACd,OAAO,MAAM;MACX,OAAOS,qBAAqB,CAACI,SAAS,CAAC;IACzC,CAAC;EACH,CAAC,EAAE,CAACA,SAAS,CAAC,CAAC;EAEf,oBAAOW,KAAA,CAAAC,aAAA,CAACtB,gBAAgB,EAAAuB,QAAA,KAAKf,KAAK;IAAEE,SAAS,EAAEA;EAAU,EAAE,CAAC;AAC9D,CAAC,CAAC","ignoreList":[]}
|
package/lib/module/index.js
CHANGED
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
import WebGPUNativeModule from "./NativeWebGPUModule";
|
|
3
3
|
export * from "./Canvas";
|
|
4
4
|
export * from "./WebGPUViewNativeComponent";
|
|
5
|
+
export * from "./utils";
|
|
5
6
|
export { default as WebGPUModule } from "./NativeWebGPUModule";
|
|
6
7
|
const GPU = {};
|
|
7
8
|
GPU[Symbol.hasInstance] = function (instance) {
|
|
@@ -144,4 +145,17 @@ global.GPUShaderModule = GPUShaderModule;
|
|
|
144
145
|
global.GPUTexture = GPUTexture;
|
|
145
146
|
global.GPUTextureView = GPUTextureView;
|
|
146
147
|
WebGPUNativeModule.install();
|
|
148
|
+
if (!navigator) {
|
|
149
|
+
// eslint-disable-next-line @typescript-eslint/ban-ts-comment
|
|
150
|
+
// @ts-expect-error
|
|
151
|
+
navigator = {};
|
|
152
|
+
}
|
|
153
|
+
// eslint-disable-next-line @typescript-eslint/ban-ts-comment
|
|
154
|
+
// @ts-expect-error
|
|
155
|
+
navigator.gpu = RNWebGPU.gpu;
|
|
156
|
+
|
|
157
|
+
// eslint-disable-next-line @typescript-eslint/ban-ts-comment
|
|
158
|
+
// @ts-ignore
|
|
159
|
+
navigator.userAgent = "react-native";
|
|
160
|
+
global.createImageBitmap = global.createImageBitmap ?? ((...params) => new Promise(resolve => resolve(RNWebGPU.createImageBitmap(...params))));
|
|
147
161
|
//# sourceMappingURL=index.js.map
|
package/lib/module/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["WebGPUNativeModule","default","WebGPUModule","GPU","Symbol","hasInstance","instance","__brand","GPUAdapter","GPUAdapterInfo","GPUBindGroup","GPUBindGroupLayout","GPUBuffer","GPUCanvasContext","GPUCommandBuffer","GPUCommandEncoder","GPUCompilationInfo","GPUCompilationMessage","GPUComputePassEncoder","GPUComputePipeline","GPUDevice","GPUDeviceLostInfo","GPUError","GPUExternalTexture","GPUPipelineLayout","GPUQuerySet","GPUQueue","GPURenderBundle","GPURenderBundleEncoder","GPURenderPassEncoder","GPURenderPipeline","GPUSampler","GPUShaderModule","GPUTexture","GPUTextureView","global","install"],"sourceRoot":"../../src","sources":["index.tsx"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["WebGPUNativeModule","default","WebGPUModule","GPU","Symbol","hasInstance","instance","__brand","GPUAdapter","GPUAdapterInfo","GPUBindGroup","GPUBindGroupLayout","GPUBuffer","GPUCanvasContext","GPUCommandBuffer","GPUCommandEncoder","GPUCompilationInfo","GPUCompilationMessage","GPUComputePassEncoder","GPUComputePipeline","GPUDevice","GPUDeviceLostInfo","GPUError","GPUExternalTexture","GPUPipelineLayout","GPUQuerySet","GPUQueue","GPURenderBundle","GPURenderBundleEncoder","GPURenderPassEncoder","GPURenderPipeline","GPUSampler","GPUShaderModule","GPUTexture","GPUTextureView","global","install","navigator","gpu","RNWebGPU","userAgent","createImageBitmap","params","Promise","resolve"],"sourceRoot":"../../src","sources":["index.tsx"],"mappings":"AAAA;AACA,OAAOA,kBAAkB,MAAM,sBAAsB;AAErD,cAAc,UAAU;AACxB,cAAc,6BAA6B;AAC3C,cAAc,SAAS;AACvB,SAASC,OAAO,IAAIC,YAAY,QAAQ,sBAAsB;AAE9D,MAAMC,GAAQ,GAAG,CAAC,CAAC;AACnBA,GAAG,CAACC,MAAM,CAACC,WAAW,CAAC,GAAG,UAAUC,QAAgB,EAAE;EACpD,OAAO,SAAS,IAAIA,QAAQ,IAAIA,QAAQ,CAACC,OAAO,KAAK,KAAK;AAC5D,CAAC;AAED,MAAMC,UAAe,GAAG,CAAC,CAAC;AAC1BA,UAAU,CAACJ,MAAM,CAACC,WAAW,CAAC,GAAG,UAAUC,QAAgB,EAAE;EAC3D,OAAO,SAAS,IAAIA,QAAQ,IAAIA,QAAQ,CAACC,OAAO,KAAK,YAAY;AACnE,CAAC;AAED,MAAME,cAAmB,GAAG,CAAC,CAAC;AAC9BA,cAAc,CAACL,MAAM,CAACC,WAAW,CAAC,GAAG,UAAUC,QAAgB,EAAE;EAC/D,OAAO,SAAS,IAAIA,QAAQ,IAAIA,QAAQ,CAACC,OAAO,KAAK,gBAAgB;AACvE,CAAC;AAED,MAAMG,YAAiB,GAAG,CAAC,CAAC;AAC5BA,YAAY,CAACN,MAAM,CAACC,WAAW,CAAC,GAAG,UAAUC,QAAgB,EAAE;EAC7D,OAAO,SAAS,IAAIA,QAAQ,IAAIA,QAAQ,CAACC,OAAO,KAAK,cAAc;AACrE,CAAC;AAED,MAAMI,kBAAuB,GAAG,CAAC,CAAC;AAClCA,kBAAkB,CAACP,MAAM,CAACC,WAAW,CAAC,GAAG,UAAUC,QAAgB,EAAE;EACnE,OAAO,SAAS,IAAIA,QAAQ,IAAIA,QAAQ,CAACC,OAAO,KAAK,oBAAoB;AAC3E,CAAC;AAED,MAAMK,SAAc,GAAG,CAAC,CAAC;AACzBA,SAAS,CAACR,MAAM,CAACC,WAAW,CAAC,GAAG,UAAUC,QAAgB,EAAE;EAC1D,OAAO,SAAS,IAAIA,QAAQ,IAAIA,QAAQ,CAACC,OAAO,KAAK,WAAW;AAClE,CAAC;AAED,MAAMM,gBAAqB,GAAG,CAAC,CAAC;AAChCA,gBAAgB,CAACT,MAAM,CAACC,WAAW,CAAC,GAAG,UAAUC,QAAgB,EAAE;EACjE,OAAO,SAAS,IAAIA,QAAQ,IAAIA,QAAQ,CAACC,OAAO,KAAK,kBAAkB;AACzE,CAAC;AAED,MAAMO,gBAAqB,GAAG,CAAC,CAAC;AAChCA,gBAAgB,CAACV,MAAM,CAACC,WAAW,CAAC,GAAG,UAAUC,QAAgB,EAAE;EACjE,OAAO,SAAS,IAAIA,QAAQ,IAAIA,QAAQ,CAACC,OAAO,KAAK,kBAAkB;AACzE,CAAC;AAED,MAAMQ,iBAAsB,GAAG,CAAC,CAAC;AACjCA,iBAAiB,CAACX,MAAM,CAACC,WAAW,CAAC,GAAG,UAAUC,QAAgB,EAAE;EAClE,OAAO,SAAS,IAAIA,QAAQ,IAAIA,QAAQ,CAACC,OAAO,KAAK,mBAAmB;AAC1E,CAAC;AAED,MAAMS,kBAAuB,GAAG,CAAC,CAAC;AAClCA,kBAAkB,CAACZ,MAAM,CAACC,WAAW,CAAC,GAAG,UAAUC,QAAgB,EAAE;EACnE,OAAO,SAAS,IAAIA,QAAQ,IAAIA,QAAQ,CAACC,OAAO,KAAK,oBAAoB;AAC3E,CAAC;AAED,MAAMU,qBAA0B,GAAG,CAAC,CAAC;AACrCA,qBAAqB,CAACb,MAAM,CAACC,WAAW,CAAC,GAAG,UAAUC,QAAgB,EAAE;EACtE,OAAO,SAAS,IAAIA,QAAQ,IAAIA,QAAQ,CAACC,OAAO,KAAK,uBAAuB;AAC9E,CAAC;AAED,MAAMW,qBAA0B,GAAG,CAAC,CAAC;AACrCA,qBAAqB,CAACd,MAAM,CAACC,WAAW,CAAC,GAAG,UAAUC,QAAgB,EAAE;EACtE,OAAO,SAAS,IAAIA,QAAQ,IAAIA,QAAQ,CAACC,OAAO,KAAK,uBAAuB;AAC9E,CAAC;AAED,MAAMY,kBAAuB,GAAG,CAAC,CAAC;AAClCA,kBAAkB,CAACf,MAAM,CAACC,WAAW,CAAC,GAAG,UAAUC,QAAgB,EAAE;EACnE,OAAO,SAAS,IAAIA,QAAQ,IAAIA,QAAQ,CAACC,OAAO,KAAK,oBAAoB;AAC3E,CAAC;AAED,MAAMa,SAAc,GAAG,CAAC,CAAC;AACzBA,SAAS,CAAChB,MAAM,CAACC,WAAW,CAAC,GAAG,UAAUC,QAAgB,EAAE;EAC1D,OAAO,SAAS,IAAIA,QAAQ,IAAIA,QAAQ,CAACC,OAAO,KAAK,WAAW;AAClE,CAAC;AAED,MAAMc,iBAAsB,GAAG,CAAC,CAAC;AACjCA,iBAAiB,CAACjB,MAAM,CAACC,WAAW,CAAC,GAAG,UAAUC,QAAgB,EAAE;EAClE,OAAO,SAAS,IAAIA,QAAQ,IAAIA,QAAQ,CAACC,OAAO,KAAK,mBAAmB;AAC1E,CAAC;AAED,MAAMe,QAAa,GAAG,CAAC,CAAC;AACxBA,QAAQ,CAAClB,MAAM,CAACC,WAAW,CAAC,GAAG,UAAUC,QAAgB,EAAE;EACzD,OAAO,SAAS,IAAIA,QAAQ,IAAIA,QAAQ,CAACC,OAAO,KAAK,UAAU;AACjE,CAAC;AAED,MAAMgB,kBAAuB,GAAG,CAAC,CAAC;AAClCA,kBAAkB,CAACnB,MAAM,CAACC,WAAW,CAAC,GAAG,UAAUC,QAAgB,EAAE;EACnE,OAAO,SAAS,IAAIA,QAAQ,IAAIA,QAAQ,CAACC,OAAO,KAAK,oBAAoB;AAC3E,CAAC;AAED,MAAMiB,iBAAsB,GAAG,CAAC,CAAC;AACjCA,iBAAiB,CAACpB,MAAM,CAACC,WAAW,CAAC,GAAG,UAAUC,QAAgB,EAAE;EAClE,OAAO,SAAS,IAAIA,QAAQ,IAAIA,QAAQ,CAACC,OAAO,KAAK,mBAAmB;AAC1E,CAAC;AAED,MAAMkB,WAAgB,GAAG,CAAC,CAAC;AAC3BA,WAAW,CAACrB,MAAM,CAACC,WAAW,CAAC,GAAG,UAAUC,QAAgB,EAAE;EAC5D,OAAO,SAAS,IAAIA,QAAQ,IAAIA,QAAQ,CAACC,OAAO,KAAK,aAAa;AACpE,CAAC;AAED,MAAMmB,QAAa,GAAG,CAAC,CAAC;AACxBA,QAAQ,CAACtB,MAAM,CAACC,WAAW,CAAC,GAAG,UAAUC,QAAgB,EAAE;EACzD,OAAO,SAAS,IAAIA,QAAQ,IAAIA,QAAQ,CAACC,OAAO,KAAK,UAAU;AACjE,CAAC;AAED,MAAMoB,eAAoB,GAAG,CAAC,CAAC;AAC/BA,eAAe,CAACvB,MAAM,CAACC,WAAW,CAAC,GAAG,UAAUC,QAAgB,EAAE;EAChE,OAAO,SAAS,IAAIA,QAAQ,IAAIA,QAAQ,CAACC,OAAO,KAAK,iBAAiB;AACxE,CAAC;AAED,MAAMqB,sBAA2B,GAAG,CAAC,CAAC;AACtCA,sBAAsB,CAACxB,MAAM,CAACC,WAAW,CAAC,GAAG,UAAUC,QAAgB,EAAE;EACvE,OAAO,SAAS,IAAIA,QAAQ,IAAIA,QAAQ,CAACC,OAAO,KAAK,wBAAwB;AAC/E,CAAC;AAED,MAAMsB,oBAAyB,GAAG,CAAC,CAAC;AACpCA,oBAAoB,CAACzB,MAAM,CAACC,WAAW,CAAC,GAAG,UAAUC,QAAgB,EAAE;EACrE,OAAO,SAAS,IAAIA,QAAQ,IAAIA,QAAQ,CAACC,OAAO,KAAK,sBAAsB;AAC7E,CAAC;AAED,MAAMuB,iBAAsB,GAAG,CAAC,CAAC;AACjCA,iBAAiB,CAAC1B,MAAM,CAACC,WAAW,CAAC,GAAG,UAAUC,QAAgB,EAAE;EAClE,OAAO,SAAS,IAAIA,QAAQ,IAAIA,QAAQ,CAACC,OAAO,KAAK,mBAAmB;AAC1E,CAAC;AAED,MAAMwB,UAAe,GAAG,CAAC,CAAC;AAC1BA,UAAU,CAAC3B,MAAM,CAACC,WAAW,CAAC,GAAG,UAAUC,QAAgB,EAAE;EAC3D,OAAO,SAAS,IAAIA,QAAQ,IAAIA,QAAQ,CAACC,OAAO,KAAK,YAAY;AACnE,CAAC;AAED,MAAMyB,eAAoB,GAAG,CAAC,CAAC;AAC/BA,eAAe,CAAC5B,MAAM,CAACC,WAAW,CAAC,GAAG,UAAUC,QAAgB,EAAE;EAChE,OAAO,SAAS,IAAIA,QAAQ,IAAIA,QAAQ,CAACC,OAAO,KAAK,iBAAiB;AACxE,CAAC;AAED,MAAM0B,UAAe,GAAG,CAAC,CAAC;AAC1BA,UAAU,CAAC7B,MAAM,CAACC,WAAW,CAAC,GAAG,UAAUC,QAAgB,EAAE;EAC3D,OAAO,SAAS,IAAIA,QAAQ,IAAIA,QAAQ,CAACC,OAAO,KAAK,YAAY;AACnE,CAAC;AAED,MAAM2B,cAAmB,GAAG,CAAC,CAAC;AAC9BA,cAAc,CAAC9B,MAAM,CAACC,WAAW,CAAC,GAAG,UAAUC,QAAgB,EAAE;EAC/D,OAAO,SAAS,IAAIA,QAAQ,IAAIA,QAAQ,CAACC,OAAO,KAAK,gBAAgB;AACvE,CAAC;AAED4B,MAAM,CAAChC,GAAG,GAAGA,GAAG;AAChBgC,MAAM,CAAC3B,UAAU,GAAGA,UAAU;AAC9B2B,MAAM,CAAC1B,cAAc,GAAGA,cAAc;AACtC0B,MAAM,CAACzB,YAAY,GAAGA,YAAY;AAClCyB,MAAM,CAACxB,kBAAkB,GAAGA,kBAAkB;AAC9CwB,MAAM,CAACvB,SAAS,GAAGA,SAAS;AAC5BuB,MAAM,CAACtB,gBAAgB,GAAGA,gBAAgB;AAC1CsB,MAAM,CAACrB,gBAAgB,GAAGA,gBAAgB;AAC1CqB,MAAM,CAACpB,iBAAiB,GAAGA,iBAAiB;AAC5CoB,MAAM,CAACnB,kBAAkB,GAAGA,kBAAkB;AAC9CmB,MAAM,CAAClB,qBAAqB,GAAGA,qBAAqB;AACpDkB,MAAM,CAACjB,qBAAqB,GAAGA,qBAAqB;AACpDiB,MAAM,CAAChB,kBAAkB,GAAGA,kBAAkB;AAC9CgB,MAAM,CAACf,SAAS,GAAGA,SAAS;AAC5Be,MAAM,CAACd,iBAAiB,GAAGA,iBAAiB;AAC5Cc,MAAM,CAACb,QAAQ,GAAGA,QAAQ;AAC1Ba,MAAM,CAACZ,kBAAkB,GAAGA,kBAAkB;AAC9CY,MAAM,CAACX,iBAAiB,GAAGA,iBAAiB;AAC5CW,MAAM,CAACV,WAAW,GAAGA,WAAW;AAChCU,MAAM,CAACT,QAAQ,GAAGA,QAAQ;AAC1BS,MAAM,CAACR,eAAe,GAAGA,eAAe;AACxCQ,MAAM,CAACP,sBAAsB,GAAGA,sBAAsB;AACtDO,MAAM,CAACN,oBAAoB,GAAGA,oBAAoB;AAClDM,MAAM,CAACL,iBAAiB,GAAGA,iBAAiB;AAC5CK,MAAM,CAACJ,UAAU,GAAGA,UAAU;AAC9BI,MAAM,CAACH,eAAe,GAAGA,eAAe;AACxCG,MAAM,CAACF,UAAU,GAAGA,UAAU;AAC9BE,MAAM,CAACD,cAAc,GAAGA,cAAc;AAEtClC,kBAAkB,CAACoC,OAAO,CAAC,CAAC;AAE5B,IAAI,CAACC,SAAS,EAAE;EACd;EACA;EACAA,SAAS,GAAG,CAAC,CAAC;AAChB;AACA;AACA;AACAA,SAAS,CAACC,GAAG,GAAGC,QAAQ,CAACD,GAAG;;AAE5B;AACA;AACAD,SAAS,CAACG,SAAS,GAAG,cAAc;AAEpCL,MAAM,CAACM,iBAAiB,GACtBN,MAAM,CAACM,iBAAiB,KACvB,CAAC,GAAGC,MAA4C,KAC/C,IAAIC,OAAO,CAAEC,OAAO,IAAKA,OAAO,CAACL,QAAQ,CAACE,iBAAiB,CAAC,GAAGC,MAAM,CAAC,CAAC,CAAC,CAAC","ignoreList":[]}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import { useEffect, useRef } from "react";
|
|
2
|
+
export const warnIfNotHardwareAccelerated = adapter => {
|
|
3
|
+
if (adapter.info.architecture === "swiftshader") {
|
|
4
|
+
console.warn("GPUAdapter is not hardware accelerated. This is common on Android emulators. Rendering will be slow.");
|
|
5
|
+
}
|
|
6
|
+
};
|
|
7
|
+
export const useCanvasEffect = effect => {
|
|
8
|
+
const ref = useRef(null);
|
|
9
|
+
const unsubscribe = useRef();
|
|
10
|
+
useEffect(() => {
|
|
11
|
+
requestAnimationFrame(async () => {
|
|
12
|
+
// const adapter = await navigator.gpu.requestAdapter();
|
|
13
|
+
// if (!adapter) {
|
|
14
|
+
// return;
|
|
15
|
+
// }
|
|
16
|
+
// const device = await adapter.requestDevice();
|
|
17
|
+
const unsub = await effect();
|
|
18
|
+
if (unsub) {
|
|
19
|
+
unsubscribe.current = unsub;
|
|
20
|
+
}
|
|
21
|
+
});
|
|
22
|
+
return () => {
|
|
23
|
+
if (unsubscribe.current) {
|
|
24
|
+
unsubscribe.current();
|
|
25
|
+
}
|
|
26
|
+
};
|
|
27
|
+
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
28
|
+
}, []);
|
|
29
|
+
return ref;
|
|
30
|
+
};
|
|
31
|
+
//# sourceMappingURL=utils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["useEffect","useRef","warnIfNotHardwareAccelerated","adapter","info","architecture","console","warn","useCanvasEffect","effect","ref","unsubscribe","requestAnimationFrame","unsub","current"],"sourceRoot":"../../src","sources":["utils.ts"],"mappings":"AAAA,SAASA,SAAS,EAAEC,MAAM,QAAQ,OAAO;AAMzC,OAAO,MAAMC,4BAA4B,GAAIC,OAAmB,IAAK;EACnE,IAAIA,OAAO,CAACC,IAAI,CAACC,YAAY,KAAK,aAAa,EAAE;IAC/CC,OAAO,CAACC,IAAI,CACV,sGACF,CAAC;EACH;AACF,CAAC;AAED,OAAO,MAAMC,eAAe,GAC1BC,MAA8D,IAC3D;EACH,MAAMC,GAAG,GAAGT,MAAM,CAAY,IAAI,CAAC;EACnC,MAAMU,WAAW,GAAGV,MAAM,CAAc,CAAC;EACzCD,SAAS,CAAC,MAAM;IACdY,qBAAqB,CAAC,YAAY;MAChC;MACA;MACA;MACA;MACA;MACA,MAAMC,KAAK,GAAG,MAAMJ,MAAM,CAAC,CAAC;MAC5B,IAAII,KAAK,EAAE;QACTF,WAAW,CAACG,OAAO,GAAGD,KAAK;MAC7B;IACF,CAAC,CAAC;IACF,OAAO,MAAM;MACX,IAAIF,WAAW,CAACG,OAAO,EAAE;QACvBH,WAAW,CAACG,OAAO,CAAC,CAAC;MACvB;IACF,CAAC;IACD;EACF,CAAC,EAAE,EAAE,CAAC;EACN,OAAOJ,GAAG;AACZ,CAAC","ignoreList":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../commonjs/utils.js"],"names":[],"mappings":";AAOA,iEAIC;AAED,4EAuBC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Canvas.d.ts","sourceRoot":"","sources":["../../../module/Canvas.js"],"names":[],"mappings":"AAUA,
|
|
1
|
+
{"version":3,"file":"Canvas.d.ts","sourceRoot":"","sources":["../../../module/Canvas.js"],"names":[],"mappings":"AAUA,mGA4BG"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../module/utils.js"],"names":[],"mappings":"AACO,iEAIN;AACM,qFAuBN"}
|
|
@@ -1,7 +1,12 @@
|
|
|
1
|
-
/// <reference types="@webgpu/types" />
|
|
2
1
|
import type { ViewProps } from "react-native";
|
|
3
2
|
declare global {
|
|
4
3
|
var __WebGPUContextRegistry: Record<number, NativeCanvas>;
|
|
4
|
+
var RNWebGPU: {
|
|
5
|
+
gpu: GPU;
|
|
6
|
+
MakeWebGPUCanvasContext: (nativeCanvas: NativeCanvas) => CanvasContext;
|
|
7
|
+
DecodeToUTF8: (buffer: NodeJS.ArrayBufferView | ArrayBuffer) => string;
|
|
8
|
+
createImageBitmap: typeof createImageBitmap;
|
|
9
|
+
};
|
|
5
10
|
}
|
|
6
11
|
export interface NativeCanvas {
|
|
7
12
|
surface: bigint;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Canvas.d.ts","sourceRoot":"","sources":["../../../src/Canvas.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"Canvas.d.ts","sourceRoot":"","sources":["../../../src/Canvas.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAW9C,OAAO,CAAC,MAAM,CAAC;IAEb,IAAI,uBAAuB,EAAE,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;IAE1D,IAAI,QAAQ,EAAE;QACZ,GAAG,EAAE,GAAG,CAAC;QACT,uBAAuB,EAAE,CAAC,YAAY,EAAE,YAAY,KAAK,aAAa,CAAC;QACvE,YAAY,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,eAAe,GAAG,WAAW,KAAK,MAAM,CAAC;QACvE,iBAAiB,EAAE,OAAO,iBAAiB,CAAC;KAC7C,CAAC;CACH;AAED,MAAM,WAAW,YAAY;IAC3B,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;CACtB;AAKD,KAAK,aAAa,GAAG,gBAAgB,GAAG;IACtC,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,gBAAgB,EAAE,MAAM,YAAY,CAAC;CACtC,CAAC;AAEF,MAAM,WAAW,SAAS;IACxB,UAAU,CAAC,WAAW,EAAE,QAAQ,GAAG,aAAa,GAAG,IAAI,CAAC;CACzD;AAED,eAAO,MAAM,MAAM,iGA6BjB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"WebGPUViewNativeComponent.d.ts","sourceRoot":"","sources":["../../../src/WebGPUViewNativeComponent.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"WebGPUViewNativeComponent.d.ts","sourceRoot":"","sources":["../../../src/WebGPUViewNativeComponent.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAC9C,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,2CAA2C,CAAC;AAEvE,UAAU,WAAY,SAAQ,SAAS;IACrC,SAAS,CAAC,EAAE,KAAK,CAAC;CACnB;;AAGD,wBAAiE"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.tsx"],"names":[],"mappings":"AAGA,cAAc,UAAU,CAAC;AACzB,cAAc,6BAA6B,CAAC;AAC5C,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,sBAAsB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.tsx"],"names":[],"mappings":"AAGA,cAAc,UAAU,CAAC;AACzB,cAAc,6BAA6B,CAAC;AAC5C,cAAc,SAAS,CAAC;AACxB,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,sBAAsB,CAAC"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import type { CanvasRef } from "./Canvas";
|
|
2
|
+
type Unsubscribe = () => void;
|
|
3
|
+
export declare const warnIfNotHardwareAccelerated: (adapter: GPUAdapter) => void;
|
|
4
|
+
export declare const useCanvasEffect: (effect: () => void | Unsubscribe | Promise<void | Unsubscribe>) => import("react").RefObject<CanvasRef>;
|
|
5
|
+
export {};
|
|
6
|
+
//# sourceMappingURL=utils.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/utils.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAE1C,KAAK,WAAW,GAAG,MAAM,IAAI,CAAC;AAE9B,eAAO,MAAM,4BAA4B,YAAa,UAAU,SAM/D,CAAC;AAEF,eAAO,MAAM,eAAe,WAClB,MAAM,IAAI,GAAG,WAAW,GAAG,OAAO,CAAC,IAAI,GAAG,WAAW,CAAC,yCAwB/D,CAAC"}
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|