Skip to content

Commit

Permalink
Merge pull request #95 from artoolkitx/phil-autocreate-hooks
Browse files Browse the repository at this point in the history
Phil autocreate hooks
  • Loading branch information
philip-lamb authored Sep 12, 2023
0 parents commit 98ef0ee
Show file tree
Hide file tree
Showing 967 changed files with 129,658 additions and 0 deletions.
158 changes: 158 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,158 @@
# artoolkitX for Unity Release Notes
------------------------------------

## Version 1.2.5
### 2023-09-11

* Adds static UnityEvent hooks in ARXTrackable for auto-created/removed trackables.
* Auto-created trackables will now fetch correct barcode ID and width.
* Corrects in-editor display of matrix (barcode) trackables patterns.
* Added missing printable images for cube marker sample.

## Version 1.2.4
### 2023-08-04

* Internal version (skipped).

## Version 1.2.3
### 2023-07-26

* Fixed inclusion of mac OS bundle metafiles that had prevented correct importing of the native plugin.

## Version 1.2.2
### 2023-07-03

* Fixed issues affecting first-run of newly-checked out repository.
* Fixed unsafe code flag now set inside assembly-only, and not entire project.
* Fixed Samples not working inside Unity Editor by adding a class that copies samples' local StreamingAssets to the main StreamingAssets folder.

## Version 1.2.1
### 2023-07-03

* Fixed plugin packaging for mac OS.

## Version 1.2.1
### 2023-06-29

* Minor change for iOS: libARX.a is prelinked and no longer requires libcurl.a or opencv2.framework in the plugins folder.

## Version 1.2
### 2023-06-29

* No API changes, but a major change in package layout to allow for UPM packaging.
* Added package.json and asmdefs for scripts.
* Path-handling changes in various places to handle new layout incuding build.sh, ARXTrackableEditor, git config,
* Removed obsolete packaging left over from ARToolKit for Unity v5.x.
* Added some docs, and moved some (including Release Notes.txt to CHANGELOG.md) so they're accessible in the package editor.
* Moved marker images into individual samples.
* Known issue: the asset packaging script is currently out-of-date. Asset packaging will be added back in a future release.

## Version 1.1.11
### 2023-06-14

* Major change in naming to new "ARX" prefix on components, to help disambiguate when using Unity's AR components.
* Major refactor of video background handling, out of ARXController and into new ARXVideoBackground component, which attaches to an ARXCamera.
* ARXController has new events for video start/frame/stop, which are used to init ARXCamera and ARXVideoBackground.
* Video background no longer scales via its camera viewport (pixelrect) but scales itself via ortho projection, and it will respect Camera viewport and near/far clipping plane distances. With this change, the "fill" mode on the video background is *finally* supported.
* Removed "ClearCamera" and merge into ARXVideoBackground, or its attached Camera when none..
* Minor renaming of and removal of duplicated sample scenes.
* Minor improvements to ARXController.Log function. Now won't keep on-screen logs in non-development builds.
* Better singleton implementation in ARXController.
* Added android logcat package.
* Script order is now set via [DefaultExecutionOrder] on scripts, so shouldn't be necessary to manually set script execution order.
* Restored functionality in the Fisticuffs example.
* Fixed setting log level on ARXController.
* Fixed local artoolkitX debug build cmd-line switch.
* Allow quit to stop play in Editor.
* Fixed handling of camera position string in video config.
* Improved display of video config for target platform.

## Version 1.1.10
### 2023-05-18

* Support for asynchronous tracking (on a secondary thread) has been added to the 2D tracker. When enabled, the tracking rate can run slower than the video capture frame rate. This results in increased smoothness of the display of video frames, at the expense of some memory usage and a possible lag on lower-powered devices between the displayed frame and the tracking results. It has been enabled by default, and can be adjusted using the control on ARController under "2D tracking options".

## Version 1.1.9
### 2023-05-15

Changes:
* Updated the Unity project to Unity 2021.3.25f1.
* Updated the native plugin to artoolkitX v1.1.8.

## Version 1.1.8
### 2023-05-14

