Giter VIP home page Giter VIP logo

react-native-arkit's People

Contributors

alexanderwallin avatar bnjm avatar conorstrejcek avatar eduardklinger avatar gtfargo avatar jacy-chen avatar macrozone avatar nualiian avatar qftgtr avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

react-native-arkit's Issues

Add color?

I see there is a method for changing TextNode color in the ObjC code, and I've tried a few things and failed. Every time, it is white. What am I doing wrong?

<ARKit.Text color="rgba(0,0,0,1)"...

<ARKit.Text color r={0} g={0} b={0}...

<ARKit.Text color={{r:0,g:0,b:0}}...

[Proposal] tap-on-planes-callbacks

I would propose to expose some callbacks:

onTapOnPlaneUsingExtent: is called with an array of ARHitTestResult by using ARHitTestResultTypeExistingPlaneUsingExtent (means: the boundary of the plane is taken into account)

onTapOnPlaneNoExtent: same, but extent is not used. (using ARHitTestResultTypeExistingPlane)

Alternative:

expose the hitTest-function to the react-world (with ref?). Gesture detection and tap detection is then in the responsibility of the library-user.

i will prepare a pr on this, but i would welcome feedbacks on that

[Performance] prevent remounting on shape change

When shape is changed, a node gets remounted instead of updated.

This prevents animating shapes via transitions and has some performance impact.

Shape should be updated in the same way like position, eulerAngles and rotation

Automatic/Manual Linking doesn't work! ld: library not found for -lRCTARKit

Hi, I am using latest XCode (9.0 beta 6 (9M214v)) and latest iOS11 (11.0 15A5372a) and the linkintg is just not working at all.

