ImageTargetBaseBehaviour Class

Description

ImageTargetBaseBehaviour是在AR场景中控制ImageTarget的component。

你需要设置ImageTargetBaseBehaviour为与target相关需要显示的3D内容的父节点。Augmenter与跟踪到的Target之间的相对位置(transform )是由EasyAR控制的。

为了使用ImageTargetBaseBehaviour(让tracker跟踪ImageTargetBaseBehaviour内部的target),你必须先使用图片或json设置(setup)这个component然后将这个ImageTargetBaseBehaviour加载到TrackerBaseBehaviour中。

通常有两种方法可以设置(setup)这个component。一个是设ActiveTargetOnStart为true然后设置一些变量(Name、Path、Size和Storage),加载操作将会在MonoBehaviour.Start中被调用。另一个方法是手动调用SetupWith*方法。你也可以在任意时间使用SetupWith*方法重新加载target。

在设置(setup)之后你需要把ImageTargetBaseBehaviour加载进TrackerBaseBehaviour。同样也有两种方法,一个是在SetupWith*调用或是MonoBehaviour.Start(当ActiveTargetOnStart为true的时候)之前Bind一个TrackerBaseBehaviour,然后ImageTargetBaseBehaviour会自动被加载进TrackerBaseBehaviour。另一种放方法是手动调用TrackerBaseBehaviour.LoadImageTargetBehaviour或者LoadIntoTrackerBehaviour

Public Fields

bool ActiveTargetOnStart
string Name
string Path
Vector2 Size
StorageType Storage
ImageTarget Target

Public Properties

List Loaders (until 1.2.1)
List Loaders (since 1.3.0)

Public Functions

void Bind(TrackerBaseBehaviour behaviour) (until 1.2.1)
void Bind(TrackerBaseBehaviour behaviour) (since 1.3.0)
void UnBind(TrackerBaseBehaviour behaviour) (until 1.2.1)
void LoadIntoTrackerBehaviour(TrackerBaseBehaviour trackerBaseBehaviour)(until 1.2.1)
void UnloadFromAllTrackers()(until 1.2.1)
bool SetupWithImage(string path, StorageType storageType, string targetname, Vector2 size)
bool SetupWithJsonFile(string path, StorageType storageType, string targetname)
bool SetupWithJsonString(string json, StorageType storageType, string targetname)
bool SetupWithTarget(ImageTarget target)

Public Events

event Action TargetFound (since 1.3.0)
event Action TargetLost (since 1.3.0)
event Action TargetLoad (since 1.3.0)
event Action TargetUnload (since 1.3.0)

Overwritten MonoBahaviour Functions

protected virtual void Awake()
protected virtual void OnDestroy()
protected virtual void Start()
protected virtual void Update()

bool ActiveTargetOnStart

是否在MonoBehaviour.Start被调用时加载target。

string Name

target名字。如果ActiveTargetOnStart为true,set操作应该在MonoBehaviour.Start之前调用。这个值将在target的自身加载之后以及target加载进入tracker之后更新。

详见ImageTarget.Load/ImageTarget.LoadImage/ImageTarget.LoadJsonFile/ImageTarget.LoadJsonString

string Path

target的路径。如果ActiveTargetOnStart为true,set操作应该在MonoBehaviour.Start之前调用。这个值将在target的自身加载之后以及target加载进入tracker之后更新。

详见ImageTarget.Load/ImageTarget.LoadImage/ImageTarget.LoadJsonFile/ImageTarget.LoadJsonString以及StorageType

Vector2 Size

target的大小。如果ActiveTargetOnStart为true,set操作应该在MonoBehaviour.Start之前调用,并且只有非{0, 0}值会被用来初始化Target的大小。这个值将在target的自身加载之后以及target加载进入tracker之后更新。

详见ImageTarget.Load/ImageTarget.LoadImage/ImageTarget.LoadJsonFile/ImageTarget.LoadJsonString

