Code Monkey home page Code Monkey logo

devfestarmap's Introduction

devfestarmap's People

Contributors

mrcsabatoth avatar

Watchers

Ahsen Baig avatar Elanna Grossman avatar  avatar James Cloos avatar James Duvall avatar Rio Waller avatar Victoria avatar

devfestarmap's Issues

Present target selection list directional arrow towards the selected target

https://github.com/gdgfresno/DevfestARMap/tree/pointerarrow branch already should work (computing the direction between the world position of the target vs the world position of the scene camera - a.k.a the viewer - and turning the arrow towards that, but the arrow is misplaced in the AR scene.

Another approach to make the arrow's parent node the scene camera. In that case the arrow sticks to the viewer, but I'd like the arrow to be 0.5 m below the viewer and 0.5 m away towards the target as well.

Try to use run-time created `ShapeFactory` boards with image textures

The question is if texturing with a large texture map or rendering the numbers as 3D carved objects (Blender modeled) are more efficient. So far the textured models didn't appear on the scene at all. Try parametrize the texturing and the sampler more. Kotlin:

val texture: CompletableFuture<Texture> = Texture.builder()
    .setSource(context, Uri.parse(uri))
    .setUsage(Texture.Usage.DATA)
    .setSampler(
        Texture.Sampler.builder()
            .setMagFilter(Sampler.MagFilter.LINEAR)
            .setMinFilter(Sampler.MinFilter.LINEAR_MIPMAP_LINEAR)
            .build()
    ).build()

WrapMode.CLAMP_TO_EDGE see https://github.com/google/filament/blob/master/android/filament-android/src/main/java/com/google/android/filament/TextureSampler.java

ShapeFactory created + Textured objects' color fade because of lightning

I need to figure out how to avoid this. See screenshots later. So far I tried:

  1. Disable the sunlight
    Node sunLight = scene.getSunlight();
    if (sunLight != null) {
    sunLight.setEnabled(false);
    }
  2. Trying to fiddle with ambient light config.setLightEstimationMode(Config.LightEstimationMode.DISABLED);

Screenshot_20200513-175130
Screenshot_20200513-175138
Screenshot_20200513-175202

Pull the location and board data from a database back-end

The app would have a pre-configured off-line data for faster start-up and if the user doesn't have connection. However we could download fresher data in the background (in case we wouldn't have the latest already by timestamp) so the app could present the most current distribution fo the signs on the AR scene.

This would require internet app privileges added and the app would connect read-only to a Firebase or some exposed free, read-only data repository (GitHub or GitLab hosted?).

Port the app to a multi-platform framework so iPhone users would be covered as well

Flutter has ARCore plugin ( https://github.com/giandifra/arcore_flutter_plugin/tree/master/example , https://pub.dev/packages/arcore_flutter_plugin ), but I'll need to research if all the required Sceneform features are covered.

If Flutter cannot support what we are doing then research if Unity can do it.

Extra: Terry Solis asked me: why I wouldn't consider Ionic. We have HTML5 based AR / WebVR / WebGL / Three.js solution, or more native (hybrid) Ionic with ARCore / ARKit. Article: https://www.joshmorony.com/augmented-reality-in-an-ionic-angular-pwa/

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.