Ld /Users/swyx/Library/Developer/Xcode/DerivedData/secondapp-bdwzcmqkvlyubtajfdnpdrwdcozp/Build/Intermediates.noindex/secondapp.build/Release-iphoneos/secondapp.build/Objects-normal/arm64/secondapp normal arm64
    cd /Users/swyx/Desktop/webdev/tryreactnative/secondapp/ios
    export IPHONEOS_DEPLOYMENT_TARGET=8.0
    export PATH="/Users/swyx/Downloads/Xcode-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin:/Users/swyx/Downloads/Xcode-beta.app/Contents/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin"
    /Users/swyx/Downloads/Xcode-beta.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang -arch arm64 -isysroot /Users/swyx/Downloads/Xcode-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS11.0.sdk -L/Users/swyx/Library/Developer/Xcode/DerivedData/secondapp-bdwzcmqkvlyubtajfdnpdrwdcozp/Build/Products/Release-iphoneos -F/Users/swyx/Library/Developer/Xcode/DerivedData/secondapp-bdwzcmqkvlyubtajfdnpdrwdcozp/Build/Products/Release-iphoneos -filelist /Users/swyx/Library/Developer/Xcode/DerivedData/secondapp-bdwzcmqkvlyubtajfdnpdrwdcozp/Build/Intermediates.noindex/secondapp.build/Release-iphoneos/secondapp.build/Objects-normal/arm64/secondapp.LinkFileList -Xlinker -rpath -Xlinker @executable_path/Frameworks -miphoneos-version-min=8.0 -dead_strip -Xlinker -object_path_lto -Xlinker /Users/swyx/Library/Developer/Xcode/DerivedData/secondapp-bdwzcmqkvlyubtajfdnpdrwdcozp/Build/Intermediates.noindex/secondapp.build/Release-iphoneos/secondapp.build/Objects-normal/arm64/secondapp_lto.o -fembed-bitcode-marker -fobjc-arc -fobjc-link-runtime -ObjC -lc++ /Users/swyx/Library/Developer/Xcode/DerivedData/secondapp-bdwzcmqkvlyubtajfdnpdrwdcozp/Build/Products/Release-iphoneos/libRCTBlob.a /Users/swyx/Library/Developer/Xcode/DerivedData/secondapp-bdwzcmqkvlyubtajfdnpdrwdcozp/Build/Products/Release-iphoneos/libRCTAnimation.a -lReact /Users/swyx/Library/Developer/Xcode/DerivedData/secondapp-bdwzcmqkvlyubtajfdnpdrwdcozp/Build/Products/Release-iphoneos/libRCTAnimation.a /Users/swyx/Library/Developer/Xcode/DerivedData/secondapp-bdwzcmqkvlyubtajfdnpdrwdcozp/Build/Products/Release-iphoneos/libRCTActionSheet.a /Users/swyx/Library/Developer/Xcode/DerivedData/secondapp-bdwzcmqkvlyubtajfdnpdrwdcozp/Build/Products/Release-iphoneos/libRCTGeolocation.a /Users/swyx/Library/Developer/Xcode/DerivedData/secondapp-bdwzcmqkvlyubtajfdnpdrwdcozp/Build/Products/Release-iphoneos/libRCTImage.a /Users/swyx/Library/Developer/Xcode/DerivedData/secondapp-bdwzcmqkvlyubtajfdnpdrwdcozp/Build/Products/Release-iphoneos/libRCTLinking.a /Users/swyx/Library/Developer/Xcode/DerivedData/secondapp-bdwzcmqkvlyubtajfdnpdrwdcozp/Build/Products/Release-iphoneos/libRCTNetwork.a /Users/swyx/Library/Developer/Xcode/DerivedData/secondapp-bdwzcmqkvlyubtajfdnpdrwdcozp/Build/Products/Release-iphoneos/libRCTSettings.a /Users/swyx/Library/Developer/Xcode/DerivedData/secondapp-bdwzcmqkvlyubtajfdnpdrwdcozp/Build/Products/Release-iphoneos/libRCTText.a /Users/swyx/Library/Developer/Xcode/DerivedData/secondapp-bdwzcmqkvlyubtajfdnpdrwdcozp/Build/Products/Release-iphoneos/libRCTVibration.a /Users/swyx/Library/Developer/Xcode/DerivedData/secondapp-bdwzcmqkvlyubtajfdnpdrwdcozp/Build/Products/Release-iphoneos/libRCTWebSocket.a -lRCTARKit -Xlinker -dependency_info -Xlinker /Users/swyx/Library/Developer/Xcode/DerivedData/secondapp-bdwzcmqkvlyubtajfdnpdrwdcozp/Build/Intermediates.noindex/secondapp.build/Release-iphoneos/secondapp.build/Objects-normal/arm64/secondapp_dependency_info.dat -o /Users/swyx/Library/Developer/Xcode/DerivedData/secondapp-bdwzcmqkvlyubtajfdnpdrwdcozp/Build/Intermediates.noindex/secondapp.build/Release-iphoneos/secondapp.build/Objects-normal/arm64/secondapp


I have tried manual linking and XCode just crashes. Any ideas on what else I should do?

ARImage

Is it possible to render an image?
It seems to be part of the library, but the code file is blank and there are no examples.

Can't display the Custom model element

Hi,

Everything works well on my iPhone except that I can't display the custom element model here :

 <ARKit.Model
       pos={{ x: -0.2, y: 0, z: 0, frame: 'local' }}
       model={{file: 'art.scnassets/ship.scn', scale: 0.01}}/>

I added the file to my XCode project by creating a new AR project in XCode and copied the art.sncassets folder to my React Native Project :

capture d ecran 2017-09-11 a 11 22 37

I think everything is setted correctly but the ship won't show :/

Does someone have an idea why ?

Thanks for your work !

[Feature] Textures

Allow to specify texture(s) to materials

Also we might think about how to attach multiple textures. At the moment we attach the same texture to every side. Maybe we create a new property materials which is just an array of material.

  • If only material is specified, attach it to every side of the geometry
  • if materials is specified, attach it as an array

react-native link react-native-arkit doesn't work

For me, linking this library required running react-native link, not react-native link react-native-arkit - doing the latter resulted in:

Command `link` unrecognized. Make sure that you have run `npm install` and that you are inside a react-native project.

[Question] Click event on plane to set an anchor

Hi there,

First of all well done for this library. It's a very exciting topic indeed and with the RN hype at the moment it will certainly gain traction in no time.

I have been playing around with ARKit and had the look at the ios source code. I can see that you used SCNNode and ARPlaneAnchor for the Plane.update function.

Is it possible to click on the mobile screen to set an anchor and get the X,Y,Z position of this point on the plane?

