Start a new topic

Loading a large number of targets / 3D models

Loading a large number of targets / 3D models

I'm developing an application which will have many image targets which each load a unique 3D model when the image is recognized. Each of these 3D models when converted to .wt3 weigh in at about 2.5mb on average.

Eventually we may have 20-30 or more image targets each with an associated 3D model that we'll want to load into the world. With 20 targets, that's about 50mb.

I understand that only one model will be displayed at a time, but will even loading these many targets be an issue? What kind of performance can I expect with initial load or interacting within the AR world?

Any insight or suggestions would be much appreciated.

My suggestion is to load the 3D Model that will actually be shown on the target. E.g. using the onEnterFieldOfVision trigger. If the 3D models are stored locally the loading delay should be minimal. Otherwise I suggest displaying some kind of loading indicator.

You can (and should) destroy unneeded 3D models by calling their .destroy() function. For our internal projects we chose to do that in a timer, 10 seconds after the target was lost. That way it won't get destroyed if the the user only quickly aims away from the target.

The concrete performance depends on the model's complexity (textures, different materials, ...) and can not be predicted accurately without trying the specific models.

Let me know if you have any more questions.

That perfect, thanks. Performance with just one of our models has been good, so knowing we can load on enter and then destroy when lost sounds like it would work well regardless of how many targets we have!


I have 5 videos which I intend load from different images respectively. I understand that only one marker can be active at a particular time but do i trigger the other marker so they can load the respective videos.

Right now, I have two markers but only the second one is recognized by the camera and dont know how to use the different videos.

I have attached my js file.


You need to create a VideoDrawable object for each different video. Then add each to the drawables list of the corresponding page's AR.Trackabel2dObject. The videos will be loaded once the VideoDrawable is created, therefore it might make sense to create and add the videos in the Trackable2dObject's onEnterFieldOfVision trigger.


Do I also need to create a tracker for each of the video. say var tracker - tracker5?

If yes, in what other should they be in as in (create overlay, initialize tracker, create play button, create videoDrawable ARTrackable then initialize the next tracker for the next video or what? )

Are they(AR.ImageResource for the playbutton, VideoDrawable, Trackable2DObject of all five videos) all gonna be under one create overlay function or one overlay function for each tracker and video drawable.


You should use just 1 tracker. A tracker references the .wtc target collection file, that includes all to be recogniced target images (create it using the target management tool).

Not quite sure what you mean by the last sentence, so just let me know if the following answer isn't sufficient. You can reuse drawables on multiple target images but they will look and behave (e.g. onClick trigger) the same.

Ok, tnx.

I was able to figure that out. My problem now is that I have four Trackable2DObjects declared but only the first two working. 

and also during the testing, its keeps fluctuating like this time it works for one marker and another time for both markers whereas the code is the same... What could be the cause of this?



I replied to the stated issue in your other thread:



Login or Signup to post a comment