Changes:
* Add UnityEvent bindings to ARTrackedObject's events (found, tracked, lost) (and also legacy ARTrackedCamera). The legacy broadcast event bindings are still available but the UnityEvent interface offers better performance and flexibility.
* Fixed callback stub handling in the plugin interface.
* Restored Android and iOS camera permissions requests in StartAR (that were lost in the update to v1.1.2).
* ARController.StartAR is now a co-routine, and will no longer be called from ARController.UpdateAR.
* On Android, removed AndroidManifest.xml and replaced with build post-processor to insert required permissions and features into the Unity-provided manifest.
* Tweak built sample app packge ID.
* Fixed iOS build by adding ARX's dependent libs, plus overhauled post-processor to add linking to sqlite.
Also tidied up ScreenOrienation warning.

## Version 1.1.7
### 2023-05-08

Changes:
* The native plugins folder has been moved inside the artoolkitX-Unity subfolder of the Unity package.
* Added support for runtime auto-detection of barcode (matrix code) markers. When enabled, a new
callback in ARTrackable will auto-add a new ARTrackable for each matrix code trackable detected.
* Improved support for GlobalID barcode markers.

## Version 1.1.6
### 2023-04-21

Bug fixes:
* Fix ARControllerEditor serialization; changes made to ARController in the Unity Editor should be saved now.
* Correct origin on 2D trackable gizmos. Correct prototype for plugin function for pattern image retrieval. Unload when changing trackable properties.

## Version 1.1.5
### 2023-04-12

Changes:
* Refactored ARTrackable to add factory methods for creating new trackables at run time, plus one-shot config for different trackable types.
* Change ARController to be findable by singleton instance.
* Corrected 2D planar tracker orientation and scaling issues.
* Clarified that "2D tracker scale factor" specifies image width, not height.
* Overhauled ARPattern handling, including new support for 2D and NFT surfaces, plus barcodes.

## Version 1.1.4
### 2023-03-30

Changes:
* Corrected a long-standing Windows bug that affected 2D planar tracking with 32-bit video formats.
* Updated the OpenCV build used by the 2D planar tracker on Windows and switched to static OpenCV libraries. This saves users from having to deploy the OpenCV DLLs alongside built apps.

## Version 1.1.3
### 2023-03-23

Changes:
* Added support for setting the number of 2D planar tracker markers that can be simultaneously tracked.

## Version 1.1.2
### 2023-03-16

This is the first official artoolkitX for Unity release in some time. As the project is now using continuous integration and deployment (CI/CD) releases will be a lot more frequent.

Changes:
* Added some extra tracking example images.
* Video source input config is now automatically fetched and can be configured in the Unity Editor or at runtime using the new ARVideoConfig component. This component will automatically be added when first adding an ARController to a new scene.
* A new native video input module (Camera2) on Android removes the requirement for pushing of video frames from Java code over JNI. Some video configuration options have changed. artoolkiX for Unity will automatically add "-native" to the video configuration string to use the new module.
* Updated artoolkitX dependency. Now downloads release artoolkitX packages; special Unity-only packages are no longer required. Also better support for developer mode building of artoolkitX.
* Only runs tracking update on new frames.
* Added pinball image and 2D tracker scene.
* Updated Unity download/install scripts.
* 64-bit libs on Android are now in the Unity package.
* Unity settings update for Unity 2021.3.
* Android projects update to target API 33, minimum API 21 (Android 5.0), with Gradle 7.6, Android Gradle plugin 7.2.2.
* On Android, the minimum supported OS is now Android 7.0 (API level 24).
* On iOS, the minimum supported OS is now iOS v11.0.
* On mac OS, full support for the ARM64 (Apple Silicon) CPU. The minimum supported OS is now mac OS 10.13.
* On Windows, the default Visual Studio version is now VS 2019.
* On Linux, the system OpenCV implementation is preferred.
* Removed dependence on opencv imread(), and therefore highgui, imgcodecs, and various image libs.

--
EOF
7 changes: 7 additions & 0 deletions CHANGELOG.md.meta

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

70 changes: 70 additions & 0 deletions Documentation~/About the artoolkitX utilities.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,70 @@
Read me for artoolkitX utilities package.
========================================


Contents.
---------

Introduction.
Running the utilities.
Which utilities are included.

Introduction
------------