Thank you very much.

Cheers,
Tom

Suggestion: Make the usage more React familiar without refs

What about changing the usage to a more React-like approach? I mean, the creation of the elements would be determined by their usage as children of the ARKit component.
It's a suggestion @qftgtr , if you agree I can PR you on this.

import React, { Component } from 'react';
import { AppRegistry, View } from 'react-native';
import ARKit from 'react-native-arkit';

export default function RNARKit() {
  return (
    <View style={{ flex: 1 }}>
      <ARKit
        style={{ flex: 1 }}
        debug
        planeDetection
        lightEstimation
        onPlaneDetected={console.log} // event listener for plane detection
        onPlaneUpdate={console.log} // event listener for plane update
      />

      <ARKit.Text x={0} y={0} z={0} width={0.1} height={0.1} length={0.1} chamfer={0.01}>
        ARKit is cool!
      </ARKit.Text>
      <ARKit.Sphere x={0.2} y={0} z={0} width={0.1} radius={0.05} />
      <ARKit.Plane x={0.4} y={0.4} z={0} width={0.1} height={0.1} />
    </View>
  );
}

AppRegistry.registerComponent('ReactNativeARKit', () => ReactNativeARKit);

Positioning at GPS lat,long

I'm unsure if this is a capability of ARKit, but is it possible to position an object in the scene at a fixed GPS coordinate? If so, what would it take to add support for that to this library?

[Proposal] Load model file the same as RN loads image

Use the source prop to specify the model file would be more consistent to how RN loads images. A few use cases are

1. The model file is placed in the js folder

<ARKit.Model source={require('path/to/model/file.dae')} />

2. The model file is placed in the app's resources folder.

There is a small difference here when loading images (check here). On iOS, the file extension is not included

<Image source={{uri: 'app_icon'}} />

but on Android, you need to add the asset:/ scheme:

<Image source={{uri: 'asset:/app_icon.png'}} />

I don't know why this is different and wish someone could explain it.

A proposed usage for loading model file in resources folder is,

<ARKit.Model source={{ uri: 'model.dae' }} />

3. The model file is on server

