Search Unity

  1. Megacity Metro Demo now available. Download now.
    Dismiss Notice
  2. Unity support for visionOS is now available. Learn more in our blog post.
    Dismiss Notice

Unified Coordinate System for String and QCAR

Discussion in 'Scripting' started by Elecman, Oct 15, 2011.

  1. Elecman

    Elecman

    Joined:
    May 5, 2011
    Posts:
    1,369
    By Bit Barrel Media

    Here is a system which enables you to use multiple Augmented Reality markers but only use one coordinate system. It is open source and compatible with Vuforia, String, and PointCloud. It is called Unified Coordinate System or UCS.

    Features:
    -Stitch markers together for use in one scene, similar to SLAM.
    -Set SLAM scene orientation and scale to make physics work correctly.
    -Compatible with multiple AR engines.
    -Different sized markers in one scene.
    -Works with Unity Basic.
    -Use multiple movable objects, each with its own single or multiple markers.
    -Real world objects participating in occlusion, shadowing, and collision.
    -Create objects for occlusion, shadowing and collision on the fly.
    -Load pre-made obj files.
    -Advanced object alignment system, including camera freeze for precision placement.
    -Marker pose filter to enhance tracking quality.
    -Real world object warping special effects.
    -No programming required.

    Download here:
    http://pilotpage.monosock.org/fileadmin/files/UCS1.2.rar
    Bugfix:
    http://pilotpage.monosock.org/fileadmin/files/UCS12bugfix.rar
    Replace the two scripts in the Scripts folder.

    Video (outdated):

    http://www.youtube.com/watch?v=Uef8FFNA-F0

    Android App (outdated):
    https://play.google.com/store/apps/details?id=org.monosock.ucs

    Markers (updated to include StudierStube Tracker markers):
    http://pilotpage.monosock.org/fileadmin/files/Markers.rar

    Prerequisites:
    -Game engine: Unity 4.0 Basic or later. This can be downloaded for free at unity3d.com
    -Line drawing: Vectrosity. This is optional but recommended. It can be purchased at starscenesoftware.com
    -File browser: UniFileBrowser. This is optional and can be purchased at starscenesoftware.com
    -Obj file reader: ObjReader. This is optional and can be purchased at starscenesoftware.com
    -AR tracking engine: Vuforia, String, or PointCloud.
    -The installation process has changed. Please read it again carefully.

    Changelog v1.2:
    -Fixed compatibility issue with Vuforia 2.8
    -Simplified Vuforia installation.
    -Added support for the StudierStube Tracker AR engine.
    -Fixed bug which caused a crash if an image target dataset contains more markers then specified.

    From the manual:

    Introduction
    Most Augmented Reality applications draw some 3d content on or around a marker. Using this method, the marker must be in view at all times and camera movement is therefore restricted. UCS stitches multiple markers together and brings them into a single coordinate system. This enables you to point the camera anywhere, as long as there is at least one marker in view. The process is similar to SLAM, except it is using markers for tracking instead of random features.

    Another problem with traditional AR is that the scene is not interactive. The software does not know where the physical geometry of the real world is. UCS solves this problem with a geometry creation system.

    UCS is also compatible with markerless SLAM tracking using PointCloud from 13th Lab. When using SLAM, no markers need to be stitched together a universal coordinate system is not needed. However, PointCloud does not support scene orientation placement in markerless mode. UCS solves this problem by providing a scene orientation placement system. The geometry creation feature in UCS is also a great addition to SLAM tracking.
    UCS uses Unity as the game engine. UCS is a reference framework and is not meant to be a game or useful application on its own although it does contain an example project. UCS is free and open source but it does require paid 3rd party software depending on your needs. See the Prerequisites chapter for more detail.
     
    Last edited: Mar 25, 2014
  2. siberman

    siberman

    Joined:
    Oct 12, 2011
    Posts:
    31
    Hey Mate,

    This looks like an amazing system, and I will be trying it asap. I was just wondering though, if I set up a permanent set of markers, can i save the coordinates into a build, or does the user have to re-record every time?

    Si.
     
  3. Elecman

    Elecman

    Joined:
    May 5, 2011
    Posts:
    1,369
    At the moment you have to record everything again once you shut down the game. I am working on a "save and load scene" system.

    And there is much more in the pipeline such as geometry creation which allows you to block out (part of) characters and objects as they move behind "real" geometry, and apply collision detection to it. This way you can have for example a radio controlled car fall of the table you placed the marker on if it drives over the edge.

    In any case, the code is provided for free and with no license so you can use it for both commercial and non-commercial projects. If you can't wait for a feature to be implemented, you can code it yourself. But if you do, I would appreciate some feedback on it so I can implement it and don't have to re-invent the wheel.
     
  4. aviel08

    aviel08

    Joined:
    Sep 7, 2011
    Posts:
    4
    Wow! this looks great! do you have any video showing the result?
     
  5. elias_t

    elias_t

    Joined:
    Sep 17, 2010
    Posts:
    1,367
    Wow! Thanks a lot for this.

    Do you think it could work with image markers?
    And by that I mean various photos of real outdoor locations converted to image markers.

    I want to use such a method for architectural walkthroughs.
     
    Last edited: Oct 31, 2011
  6. Elecman

    Elecman

    Joined:
    May 5, 2011
    Posts:
    1,369
    I don't have a video yet. I think it will be more interesting if I show the geometry building process as well, so I am waiting for that to be finished.

    It will work with QCAR image targets as well, but it requires a few modifications to the sample project such as removing the frame markers, replacing them with image targets, and setting some properties in the QCAR scripts. I don't think you have to change anything in my script but I haven't tried it yet. But i'll add it to my todo list.

    Be careful though converting a real world photo (of a 3d scene presumably) to a marker and then using the real 3d scene as the marker itself. You cannot really do this. This goes for both QCAR, String, or any other AR system. The reason for this is that the image features (corners of pixels etc) are expected to be in a fixed location relating to each other. If you take a picture of a real scene, you can print that picture and use it as a marker. But if you then view the real scene, the image features will not have a fixed relationship between each other due to the fact they do not lay in the same plane, they have a 3d position instead of 2d. Even if you take a photo of a real world 2d scene such as a wall painting, you have to correct it for perspective and lens distortion errors before you can print it out and use it as a marker. So you are best off just taking a picture of something, printing it, and using that picture as the marker. The real scene will most likely never be recognized but the printed markers will.

    If you are looking for a true 3d scene "marker", take a look at PTAM (and the later version PTAMM). But this is very computational intensive and doesn't run on mobile devices yet.
     
  7. elias_t

    elias_t

    Joined:
    Sep 17, 2010
    Posts:
    1,367
    Thanks for the info elecman!
     
  8. instbldrjems

    instbldrjems

    Joined:
    May 1, 2009
    Posts:
    10
    Hi elecman --

    Great tool, thanks. It works well for my needs, where I have a 3D road that covers a real-world space of about 48 inches using 5 markers. There are 5 different 3D models that appear along the road, at each of the markers.

    However I've found that iTween animations on the various 3D models that are linked to the markers are not working. No errors, just not working. However if I use PixelPlacement's StringManager in CameraCentricManager mode they work OK.

    So given that your approach is also using the CameraCentrainManager, do you have any idea why the animations aren't running?

    Thanks in advance!
     
  9. instbldrjems

    instbldrjems

    Joined:
    May 1, 2009
    Posts:
    10
    Sorry -- meant to say I am using the String API (Developer).
     
  10. Elecman

    Elecman

    Joined:
    May 5, 2011
    Posts:
    1,369
    A new version is in the works with uses a different camera placement system. This is compatible with physics and particle effects. So maybe that will fix the problem. I never used iTween but I'll give it a go and see if it works.
    Stay tuned.

    Edit:
    Ok, I just tried it and it works fine with my new version. I tested it with both String and QCAR using the latest iTween with the native Unity editor extension, testing with the "cube.MoveBy() function. I will release it once QCAR is out of beta (1.5) but if you want it before that, let me know. I'll post you a link then.
    Note that with the new version you do not parent the augmented 3d objects to the markers but to either the "averageReferenceObjectRender" game object, or the "fake" marker objects attached to it.

    The new version does not use the CameraCentric script and uses custom code instead. You have to remove that script from the project and remove all references to it.
     
    Last edited: Jan 21, 2012
  11. atmob

    atmob

    Joined:
    Jan 20, 2012
    Posts:
    22
    Hi,
    It looks pretty awesome! I tried to download the files , but looks that megaupload was shutdown by us government !!! so I could not download to try .... :(
    Could you post a new link ,and off course I'm interested of trying the new release too ;)

    Tks
    @mob
     
  12. Elecman

    Elecman

    Joined:
    May 5, 2011
    Posts:
    1,369
    Yeah, no need for SOPA. Just make the law up as you go along. God bless 'merica!
    Anyway, I'll make a new release ASAP and post it on my own site.
     
  13. AryuLimitless

    AryuLimitless

    Joined:
    May 9, 2010
    Posts:
    17
    Due to some nifty US Federal seizure based on criminal activity on MegaUpload, the site is no longer there.
    Please allow these files to stay alive via another source or create a WordPress site for free to host them.

    I am looking forward to seeing this awesome placement system.
    Thanks.

    ~AryuLimitless
     
  14. Elecman

    Elecman

    Joined:
    May 5, 2011
    Posts:
    1,369
    Ok, I added the new version. It is a vast improvement over the previous one. Give it a try.
     
  15. atmob

    atmob

    Joined:
    Jan 20, 2012
    Posts:
    22
    Tks man Downloading it ;)!
    @mob

    Tring it out , but getting a Xcode linking error :

    ld: can't open output file for writing: /Users/XXXXX/Library/Developer/Xcode/DerivedData/Unity-iPhone-fefhiinnkeynjdbzbrkwvsyognfq/Build/Products/qcar.app/qcar, errno=21 for architecture armv7

    I followed your pdf, and read it ... I'm using :
    Unity 3.4.2f3 Pro
    QCAR 1.5.3.b1
    Vectrocity 1.5
    UniFileBrowser 1.4 (bought thru Asset store and is the only version there, and look it might not be the pro version, could be related ?)

    Any tip ....

    Tks
    @mob
     
    Last edited: Jan 28, 2012
  16. atmob

    atmob

    Joined:
    Jan 20, 2012
    Posts:
    22
    And Vectrocity was bought in Asst store too.
    Tks
    @mob
     
  17. Elecman

    Elecman

    Joined:
    May 5, 2011
    Posts:
    1,369
    Hm, not sure.
    -Does it link ok with a simple scene like only a cube (no 3rd pary software)?
    -Does it link ok if you make a project using only QCAR?
    -And how about only Vectrosity and UniFileBrowser?
    -Can you run it in the editor (FrameMarkersManual scene)?
    -What target hardware are you using?

    The pro version for Vectrosity or UniFileBrowser is the same as the basic one. The difference is just what you use the software for (commercial), but the software is the same, so that doesn't make a difference.

    Edit:
    Googling on this error suggest that the problem is not related to my code but rather has something to do with project settings, Xcode version, etc. Try to get a generic project to work first.
     
    Last edited: Jan 30, 2012
  18. patrickgoud

    patrickgoud

    Joined:
    Feb 22, 2012
    Posts:
    2
    Hi Eric,

    Great work on this update! Loading and saving files is a big bonus.
    Just one question: can i save the files to a ftp server as well? That way i can manage multiple devices with the same coordinate system?

    By the way, I read your name on the manual, are you dutch?
     
  19. Elecman

    Elecman

    Joined:
    May 5, 2011
    Posts:
    1,369
    It's Tjeerd, not Eric ;-)
    And yes, I am Dutch.
    Yes, you can save the files to an ftp server but as for the networking functionality, you have to build that yourself. Also take note that the files are saved in binary format and therefore a file saved on one platform cannot be exported to another platform. But the code is easily modified to save the float numbers in a string format to a text file instead. I might change that in a future release. Do you require cross platform functionality?

    Edit:
    I made it is use a text file now so it is cross platform compatible. It will be available in the next release.
     
    Last edited: Mar 2, 2012
  20. Elecman

    Elecman

    Joined:
    May 5, 2011
    Posts:
    1,369
    Update added. See first page.
     
  21. Hidden

    Hidden

    Joined:
    Apr 4, 2011
    Posts:
    20
    Do I need to buy Vectrocity for this system to work?
     
  22. Elecman

    Elecman

    Joined:
    May 5, 2011
    Posts:
    1,369
    Not necessarily but I suggest you do because it is a lot of work trying to remove all function calls relating to it. Besides, it is only US$19.95 and you will support Eric with his good efforts.

    You will need some other stuff from starscenesoftware. See the first post, I have added that info now. The other software dependencies are easier to remove though.
     
  23. Elecman

    Elecman

    Joined:
    May 5, 2011
    Posts:
    1,369
    I added a video of UCS. Check the first post.
     
  24. Juan

    Juan

    Joined:
    May 21, 2009
    Posts:
    142
    How can i use the position filter?

    I want to avoid the delay when a marker gets undetected, when it looses it's orientation, because after a few frames the marker get's detected again.

    So i'm interested just in the filter.

    Can you explain me how can i use it?

    Thanks and congrats on this work, it's really good.

    Cheers.
     
  25. Elecman

    Elecman

    Joined:
    May 5, 2011
    Posts:
    1,369
    The filter is included in UCS and it is on by default. In a later version you can switch it on and off in the settings menu but at the moment you have to do it in the code. Just do a search for "Pose Filter" (with not case sensitive set) in the the MarkerRecorder.cs file and you will see all relevant code. You can copy all that logic and use it in your own project as well. Like you say, the filter gets rid of the delay when a marker is lost. It does require a good quality camera though. Here is a video about the filter:
    http://www.youtube.com/watch?v=W6Tuvlm9Oqs

    Hopefully the filter won't be necessary in the future as the only thing Vuforia has to do is to disable the purposely build in delay, or at least give the user control over that. I already notified them of the negative side effects of the delay.

    You can see the discussion on the Vuforia forum about the pose filter here:
    https://ar.qualcomm.at/qdevnet/forums

    Please support my lobby to get rid of the delay and post it in the Vuforia forum feature request post here:
    https://ar.qualcomm.at/arforums/showthread.php?t=1256

    Thanks
     
  26. patch24

    patch24

    Joined:
    Mar 29, 2009
    Posts:
    120
    can we just print out the pdf's included in the zip file for use as image targets or frame markers?
     
  27. Elecman

    Elecman

    Joined:
    May 5, 2011
    Posts:
    1,369
    Yes indeed. Or you can just display them on a monitor, or iPad, etc.
     
  28. patch24

    patch24

    Joined:
    Mar 29, 2009
    Posts:
    120
    I've tried this process twice starting from scratch in case I missed something. When I build to the device, the app shows the unity startup screen, then quits. Is this working with unity pro only? I was able to build a test scene I created with a spinning box, no AR code at all, to make sure my provisioning and appID were all correct. Also, we should only include the 'runtime' scene file from the project when building to device, right?

    I'm also getting 2 errors in xcode involving copying Icon-144.png file. Not sure what that is.

    Thanks for any help!
    -p
     
  29. Elecman

    Elecman

    Joined:
    May 5, 2011
    Posts:
    1,369
    Pro is not needed. It shouldn't quit at the startup screen. But you do need to code sign your application, otherwise it won't work.

    Not sure what you mean by that, but all scenes have to be added in the correct order from version 0.4 onward. Check the manual for that.

    That is not related to my project. Sound like you have a corrupted project folder. Delete the xcode build directory and build again.

    I will release a new version soon, so try that one.

    Edit:
    Update released. Check out the Android App as well!
     
    Last edited: May 1, 2012
  30. patch24

    patch24

    Joined:
    Mar 29, 2009
    Posts:
    120
    Hey, so there are a number of issues I'm finding.

    First, the object reader and file browser script references are getting dropped from the Cameras and "ObjRead" GameObjects. I am just going back and dragging them back onto the missing monobehaviors. They do seem to keep values you've set in them.

    Also, because I'm starting with a new Unity scene, the layers you are creating are not getting brought over into the new scene. They probably all need to be recreated in these fresh projects. I assume that you have the car model on the VidScreen layer? (It comes in as having a blank layer.)

    It seems that the new UniFileBrowser no longer has a FileBrowser.js, just a UniFileBrowser.js file. That is the one to edit right? (It also looks like Eric has now made some of the changes you had recommended putting in)

    Another issue -in VectorLine.cs there is no declaration for m_vectorLine, I assume it should just be 'vectorLine' right?

    Lastly, did you add the 'SetCamera3D' and 'useDraw3D' functions to VectorLine.cs and VectorManager.cs respectively? They are being looked for by your AxisLineManager script but are missing.

    Sorry to bombard you with all this, I really dig what you are doing and have been trying to get your UCS up and running for a while now.
    Thanks for all the hard work!
    -p
     
  31. Elecman

    Elecman

    Joined:
    May 5, 2011
    Posts:
    1,369
    I think this will be fixed if you add the .unitypackage files in the correct order as per the manual. You need to start from scratch with an empty project and follow the installation procedure exactly, in the order stated.

    Yeah, this is a bit of an annoying problem with Unity. It doesn't transfer layers names between projects. However, it should still work as it just calls a layer for example "unnamed 8". The car model is not the VidScreen layer but a layer which I called ShadowProjector. It is the same layer which is in the "Ignore Layers" item of the blob shadow projector of the car. This is to prevent the blob shadow from projecting onto the car itself instead of just the ground.

    That is correct. And Eric did indeed made some additions I requested. Same goes for a lot of changes in Vectrosity by the way. Bless the guy. I changed the reference in the manual to the correct file name. Thanks for that.

    You have to use Vectrosity 2.0 or higher.
     
  32. patch24

    patch24

    Joined:
    Mar 29, 2009
    Posts:
    120
    Unity isn't keeping those links for some reason, even adding those packages in the correct order. It's no big deal to fix, but if others have this issue, it might be mentioned.

    I guess I'm a little confused about layer 8, in the manual it says "Make sure
    that every layer is selected, except "VidScreen" (layer 8) and "Ignore Raycast"."
    Is layer 8 the only layer you added? If so, I'll just leave it as the shadow avoid layer.

    Ah, that would explain alot! Vectrosity 2.0 isn't available yet on the asset store (where i bought it) It's still v1.5

    Thanks again for all the cool stuff you're doing!
    -p
     
  33. Elecman

    Elecman

    Joined:
    May 5, 2011
    Posts:
    1,369
    Ok, I will add it to the manual. Thanks for notifying me of this problem. But it still should work out of the box... Not sure why it is failing. It would be a lot of work to add all the scripts manually. Will do some research on this.

    I will remove the reference to layer 8 from the manual. The configuration should be like this:

    -BackgroundCamera prefab should have layer: default
    -BackgroundCamera prefab should have culling mask: vidScreen only
    -VidScreen prefab should have layer: vidScreen
    -Main camera should have layer: default
    -Main camera should have culling mask: everything except vidScreen
    -RayCastLayerMask should have: everything except "ignore raycast" and vidScreen

    Note that vidScreen can be any custom layer and can have any name, as long as you use that layer in a consistent manner.

    Vectrosity 2.0 is on the asset store now.

    Let me know if you can get it to work. Thanks for the appreciation :)
     
  34. patch24

    patch24

    Joined:
    Mar 29, 2009
    Posts:
    120
    Such a bummer. I don't know what's going on. Still the same issue. It try to run the app, I see the Unity splash screen, then it quits.
    Xcode console just says 'VuForiaTest' exited absnormally with exit status 1. I can add my own scene file that the app starts with ( which just has a box in it )along with all the other scenes from your project...that builds to the device fine so I know its not provisioning or app id issues.
    Probably going to need to move on. I've already spent 4 days on this.
     
  35. Elecman

    Elecman

    Joined:
    May 5, 2011
    Posts:
    1,369
    Did you try this?

    http://answers.unity3d.com/questions/50666/unity-iphone-exits-with-status-1.html

    Or this:
    http://stackoverflow.com/questions/8214894/how-can-i-make-a-unity-app-run-in-the-new-xcode

    This seems to be a good one too:
    http://forum.unity3d.com/threads/112089-Problem-with-Unity3.4.2-and-Xcode-4.2/page2

    Try to build (instead of build and run) and then open the generated xcode project file manually, then run from xcode.

    Try to re-install Unity3d

    Note that I made the unitypackage on Windows but as far I know, this should work on mac as well. I will try it on my hackintosh today and see if I can reproduce your problem. Stay tuned.

    Edit:
    I tried installing everything from scratch using my own download. For me it does work, but I did notice a bug in MarkerRecorder.cs which might cause the crash you are reporting. I have uploaded a modified version (v0.5 now). Check the first page of this thread for the link. Let me know if it works.
     
    Last edited: May 5, 2012
  36. patch24

    patch24

    Joined:
    Mar 29, 2009
    Posts:
    120
    Ah Success! Ok, so whatever you changed in the MarkerRecorder.cs seems to have fixed it. What did you change? I'm curious to understand more of what's going on.

    (Now I just need to figure out how to get your examples to load -I could see the image plane example, but not the car)
     
  37. patch24

    patch24

    Joined:
    Mar 29, 2009
    Posts:
    120
    So here's what I'm doing. I have printed out the 6 frame markers and placed them on the floor. None are occluded and I can see them all. I hit the 'start new recording' button and can see that all 6 are highlighted in blue. I click on one that is roughly in the center. Hit 'stop recording' then the requester pops up and I save it as 'Scene0.ucs' Then I load that scene up and hit 'game mode' At that point I can hear the car but can't see it anywhere. If I press up on the joystick it gets louder, but that's it. Is there something else fundamental I'm not getting here?

    Also, if I try hitting 'add geometry' it puts a set of blue outlines edge on to the camera view. Not tracking anything to the correct floor orientation...not sure what I should be doing here (or seeing) It looks the same in the FrameMarkersManual scene in the Unity editor, from the camera perspective I'm looking edge-on to the added blue and pink outlines.

    When loading the Scene2 setup, it looks like the image effect plane is on its side (edge-on again) and not lining up with the floor.
     
  38. Elecman

    Elecman

    Joined:
    May 5, 2011
    Posts:
    1,369
    The problem was that Load3dScene() exits with index 3 which is too high (2 should be max), so this causes an index out of range error. For some reason my iPad 2 and Transformer Prime don't crash on that so I didn't notice the problem. Anyway, good it works now.

    Once you save it, there is no need to load it again if you want to use the same scene. A saved scene is automatically "loaded".

    Sounds like the camera placement logic isn't working. Did you follow the manual installation steps referring to the execution order of QCARBehaviour.cs and MarkerRecorder.cs? Also, did you add this code to the beginning of the Update() function of QCARBehaviour.cs as per the manual?

    Code (csharp):
    1.  
    2. Camera.main.transform.position = Vector3.zero;
    3. Camera.main.transform.rotation = Quaternion.identity;
    4.  
    One more thing about the car.
    If you want to use the car scene, you will have to add some geometry first. The car doesn't know that there is a floor, table, etc it can drive on, and it will fall right through it. Click Add Geometry and add a plane. on top of one of the markers. Then select the two horizontal axis and pinch to scale it. Then go to Game Mode and the car will be able to drive on top of that plane.

    Edit:
    New version uploaded
     
    Last edited: May 14, 2012
  39. Elecman

    Elecman

    Joined:
    May 5, 2011
    Posts:
    1,369
    New version added. Biggest improvement:

    -Complete rewrite of the geometry creation and alignment system to make it compatible with future SLAM implementations, simplify the alignment procedure, and provide more flexibility.
     
  40. Titos

    Titos

    Joined:
    Jul 26, 2012
    Posts:
    12
    Can UCS be used without the recording process to define a spatial relationship between markers in code? ie. lets say I have a box with frame markers on it.. I know where they are and which frame markers..

    Also, is it possible to have multiple UCS marker sets in one scene? For example, 2 boxes.
     
  41. Elecman

    Elecman

    Joined:
    May 5, 2011
    Posts:
    1,369
    You can manually edit the save file if the orientation between the markers is known. However, the rotations are stored using quaternions so this is not recommended. You can use Vuforia Multi Targets (see their SDK) for this instead, as it is especially designed for what you want. However, you can only define a box and no other geometry using Multi Targets. If you want to have any other layout, you will have to use UCS.

    Yes, you can have multiple UCS marker sets in one scene. However, UCS expects all the tracking markers to be stationary in relation to each other. You can add other markers which are not used for the coordinate system so they are free to move around, but you can't batch these together to get a separate "box".

    UCS is open source though, so feel free to add any missing features.
     
  42. Titos

    Titos

    Joined:
    Jul 26, 2012
    Posts:
    12
    Thanks for the answer.. unfortunately multitargets cannot be used with frame markers.

    Shame that UCS can't be used for separate boxes. Unfortunate, 'cos when I saw your stuff I thought I could get away without writing this bit of code.Looks like I'm going to have to go back to it.
     
  43. Elecman

    Elecman

    Joined:
    May 5, 2011
    Posts:
    1,369
    Yeah, it's a shame that multi targets only work with image targets. That feature has been requested before so be sure to post it in the wish list thread to keep the pressure on. I will see what I can do to add multiple unified coordinate systems in one UCS project.

    Edit:
    May I ask what you want to use it for?
     
    Last edited: Jul 30, 2012
  44. MrYigit

    MrYigit

    Joined:
    Aug 26, 2011
    Posts:
    20
  45. Elecman

    Elecman

    Joined:
    May 5, 2011
    Posts:
    1,369
    I missed the private post. It is best to ask UCS related questions on the forum instead of a private post if it doesn't contain "secret" information. That way everyone can benefit from it. Anyway, I have replied to it now.

    Thanks for reporting the broken link. Qualcomm changed the forum and all the links to it are broken.

    UCS is perfectly suited for the problem you described in your other post. Give it a try.
     
  46. MrYigit

    MrYigit

    Joined:
    Aug 26, 2011
    Posts:
    20
    Well, we're set to go. I am now following the steps in your manual, but I'm stuck here:

    "RayCastLayerMask var should have: everything except "ignore raycast" and vidScreen"

    Where or what is RayCastLayerMask?? It's not an object since it's not present in the Assets directory. (Obviously I imported all of the necessary files.)
    So it must be a script since your mentioning "var". And with that my search ends, unforunatelly: I'm not a programmer.

    I saw this: http://forum.unity3d.com/threads/10...tring-and-QCAR?p=911335&viewfull=1#post911335
    But that's the same as in the manual.

    Could anyone shine a light here? Thanks.
     
  47. Elecman

    Elecman

    Joined:
    May 5, 2011
    Posts:
    1,369
    I have changed the manual now so it states:
    "-RayCastLayerMask in the Inspector on MarkerRecorder.cs should have: everything except "ignore raycast" and vidScreen."
    Does that make more sense?

    Let me know if you have any more trouble with the layers. Due to a lacking feature with Unity (huge in my opinion) that layers are not exported using a unitypackage, you have to set it up manually.
     
  48. neurograph

    neurograph

    Joined:
    Jun 8, 2010
    Posts:
    24
  49. MrYigit

    MrYigit

    Joined:
    Aug 26, 2011
    Posts:
    20
    Yes, that's more clear. It works now. Thanks.
    I succesfully built a scene to the iPad. It only reacts to framemarkers now, but I want to let it work with my own dataset.
    So that is the next step for me.
     
    Last edited: Aug 9, 2012
  50. Elecman

    Elecman

    Joined:
    May 5, 2011
    Posts:
    1,369
    Glad to hear that it works.
    Using image targets is easy. Go to the settings menu using the settings button on the game itself and there you can swap between the two marker types. It works instantly if you use the provided markers.

    If you want to use your own markers, just place the dataset into the Unity folder: StreamingAssets/QCAR. For ease of use, call the dataset:
    ImageTargets.xml
    ImageTargets.dat

    Otherwise change the name of the dataset in MarkerRecorder.cs here:
    Code (csharp):
    1.  
    2. void CreateImageTargetsRuntime(){
    3.     ...
    4.     string dataSetName = "QCAR/ImageTargets.xml";
    5.  
    EDIT:
    New version added. Major change: can now merge multiple scenes together, as requested.
     
    Last edited: Aug 28, 2012