StorageType Storage

target存储位置的类型。 如果ActiveTargetOnStart为true,set操作应该在MonoBehaviour.Start之前调用。这个值将在target的自身加载之后以及target加载进入tracker之后更新。

详见ImageTarget.Load/ImageTarget.LoadImage/ImageTarget.LoadJsonFile/ImageTarget.LoadJsonString以及StorageType

ImageTarget Target

ImageTarget物体。你可以通过Target获得更加高级的控制。详见ImageTarget

List Loaders(until 1.2.1)

List Loaders(since 1.3.0)

当前加载了这个component的所有loader(TrackerBaseBehaviour)。

void Bind(TrackerBaseBehaviour behaviour)(until 1.2.1)

void Bind(ImageTrackerBaseBehaviour behaviour)(since 1.3.0)

Binds TrackerBaseBehaviour。在bind了TrackerBaseBehaviour之后,所有SetupWith*的成功调用或是MonoBehaviour.Start (当ActiveTargetOnStart为true)将会自动跟随一个TrackerBaseBehaviour.LoadImageTargetBehaviour调用,将这个component加载入TrackerBaseBehaviour。如果没有bind则必须手动调用TrackerBaseBehaviour.LoadImageTargetBehaviourLoadIntoTrackerBehaviour将component加载进入TrackerBaseBehaviour,这样target才可以被tracker检测和跟踪。

1.3版本中Bind的行为有很大变化。它不再仅仅是静态绑定,同时也替代了LoadIntoTrackerBehaviour(1.3之前)的功能, 而Bind(null)则完成了UnloadFromAllTrackers(1.3之前)的功能。

void UnBind(TrackerBaseBehaviour behaviour)(until 1.2.1)

Unbind TrackerBaseBehaviour。在1.3及以后版本中,请使用Bind(null)。

void LoadIntoTrackerBehaviour(TrackerBaseBehaviour trackerBaseBehaviour)(until 1.2.1)

加载这个component以及它的target进入TrackerBaseBehaviour。这个方法与TrackerBaseBehaviour.LoadImageTargetBehaviour相同。在1.3及以后版本中,请使用Bind。

void UnloadFromAllTrackers()(until 1.2.1)

从所有Loader(TrackerBaseBehaviour)中卸载这个component。在1.3及以后版本中,请使用Bind(null)。

bool SetupWithImage(string path, StorageType storageType, string targetname, Vector2 size)

通过图片配置这个component。详见ImageTarget.LoadImage

component上之前存在的Target将会从所有Loader上卸载。你需要重新加载这个component到TrackerBaseBehaviour才能被tracker跟踪。

bool SetupWithJsonFile(string path, StorageType storageType, string targetname)

通过json文件配置这个component。详见ImageTarget.LoadJsonFile

component上之前存在的Target将会从所有Loader上卸载。你需要重新加载这个component到TrackerBaseBehaviour才能被tracker跟踪。

bool SetupWithJsonString(string json, StorageType storageType, string targetname)

通过json字符串配置这个component。详见ImageTarget.LoadJsonString

component上之前存在的Target将会从所有Loader上卸载。你需要重新加载这个component到TrackerBaseBehaviour才能被tracker跟踪。

bool SetupWithTarget(ImageTarget target)

通过加载好的Target或是云端返回的Target来配置这个component。关于如何加载target可以参见ImageTarget.Load/ImageTarget.LoadImage/ImageTarget.LoadJsonFile/ImageTarget.LoadJsonString

component上之前存在的Target将会从所有Loader上卸载。你需要重新加载这个component到TrackerBaseBehaviour才能被tracker跟踪。

event Action TargetFound(since 1.3.0)

Target找到事件。

event Action TargetLost(since 1.3.0)

Target丢失事件。

event Action TargetLoad(since 1.3.0)

Target加载结束事件。

event Action TargetUnload(since 1.3.0)

Target卸载结束事件。

results matching ""

    No results matching ""