<ARKit.Model source={{ uri: http://your.server.url/model.dae }} />

@macrozone has demonstrated how to load a online model file
https://gist.github.com/macrozone/e20b9f6ab2bf529331e6019efa08e92f

does addModel works?

Hey, Thanks for doing this. I pulled the latest from git and try to use addModel function. I added something like this: this.arkit.addModel({ x: 0.5, y: 0.7, z: 0, fontSize: 0.1, depth: 0.05, file: '../../3dAssets/Woola.OBJ' }); but get undefined is not a object. what's file format should be? Thanks for help!

Can't build release

At creating a release build i get the following error:

No such file or directory: '/Users/felixbader/Library/Developer/Xcode/DerivedData/arTest-fvhvkgbiibenhyajvimoqvcjtjsv/Build/Products/Release-iphoneos/libRCTARKit.a'

Tested with a new project with React-Native 0.47.0 iOS 11 on iPhone 7.
xCode 9

[Feature] place sprites or 2d react-native views in the 3d scene

Goal is to have 2d elements like text labels that are always facing you and do or do not scale with the distance (both is useful).

Best way would be that you could just place any <View> or react-native element and its anchored with a 3d point.

We can do this also outside of react-native-arkit (rna), but rna should provide the api for this:

  • getting a callback when the camera moves or when a frame is drawn (see #49)
  • implement a function that returns the 2d point of a given 3d point (it's projection on the screen) and its distance to the screen

[Feature] Group

Add a ARKit.Group that can contain multiple nodes.

at start it should only be to organize multiple elements into one component, but later we can think about allowing position and rotation on that group that will affect every element inside.

Crash on startup

After installing on my existing React native app and linking, I get this cryptic crash when I open the view. Here is the log on xcode:

libsystem_kernel.dylib`__abort_with_payload:
    0x1855e00a0 <+0>:  mov    x16, #0x209
    0x1855e00a4 <+4>:  svc    #0x80
->  0x1855e00a8 <+8>:  b.lo   0x1855e00c0               ; <+32>
    0x1855e00ac <+12>: stp    x29, x30, [sp, #-0x10]!
    0x1855e00b0 <+16>: mov    x29, sp
    0x1855e00b4 <+20>: bl     0x1855c2238               ; cerror_nocancel
    0x1855e00b8 <+24>: mov    sp, x29
    0x1855e00bc <+28>: ldp    x29, x30, [sp], #0x10
    0x1855e00c0 <+32>: ret    

I am using Xcode 9 release and ios 11 release

Android/ARCore integration

Hello,

I know that the main purpose on this module is to provide a binding for Apple ARKit but today Google released ARCore and I'm wondering if this module will support it for Android devices (and maybe being renamed) ?

Thanks for your amazing work !

Examples

Thanks for your effort in putting the ARKit library for React Native can you please include some example of rendering an object or image would be very helpful.

Is text supported?

Can I add text somehow through this library? i.e.
Plane.addText({position..., content: 'example'});

xCode:

Hello guys, i have a little problem. When i run the application in xcode, the stuff will be loaded but i get the message:

2017-10-19 13:39:10.802068+0200 MyFirstARKitApp[435:65378] [] nw_connection_get_connected_socket 4 Connection has no connected handler
2017-10-19 13:39:10.802115+0200 MyFirstARKitApp[435:65378] TCP Conn 0x1c417b300 Failed : error 0:61 [61]

So the content (shapes,...) cannot be loaded. The camera on the phone works and i get the debug mode with the yellow dots and the coordinate system.

Please can you help me!? :)

Thanks a lot

<ARKit/ARKit.h> file not found.

How can I fix this?
I create a new React Native project and install react-native-arkit and link.
When build using xcode - > <ARKit/ARKit.h> file not found.

Module Broken: Xcode 9 GM deprecated code

RCTARKit.m needs to be updated... beta versions of this module worked with the deprecated code, but now it won't build.

Here are the things I mostly changed (commented out is the old code, and below is the code that runs)

//ARSessionConfiguration *configuration = self.session.configuration; ARWorldTrackingConfiguration *configuration = self.session.configuration;

//ARWorldTrackingSessionConfiguration *configuration = self.session.configuration; ARWorldTrackingConfiguration *configuration = self.session.configuration;

//-(ARWorldTrackingSessionConfiguration *)configuration { -(ARWorldTrackingConfiguration *)configuration {

Pretty simple to fix, but just thought I would let you know. There are multiple instances of this happening and if you download Xcode 9GM, you should have all the red errors I did.

ARKit.xx components can be used everywhere

I accidentially mounted an ARKit.Box outside of the ARKit component and did not notice, because it actually works

The reason is, that we only allow one ARKit-scene and its internally a singleton

It still feels a bit odd though ;-) should we restrict mounting these components inside the ARKit-component?

getCameraPosition doesn't return camera position

The getCameraPosition method doesn't seem to return the right values.

    const cameraPosition = ARKit.getCameraPosition()

    alert(JSON.stringify(cameraPosition))

Result:

img_4a114a06f6b7-1

I have an iPhone 6s Plus.

I am looking into this, but figured I'd file an issue. If you have ideas or if your camera position works fine, please let me know, because that would be useful.

Support for custom 3D models

Would be amazing to have support for DAE or SCN files!

I don't think I have the skills to do this myself, but if anyone publishes anything, I'll see if I can contribute what I can!

Application arkittutorialmanual has not been registered.

Hi guys, really thanks for putting this up!

I am trying to work through this and got it working before in xcode 9 beta. however since ios11 and xcode 9 officially rolled out i have not been able to get it to work. specifically, this is what I did (manual linking procedure):

  • react-native init arkittutorialmanual
  • cd arkittutorialmanual
  • npm install --save react-native-arkit
  • copy the index.ios.js react code on the README.md of this repo to my index.ios.js
  • In XCode, in the project navigator, right click Libraries ➜ Add Files to [your project's name]
  • Go to node_modules ➜ react-native-arkit and add RCTARKit.xcodeproj
  • In XCode, in the project navigator, select your project. Add libRCTARKit.a to your project's Build Phases ➜ Link Binary With Libraries

and then when i build, it builds successfully, but the error in xcode is this::

2017-09-28 11:22:28.512648-0400 arkittutorialmanual[10423:1749982] [DYMTLInitPlatform] platform initialization successful
2017-09-28 11:22:29.042 [info][tid:main][RCTCxxBridge.mm:187] Initializing <RCTCxxBridge: 0x1d41b73e0> (parent: <RCTBridge: 0x1d40bd880>, executor: (null))
2017-09-28 11:22:29.044491-0400 arkittutorialmanual[10423:1749870] Initializing <RCTCxxBridge: 0x1d41b73e0> (parent: <RCTBridge: 0x1d40bd880>, executor: (null))
2017-09-28 11:22:29.078 [warn][tid:main][RCTBridge.m:114] Class RCTCxxModule was not exported. Did you forget to use RCT_EXPORT_MODULE()?
2017-09-28 11:22:29.078317-0400 arkittutorialmanual[10423:1749870] Class RCTCxxModule was not exported. Did you forget to use RCT_EXPORT_MODULE()?
2017-09-28 11:22:29.126 [info][tid:main][RCTRootView.m:301] Running application arkittutorialmanual ({
    initialProps =     {
    };
    rootTag = 1;
})
2017-09-28 11:22:29.125882-0400 arkittutorialmanual[10423:1749870] Running application arkittutorialmanual ({
    initialProps =     {
    };
    rootTag = 1;
})
2017-09-28 11:22:29.132145-0400 arkittutorialmanual[10423:1749870] refreshPreferences: HangTracerEnabled: 0
2017-09-28 11:22:29.132198-0400 arkittutorialmanual[10423:1749870] refreshPreferences: HangTracerDuration: 500
2017-09-28 11:22:29.132225-0400 arkittutorialmanual[10423:1749870] refreshPreferences: ActivationLoggingEnabled: 0 ActivationLoggingTaskedOffByDA:0
2017-09-28 11:22:30.046 [info][tid:com.facebook.react.JavaScript] Running application "arkittutorialmanual" with appParams: {"rootTag":1,"initialProps":{}}. __DEV__ === true, development-level warning are ON, performance optimizations are OFF
2017-09-28 11:22:30.045835-0400 arkittutorialmanual[10423:1750003] Running application "arkittutorialmanual" with appParams: {"rootTag":1,"initialProps":{}}. __DEV__ === true, development-level warning are ON, performance optimizations are OFF
2017-09-28 11:22:30.046 [error][tid:com.facebook.react.JavaScript] Application arkittutorialmanual has not been registered.

Hint: This error often happens when you're running the packager (local dev server) from a wrong folder. For example you have multiple apps and the packager is still running for the app you were working on before.
If this is the case, simply kill the old packager instance (e.g. close the packager terminal window) and start the packager in the correct app folder (e.g. cd into app folder and run 'npm start').

This error can also happen due to a require() error during initialization or failure to call AppRegistry.registerComponent.

i am not running from packager/dev server, so i think this hint doesnt apply. i have also made very very sure that i am calling AppRegistry.registerComponent correctly. so what else might be the cause of this issue please? thanks.

libRCTARKit.a not found

If follow the steps for "mostly automatic installation", I get the following error:

*** Terminating app due to uncaught exception 'RCTFatalException: Unhandled JS Exception: undefined is not an object (evaluating 'i.getCameraPosition')', reason: 'Unhandled JS Exception: undefined is not an object (evaluating 'i.getCamera..., stack:

If I follow the steps for "manual installation" and add libRCTARKit.a to the 'Link Binary With Libraries' configuration, I get the error:

'no such file or directory: (...)/Build/Products/Release-iphoneos/libRCTARKit.a''.

I pulled down the RCTARKit.xcodeproj and it looks like libRCTARKit.a has the error 'React/RCTBridgeModule.h' file not found

Plane detection callback isn't being called

I modified the example to have something like:

<ARKit
                    style={{flex: 1}}
                    onPlaneDetected={this.onPlaneDetect}
                    onPlaneUpdate={this.onPlaneDetect}
                    //onPlaneDetected={console.log}
                    //onPlaneUpdate={console.log}
                    debug // debug mode will show feature points detected and 3D axis
                    planeDetection // turn on plane detection
                    lightEstimation // turn on light estimation
                />

where there is code such as below for registering the callback in index.ios.js. But "onPlaneDetect()" doesn't get called even though a plane is detected.


export default class App extends Component {

    constructor(props) {
        super(props);
        this.onPlaneDetect = this.onPlaneDetect.bind(this);
    }

    onPlaneDetect() {
        console.log("!!! onPlaneDetect");
    }

Any way to reset?

Two situations have come up where I need to be able to reset my scene...

  1. Every now and then, for some reason, my ARKit scene just doesn't show up. I exit the application, and it works the next time. Not sure why. But if I had a reset button, the user could tap it at least without thinking the app just doesn't work.

  2. I have a button for resetting the position of the camera. By default, the app loads my scene in front of the user. And this is fine if the user's device is already facing a comfortable position when the app launches, and they stay in that relative area until they are done with the app. But the truth is that they might be on a couch facing straight ahead for awhile, and then want to lay down on their back across the couch, completely changing their position. Or they may be walking somewhere, and the scene gets further and further away. So the user needs a way to reset the scene to be right infront of them again.

Is there a way to accomplish this... or something that could be added? It seems like once a scene is first rendered, the position of everything stays static. For instance, I haven't been able to update ARKit.box positions. I can make them disappear, but not move. So I don't think recalculating the position of the camera vs where the boxes should be next time will work, as their positions will not update.

Objects completely black

Testing this out all primitives seem a solid black color instead of being shaded white like they are in the sample image. Is there a missing step in the documentation perhaps to explain how to light shapes?

[Feature] Make three.js a first class citizen — Exposing API (Camera, Surface, Light, Measurement/Scale Metrics)

It is pretty impressive how far this project has come in such a short amount of time. However, it would be great to have one imperative way of constructing 3D scenes. Three.js has been around for quite a while and with projects such as react-native-webgl that mimic a webGL webview API but stream directly to the GraphicLayer ES API, it is possible to create incredible performant 3D experiences in RN.

The expo team as done a very simple and straight forward ARKit implementation by translating the phones AR-Position to the camera position within three js. See here: https://blog.expo.io/introducing-expo-ar-mobile-augmented-reality-with-javascript-powered-by-arkit-b0d5a02ff23

Try the snack here with the expo app for performance testing: https://snack.expo.io/Hk1C_YqjW (don't forget: you need an iPhone SE, IPhone 6S or higher)

While the declarative way of adding shapes and models is great, as soon we would wish to create more abstract scenes (animations, interactions, physics etc.) this project would face a lot of replication without gaining much more surface area.

Proposal

Provide an API/Container that can hold a three.js instance which scene is feed with

  • Camera Position
  • Surface(es) Position
  • Light Source
  • Measurement/Scale Metrics (i.e. 0.1 = 10 cm)

Opportinuty

Doing so would make scene creation much simpler (three.js has years worth of tutorials) while dropping sources of bugs in the library and making i.e. the integrating of ARCore and other solutions much simpler. Lastly, this allows developers to re-use the scene code (basically three.js) on the web and none AR enabled devices (fallback).

Performance is of course a challenge — but as the GL-GPU layer is directly tapped — I wanted to put this out here.

[Question] - Display Plane

Hi there,

In my project I show a text that displays all information from a detected plane using the function onPlaneDetected of the ARKit component.

Is there a way to display the plane somehow?

Thanks in advance.

Cheers,
Tom

Adding planes for no reason...

Planes are being added to the scene that move around for no reason. I think it's due to

- (void)renderer:(id <SCNSceneRenderer>)renderer didAddNode:(SCNNode *)node forAnchor:(ARAnchor *)anchor

in RCTARKit.m

Planes being detected should be fine, but this should be able to be disabled, as well as planes not being rendered.

Change custom file and move around object?

Hi!
I have 2 questions!
Is it possible to change ARKit.Model file and render a different object?
is it possible to move around the object?

image

i try to set different states here, but no rerender is done...

[Feature] load detected planes on mount

If ARKit is unmounted and remounted, it does not lose information about planes detected internally. But if you are using onPlaneDetected and onPlaneUpdate to visualize the planes detected, you won't get notified anymore.

We therefore should call onPlaneDetected on component mount for any plane that has been detected in the past (already merged with all updates).

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.