Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

v3: NFT (Image Tracking) + clean code + doc enhancement #742

Closed
wants to merge 16 commits into from

Conversation

kalwalt
Copy link
Contributor

@kalwalt kalwalt commented Feb 27, 2020

⚠️ All PRs have to be done versus 'dev' branch, so be aware of that, or we'll close your issue ⚠️

What kind of change does this PR introduce?

From #674 (comment) #674 and #705
This PR want to add NFT feature from artoolkitx/jsartoolkit5 and also other changes/improvements

🖼 This will eventually make AR.js capable of detect and track 2D images.

https://twitter.com/nicolocarp/status/1204841439160684549

Could be raise some bugs and incompatibilties between the code.
Can it be referenced to an Issue? If so what is the issue # ?
From jsartoolkit5 repo: PR kalwalt/jsartoolkit5#1
From AR.js issues:

also, a repo cleaning will help for: #433
and also: #722

How can we test it?
Just test the examples and tell us what happens...

Summary

see the other PR:
#722
#740

Does this PR introduce a breaking change?

Current repository will continue to be up, with marker + gps support.

A new repository will be created on AR.js new organization, that will feature two libraries:

  • one with marker+gps (as current)
  • one with image tracking + gps

Because of incompatibility between markers and NFT.

Please TEST your PR before proposing it. Specify here what device you have used for tests, version of OS and version of Browser

Other information
I uploaded the new jsartookit5 libs and build the AR.js libs with makefile.

Progress

  • Clean repo before starting the porting (removing old aruco and tango code)
  • Import new jsartoolkit5 version, coming with NFT
  • Adapt the code (threejs side) to support NFT (emulate what's already done for fiducial markers)
  • Fix the rendering of content on AR.js side, for NFT (onMarkerFound function)
  • Make it work on mobile
  • Enhance resolution in both mobile and desktop
  • Check if animations work with NFT. If not, or rendering rate is too high, use interpolation
  • Fix broken pattern marker (content appears shifted after NFT modifies, or maybe even before during the cleaning of the repo)
  • Remove all rendering code on the Worker
  • Adapt the code (aframe side) to support NFT (emulate what's already done for fiducial markers)
  • Create at least one example for threejs + NFT
  • Create at least one example for aframe + NFT
  • Change documentation (principal Readme, also with NFT Marker generator + Readmes inside threejs + aframe folders)

@kalwalt
Copy link
Contributor Author

kalwalt commented Feb 27, 2020

I started to remove aruco in small pieces, in this way is easier to identify breaking changes.

@nicolocarpignoli
Copy link
Collaborator

is all the tango/aruco code removed?

@kalwalt
Copy link
Contributor Author

kalwalt commented Feb 27, 2020

Not completely but it will be soon.

@kalwalt
Copy link
Contributor Author

kalwalt commented Feb 27, 2020

aruco code is completely removed, and testing examples are working correctly, ready to add NFT!

@kalwalt
Copy link
Contributor Author

kalwalt commented Feb 27, 2020

In the nft.html threejs example the NFT marker is tracked but i can not see the Flamingo model. We need to check this...

@kalwalt
Copy link
Contributor Author

kalwalt commented Feb 27, 2020

I can see that there are chunks of aruco code in threex-artoolkitcontext-nft.js to be removed and maybe in other parts.

@nicolocarpignoli
Copy link
Collaborator

Ok, first it's better to remove ALL aruco (you can search for 'aruco' and 'tango' strings in the project) and then we can try to add NFT.html. I can help with adding it.

@kalwalt
Copy link
Contributor Author

kalwalt commented Feb 28, 2020

Ok, first it's better to remove ALL aruco (you can search for 'aruco' and 'tango' strings in the project) and then we can try to add NFT.html. I can help with adding it.

I hope to work on it this afternoon !

@kalwalt
Copy link
Contributor Author

kalwalt commented Feb 28, 2020

With the lastest commit 97be36b The Flamingo model is shown onto the NFT marker! Actually pattern marker (threejs and aframe) and NFT marker with threejs both works toghether!! Next step is to re-add NFT to aframe.... we are very close really to a release. 😄
I think that probably we can remove part of the code in the threex-...-nft that is not necessary (for example about new white region and other) we can discuss this of course.

…me. re-added nft examples for aframe. all working.
@nicolocarpignoli nicolocarpignoli changed the title WIP adding Nft feature and preparing for Ar.js v3 v3: NFT (Image Tracking) + clean code + doc enhancement Feb 28, 2020
@nicolocarpignoli
Copy link
Collaborator

This is it. We think to have reached a good release. We are finishing tests and then we will prepare several documentation enhancement. Should not take too much.
Also, this repository will be kept up but will be deprecated in favour of a new repository on new AR.js org.

This will solve also:

#190
#469
#253

@nicolocarpignoli
Copy link
Collaborator

I will manually close all related issues.

The new v3 with Image Tracking will be available on the new AR.js repository, under AR.js organization.

I will close this PR and as soon as the v3 is ready, I will make a redirect using the principal Readme on this repository. Thank you all.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants