playMaker

Author Topic: Unity 2018 compatibility?  (Read 10055 times)

InbalTal

  • Junior Playmaker
  • **
  • Posts: 55
Vuforia playmaker Action in unity 2018[SOLVED]
« Reply #15 on: July 14, 2018, 04:47:56 AM »
Hi
To work with Playmaker vuforia action on Unity 2018 you have to do the following:
1. Download the Vuforia plugin from the Ecosystem.
2. Update the PlayMakerUtils from the Ecosystem.
3. Download "Substance in Unity" from the Assets Store

Good luck!
Inbal
« Last Edit: July 20, 2018, 05:23:11 AM by jeanfabre »

jeanfabre

  • Administrator
  • Hero Member
  • *****
  • Posts: 15500
  • Official Playmaker Support
Re: Unity 2018 compatibility?
« Reply #16 on: July 18, 2018, 04:41:59 AM »
Hi,

 I just updated Vuforia. Can you try? if that doesn't work, it's because you need to move to 2018.2, I tested and it work on that version of Unity fine.

 Bye,

 Jean

InbalTal

  • Junior Playmaker
  • **
  • Posts: 55
Re: Unity 2018 compatibility?
« Reply #17 on: July 18, 2018, 06:53:02 AM »
Hi Jean
Thank's for the Upgarde
but it's does'nt work
Here is what I did:
1. Install Unity 2018.2.0f2 + Vuforia:  v. 7.2.20
2. Install PlayMaker 1.9 from the AssetStore
3. Install  Ecosystem from the Addons
4. Install Vuforia for Playmaker from the Ecosystem (unity 2017)
5. Install Playmaker Utils from the Ecosystem

The error that I get is:

Assets/PlayMaker Vuforia/Actions/VuforiaGetExtendedTracking.cs(28,3): error CS0246: The type or namespace name `IEditDataSetBehaviour' could not be found. Are you missing an assembly reference?

What Could be worng?

Inbal

jeanfabre

  • Administrator
  • Hero Member
  • *****
  • Posts: 15500
  • Official Playmaker Support
Re: Unity 2018 compatibility?
« Reply #18 on: July 19, 2018, 02:47:31 AM »
Hi,

 I think then that Vuforia:  v. 7.2.20 is the problem.

unfortunatly, updating vuforia fails on my computer so I can't test on that version.


also, in the steps, you really only need to install the vuforia package from the ecosystem, PLayMaker Utils is up to date on that latest package.


If you don't need extended tracking, simply delete that action and check if eveything else works while I find a solution to install the latest vuforia.

 Bye,

 Jean




« Last Edit: July 19, 2018, 03:11:19 AM by jeanfabre »

jeanfabre

  • Administrator
  • Hero Member
  • *****
  • Posts: 15500
  • Official Playmaker Support
Re: Unity 2018 compatibility?
« Reply #19 on: July 19, 2018, 03:13:04 AM »
Hi,

 ok, so Vuforia and Unity don't really play well together when using the unityhub... that's not cool.

solution is here: https://developer.vuforia.com/forum/unity/updating-vuforia-version-when-using-unity-hub


and regards the error, indeed I can confirm that you need to delete the offending action while I learn the new way of doing it and provide a dedicated action for it.

 Bye,

 Jean

jeanfabre

  • Administrator
  • Hero Member
  • *****
  • Posts: 15500
  • Official Playmaker Support
Re: Unity 2018 compatibility?
« Reply #20 on: July 19, 2018, 06:10:31 AM »
Ok,

 Updated the package, with a nice system I put in place to handle the various versions of Vuforia.

Please update the package, the action will be flaged as obsolete, and now Vuforia has a new Device Tracker system that's supposed to take over the extended tracking feature we had previously.

more infos here: https://library.vuforia.com/articles/Training/Extended-Tracking

If all is well on your side, I'll announce that release.

Bye,

 Jean

InbalTal

  • Junior Playmaker
  • **
  • Posts: 55
Re: Unity 2018 compatibility?
« Reply #21 on: July 19, 2018, 11:29:15 AM »
HI Jean

Thank you for your upgrade.
Still the same Error

I Delete the Vuforia Playmaker from my Assent and eveythink is working Fine (No Errors).
when I Download it from the Ecosystem, I get the same error above.  :-\
Inbal

jeanfabre

  • Administrator
  • Hero Member
  • *****
  • Posts: 15500
  • Official Playmaker Support
Re: Unity 2018 compatibility?
« Reply #22 on: July 19, 2018, 02:23:39 PM »
Hi,

 uhm yes I see, once the error is here, Unity doesn't let Editor scripts run and so It's too late, I don't have time to set internal scripting define symbols...

 two ways to go about this for now:

-  you add PLAYMAKER_VUFORIA_7_2_20_OR_NEWER to your PlayerSettings Scripting define symbols

or

- you delete the action VuforiaGetExtendedTracking

I'll try meanwhile to find a way to have one package for both vuforia, but it looks compromised unfortunatly.

 Bye,

 Jean

InbalTal

  • Junior Playmaker
  • **
  • Posts: 55
Re: Unity 2018 compatibility?
« Reply #23 on: July 20, 2018, 02:22:29 AM »
Hi Jean
Thank you for your fast reply
I change the script but stiil get error in the:  _target.DeviceTracker (it dont Recognize)
what do i do wrong?


// (c) Copyright HutongGames, LLC 2010-2013. All rights reserved.

using UnityEngine;
using Vuforia;
using System;

namespace HutongGames.PlayMaker.Actions
{
   [ActionCategory("Vuforia")]
   [Tooltip("Get the Device Tracker option for Target.")]

   //#if PLAYMAKER_VUFORIA_7_2_20_OR_NEWER
   [Obsolete("ExtendedTracking is now replaced by 'Device Tracker'")]
   //#endif
   public class VuforiaGetDeviceTracker : FsmStateAction
   {

      [Tooltip("The Target to check (must have Device Trackerinterface")]
      public FsmOwnerDefault GameObject;

      [UIHint(UIHint.Variable)]
      [Tooltip("")]
      public FsmBool DeviceTracker;

      public FsmEvent DeviceTrackerEnabled;
      public FsmEvent DeviceTrackerDisabled;

      public FsmEvent Error;

      GameObject _owner;
      GameObject _goTarget;

//#if !PLAYMAKER_VUFORIA_7_2_20_OR_NEWER
        DeviceTracker _target;
      //#endif

      int value = -1;

      public override void Reset()
      {
         GameObject = null;
            Device Tracker = null;
            Device TrackerEnabled = null;
            Device TrackerDisabled = null;
         Error = null;
      }
      
      public override void OnEnter()
      {

         ExecuteAction ();
      }

      public override void OnUpdate ()
      {
         ExecuteAction ();
      }
         
      void ExecuteAction()
      {
         //#if !PLAYMAKER_VUFORIA_7_2_20_OR_NEWER
         _owner = Fsm.GetOwnerDefaultTarget (GameObject);

         if (_goTarget != _owner ) {
            _goTarget = _owner;
            if (_goTarget == null) {
               _target = null;
            } else{
               _target = _goTarget.GetComponent< DeviceTracker > ();
            }

            if (_target == null) {
               Fsm.Event (Error);
            }

         }
            
         if (_target == null) {
            return;
         }

         if (!DeviceTracker.IsNone) {
                DeviceTracker.Value = _target.DeviceTracker;
         }

         if (value == -1 || value == 1 != _target.DeviceTracker) {
            value = _target.DeviceTracker ? 1:0;
            if (value == 1) {
               Fsm.Event (DeviceTrackerEnabled);
            }
            if (value == 0) {
               Fsm.Event (DeviceTrackerDisabled);
            }
         }
         //#endif
      }
      
      
   }
}


« Last Edit: July 20, 2018, 02:25:36 AM by InbalTal »

jeanfabre

  • Administrator
  • Hero Member
  • *****
  • Posts: 15500
  • Official Playmaker Support
Re: Unity 2018 compatibility?
« Reply #24 on: July 20, 2018, 04:06:26 AM »
Hi,

 you don't need to modify the script, you either delete it all together ( cause it's not obsolete in vuforia 7.2.20) or you add PLAYMAKER_VUFORIA_7_2_20_OR_NEWER to your plaerSettings scripting symbols.

 Bye,

 Jean

InbalTal

  • Junior Playmaker
  • **
  • Posts: 55
Re: Unity 2018 compatibility?
« Reply #25 on: July 20, 2018, 04:41:17 AM »
Hi Jean
 Good News!!
It's works!!

Just add the PLAYMAKER_VUFORIA_7_2_20_OR_NEWER to the player Settings scripting symbols

thank's
You can Publish the update...
have a great day
Inbal