static internal VFXEventAttribute Internal_InstanciateVFXEventAttribute(VisualEffectAsset vfxAsset)
        {
            var eventAttribute = new VFXEventAttribute(Internal_Create(), true);

            eventAttribute.Internal_InitFromAsset(vfxAsset);
            return(eventAttribute);
        }
 private void Release()
 {
     if (m_Owner && m_Ptr != IntPtr.Zero)
     {
         Internal_Destroy(m_Ptr);
     }
     m_Ptr      = IntPtr.Zero;
     m_VfxAsset = null;
 }
 public VFXEventAttribute(VFXEventAttribute original)
 {
     if (original == null)
     {
         throw new ArgumentNullException("VFXEventAttribute expect a non null attribute");
     }
     m_Ptr      = Internal_Create();
     m_VfxAsset = original.m_VfxAsset;
     Internal_InitFromEventAttribute(original);
 }
 extern internal void Internal_InitFromAsset(VisualEffectAsset vfxAsset);
 private VFXEventAttribute(IntPtr ptr, bool owner, VisualEffectAsset vfxAsset)
 {
     m_Ptr      = ptr;
     m_Owner    = owner;
     m_VfxAsset = vfxAsset;
 }