Alongside the artoolkitX runtime, there are a number of essential and helpful utilities. The utilities are distributed with the core platform-specific artoolkitX SDK package, which is available separately from artoolkitX for Unity.

The artoolkitX utilities are made available to you under the GNU Lesser General Public License, version 3 (LGPLv3).

You can download the artoolkitX SDK for your operating system at https://github.com/artoolkitx/artoolkitx/releases/latest .

Running the utilities
---------------------

artoolkitX includes a set of utilities to perform essential functions required by artoolkitX and/or arunityX. After installation, the executables for these utilities can be found in the SDK/bin directory inside your artoolkitX directory.

Windows:

Each utility can be opened by double-clicking its icon in the artoolkitX\SDK\bin directory. Alternately, you can run it from the command line:

* Open a command-line window (cmd.exe).
* Navigate to your artoolkitX\SDK\bin directory.
* Type (for example): artoolkitx_mk_patt.exe

Mac OS X:

The utilities should be launched from a Terminal window:

* Open a Terminal window (/Applications/Utilties/Terminal).
* Navigate to your artoolkitX/SDK/bin directory.
* Type (for example): ./artoolkitx_mk_patt

Documentation for the utilities is held in the artoolkitX documentation wiki: https://github.com/artoolkitx/artoolkitx/wiki

Which utilities are included:
-----------------------------

Camera calibration utilities:
* artoolkitx_calib_camera
* artoolkitx_calib_optical

Square marker utilities:
* artoolkitx_mk_patt
* artoolkitx_check_id
* artoolkitx_genMarkerSet

2D texture trackable utilities:
* artoolkitx_check_image_2d_tracking
* artoolkitx_image_database2d

Legacy natural feature tracking (NFT) utilities:
* artoolkitx_genTexData
* artoolkitx_dispImageSet
* artoolkitx_dispFeatureSet
* artoolkitx_checkResolution

Required patterns for the utilities, which you can print out, are found in the folder "patterns" inside the "doc" folder. Images for sample 2D trackables and NFT markers are in the folder "Marker images" inside the "doc" folder.


--
EOF
6 changes: 6 additions & 0 deletions Documentation~/Marker generator (online).url
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
[InternetShortcut]
URL=https://au.gmented.com/app/marker/marker.php
IDList=
HotKey=0
IconFile=C:\Users\phil\AppData\Local\Mozilla\Firefox\Profiles\xu4hvgla.dev-edition-default\shortcutCache\U0txz335RpHtDaQqUQoLtw==.ico
IconIndex=0
8 changes: 8 additions & 0 deletions Documentation~/Marker generator (online).webloc
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>URL</key>
<string>https://au.gmented.com/app/marker/marker.php</string>
</dict>
</plist>
26 changes: 26 additions & 0 deletions Documentation~/Quick start.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
## Introduction

The easiest way to get started with Unity and artoolkitX is to use one of the samples scenes shipped with the arunityX package.

### Development Requirements

- mac OS or Windows

- [Xcode](http://developer.apple.com/xcode/) - Required for the mac OS version of the Unity Editor to target Apple macOS and iOS platforms with Unity. Xcode 14 was used at the time of this writing.

- [Unity](https://store.unity.com/) - the free, Personal Edition, is sufficient for a start. Version 2021.3 was used at the time of this writing. The Unity Editor is supported on the desktop platforms of macOS and Windows.

### Installation

The artoolkitX for Unity package is published on the OpenUPM package management system. Go to [https://openupm.com/packages/org.artoolkitx.artoolkitx-unity/](https://openupm.com/packages/org.artoolkitx.artoolkitx-unity/) and follow the instructions on that page on how to add the package to your Unity project using Unity's package manager.

### Install the samples

From the artoolkitX for Unity page in the Unity Package Manager, the list of sample scenes is visible in the right-hand side of the page.

You can import each sample by clicking the "import" button next to the sample name.

### Print trackables

Each sample includes printed trackables that trigger the AR content in its `Print` folder.

8 changes: 8 additions & 0 deletions Editor.meta

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

8 changes: 8 additions & 0 deletions Editor/Patterns.meta

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Loading

0 comments on commit 98ef0ee

Please sign in to comment.