Example #1
0
 private void ChangeMeshColor(MeshFilter mFilter, Color tarColor)
 {
     if (mFilter == null || mFilter.mesh == null)
     {
         Debug.LogWarning("ChangeMeshColor mFilter : " + mFilter);
         Debug.LogWarning("ChangeMeshColor mFilter.mesh : " + mFilter.mesh);
         return;
     }
     Color[] array = mFilter.mesh.colors;
     if (array.Length == 0)
     {
         if (mFilter.mesh.vertices.Length == 0)
         {
             NcSpriteFactory.CreateEmptyMesh(mFilter);
         }
         array = new Color[mFilter.mesh.vertices.Length];
         for (int i = 0; i < array.Length; i++)
         {
             array[i] = Color.white;
         }
     }
     for (int j = 0; j < array.Length; j++)
     {
         array[j] = tarColor;
     }
     mFilter.mesh.colors = array;
 }
Example #2
0
 public void SetSpriteFactoryIndex(int nSpriteFactoryIndex, bool bRunImmediate)
 {
     if (this.m_NcSpriteFactoryCom == null)
     {
         if (!this.m_NcSpriteFactoryPrefab || !(this.m_NcSpriteFactoryPrefab.GetComponent <NcSpriteFactory>() != null))
         {
             return;
         }
         this.m_NcSpriteFactoryCom = this.m_NcSpriteFactoryPrefab.GetComponent <NcSpriteFactory>();
     }
     NcSpriteFactory.NcSpriteNode spriteNode = this.m_NcSpriteFactoryCom.GetSpriteNode(nSpriteFactoryIndex);
     this.m_bBuildSpriteObj     = false;
     this.m_bAutoDestruct       = false;
     this.m_fUvScale            = this.m_NcSpriteFactoryCom.m_fUvScale;
     this.m_nSpriteFactoryIndex = nSpriteFactoryIndex;
     this.m_nStartFrame         = 0;
     DebugHelper.Assert(spriteNode != null);
     if (spriteNode != null)
     {
         this.m_nFrameCount        = spriteNode.m_nFrameCount;
         this.m_fFps               = spriteNode.m_fFps;
         this.m_bLoop              = spriteNode.m_bLoop;
         this.m_nLoopStartFrame    = spriteNode.m_nLoopStartFrame;
         this.m_nLoopFrameCount    = spriteNode.m_nLoopFrameCount;
         this.m_nLoopingCount      = spriteNode.m_nLoopingCount;
         this.m_NcSpriteFrameInfos = spriteNode.m_FrameInfos;
     }
     this.ResetLocalValue();
 }
 private bool UpdateFactoryInfo(int nSpriteFactoryIndex)
 {
     this.m_nSpriteFactoryIndex = nSpriteFactoryIndex;
     if (this.m_NcSpriteFactoryCom == null)
     {
         if (!this.m_NcSpriteFactoryPrefab || !(this.m_NcSpriteFactoryPrefab.GetComponent <NcSpriteFactory>() != null))
         {
             return(false);
         }
         this.m_NcSpriteFactoryCom = this.m_NcSpriteFactoryPrefab.GetComponent <NcSpriteFactory>();
     }
     NcSpriteFactory.NcSpriteNode spriteNode = this.m_NcSpriteFactoryCom.GetSpriteNode(this.m_nSpriteFactoryIndex);
     this.m_bBuildSpriteObj = false;
     this.m_bAutoDestruct   = false;
     this.m_fUvScale        = this.m_NcSpriteFactoryCom.m_fUvScale;
     this.m_nStartFrame     = 0;
     if (spriteNode != null)
     {
         this.m_nFrameCount        = spriteNode.m_nFrameCount;
         this.m_fFps               = spriteNode.m_fFps;
         this.m_bLoop              = spriteNode.m_bLoop;
         this.m_nLoopStartFrame    = spriteNode.m_nLoopStartFrame;
         this.m_nLoopFrameCount    = spriteNode.m_nLoopFrameCount;
         this.m_nLoopingCount      = spriteNode.m_nLoopingCount;
         this.m_NcSpriteFrameInfos = spriteNode.m_FrameInfos;
     }
     this.ResetLocalValue();
     return(true);
 }
Example #4
0
    bool UpdateFactoryInfo(int nSpriteFactoryIndex)
    {
        m_nSpriteFactoryIndex = nSpriteFactoryIndex;

        if (m_NcSpriteFactoryCom == null)
        {
            if (m_NcSpriteFactoryPrefab && m_NcSpriteFactoryPrefab.GetComponent <NcSpriteFactory>() != null)
            {
                m_NcSpriteFactoryCom = m_NcSpriteFactoryPrefab.GetComponent <NcSpriteFactory>();
            }
            else
            {
                return(false);
            }
        }
        NcSpriteFactory.NcSpriteNode spriteNode = m_NcSpriteFactoryCom.GetSpriteNode(m_nSpriteFactoryIndex);

        m_bBuildSpriteObj = false;
        m_bAutoDestruct   = false;
        m_fUvScale        = m_NcSpriteFactoryCom.m_fUvScale;
        m_nStartFrame     = 0;
        if (spriteNode != null)
        {
            m_nFrameCount        = spriteNode.m_nFrameCount;
            m_fFps               = spriteNode.m_fFps;
            m_bLoop              = spriteNode.m_bLoop;
            m_nLoopStartFrame    = spriteNode.m_nLoopStartFrame;
            m_nLoopFrameCount    = spriteNode.m_nLoopFrameCount;
            m_nLoopingCount      = spriteNode.m_nLoopingCount;
            m_NcSpriteFrameInfos = spriteNode.m_FrameInfos;
        }
        ResetLocalValue();
        return(true);
    }
Example #5
0
    public bool UpdateSpriteMaterial()
    {
        if (m_NcSpriteFactoryPrefab == null)
        {
            return(false);
        }
        if (m_NcSpriteFactoryPrefab.renderer == null || m_NcSpriteFactoryPrefab.renderer.sharedMaterial == null || m_NcSpriteFactoryPrefab.renderer.sharedMaterial.mainTexture == null)
        {
            return(false);
        }
        if (renderer == null)
        {
            return(false);
        }
        NcSpriteFactory ncSpriteFactory = m_NcSpriteFactoryPrefab.GetComponent <NcSpriteFactory>();

        if (ncSpriteFactory == null)
        {
            return(false);
        }
        if (m_nSpriteFactoryIndex < 0 || ncSpriteFactory.GetSpriteNodeCount() <= m_nSpriteFactoryIndex)
        {
            return(false);
        }
        if (ncSpriteFactory.m_SpriteType != NcSpriteFactory.SPRITE_TYPE.NcSpriteTexture)
        {
            return(false);
        }
        renderer.sharedMaterial = m_NcSpriteFactoryPrefab.renderer.sharedMaterial;
        return(true);
    }
Example #6
0
//  void Update()
//  {
//  }

    // Control Function -----------------------------------------------------------------
    public void SetSpriteFactoryIndex(int nSpriteFactoryIndex, int nFrameIndex, bool bRunImmediate)
    {
        if (m_NcSpriteFactoryCom == null)
        {
            if (m_NcSpriteFactoryPrefab && m_NcSpriteFactoryPrefab.GetComponent <NcSpriteFactory>() != null)
            {
                m_NcSpriteFactoryCom = m_NcSpriteFactoryPrefab.GetComponent <NcSpriteFactory>();
            }
            else
            {
                return;
            }
        }
        m_nSpriteFactoryIndex = nSpriteFactoryIndex;
        if (m_NcSpriteFactoryCom.IsValidFactory() == false)
        {
            return;
        }
        m_NcSpriteFrameInfos = m_NcSpriteFactoryCom.GetSpriteNode(nSpriteFactoryIndex).m_FrameInfos;
        m_nFrameIndex        = (0 <= nFrameIndex ? nFrameIndex : m_nFrameIndex);
        m_nFrameIndex        = (m_NcSpriteFrameInfos.Length == 0 || m_NcSpriteFrameInfos.Length <= m_nFrameIndex ? 0 : m_nFrameIndex);
        m_fUvScale           = m_NcSpriteFactoryCom.m_fUvScale;
        if (bRunImmediate)
        {
            UpdateSpriteTexture(bRunImmediate);
        }
    }
    // Loop Function --------------------------------------------------------------------
    void Awake()
    {
// #if UNITY_EDITOR
//      if (IsCreatingEditObject() == false)
// #endif
        {
            if (m_NcSpriteFactoryPrefab == null && gameObject.GetComponent <NcSpriteFactory>() != null)
            {
                m_NcSpriteFactoryPrefab = gameObject;
            }
            if (m_NcSpriteFactoryPrefab && m_NcSpriteFactoryPrefab.GetComponent <NcSpriteFactory>() != null)
            {
                m_NcSpriteFactoryCom = m_NcSpriteFactoryPrefab.GetComponent <NcSpriteFactory>();
            }
        }

        if (m_MeshFilter == null)
        {
            if (gameObject.GetComponent <MeshFilter>() != null)
            {
                m_MeshFilter = gameObject.GetComponent <MeshFilter>();
            }
        }
        if (m_nLoopFrameCount == 0)
        {
            m_nLoopFrameCount = m_nFrameCount - m_nLoopStartFrame;
        }
    }
    // Control Function -----------------------------------------------------------------
    public void SetSpriteFactoryIndex(int nSpriteFactoryIndex, bool bRunImmediate)
    {
        if (m_NcSpriteFactoryCom == null)
        {
            if (m_NcSpriteFactoryPrefab && m_NcSpriteFactoryPrefab.GetComponent <NcSpriteFactory>() != null)
            {
                m_NcSpriteFactoryCom = m_NcSpriteFactoryPrefab.GetComponent <NcSpriteFactory>();
            }
            else
            {
                return;
            }
        }
        NcSpriteFactory.NcSpriteNode spriteNode = m_NcSpriteFactoryCom.GetSpriteNode(nSpriteFactoryIndex);

        m_bBuildSpriteObj     = false;
        m_bAutoDestruct       = false;
        m_fUvScale            = m_NcSpriteFactoryCom.m_fUvScale;
        m_nSpriteFactoryIndex = nSpriteFactoryIndex;
        m_nStartFrame         = 0;
        m_nFrameCount         = spriteNode.m_nFrameCount;
        m_fFps               = spriteNode.m_fFps;
        m_bLoop              = spriteNode.m_bLoop;
        m_nLoopStartFrame    = spriteNode.m_nLoopStartFrame;
        m_nLoopFrameCount    = spriteNode.m_nLoopFrameCount;
        m_nLoopingCount      = spriteNode.m_nLoopingCount;
        m_NcSpriteFrameInfos = spriteNode.m_FrameInfos;
        ResetLocalValue();
    }
Example #9
0
 void UpdateBuiltInPlane(int nSelIndex)
 {
     NcSpriteFactory.UpdatePlane(m_MeshFilter, m_fUvScale, m_NcSpriteFrameInfos[nSelIndex],
                                 (m_TextureType == TEXTURE_TYPE.TileTexture ? false : m_bTrimCenterAlign), m_AlignType, m_fShowRate);
     NcSpriteFactory.UpdateMeshUVs(m_MeshFilter, m_NcSpriteFrameInfos[nSelIndex].m_TextureUvOffset, m_AlignType,
                                   m_fShowRate);
 }
Example #10
0
    void ChangeMeshColor(MeshFilter mFilter, Color tarColor)
    {
        if (mFilter == null || mFilter.mesh == null)
        {
            Debug.LogWarning("ChangeMeshColor mFilter : " + mFilter);
            Debug.LogWarning("ChangeMeshColor mFilter.mesh : " + mFilter.mesh);
            return;
        }

        Color[] colors = mFilter.mesh.colors;
        if (colors.Length == 0)
        {
            if (mFilter.mesh.vertices.Length == 0)
            {
                NcSpriteFactory.CreateEmptyMesh(mFilter);
            }
            colors = new Color[mFilter.mesh.vertices.Length];
            for (int c = 0; c < colors.Length; c++)
            {
                colors[c] = Color.white;
            }
        }

        for (int c = 0; c < colors.Length; c++)
        {
            colors[c] = tarColor;
        }
        mFilter.mesh.colors = colors;
    }
Example #11
0
 private void UpdateSpriteTexture(bool bShowEffect)
 {
     if (this.UpdateSpriteMaterial() && this.m_NcSpriteFactoryCom.IsValidFactory())
     {
         if (this.m_NcSpriteFrameInfos.Length == 0)
         {
             this.SetSpriteFactoryIndex(this.m_nSpriteFactoryIndex, this.m_nFrameIndex, false);
         }
         if (base.m_MeshFilter == null)
         {
             if (base.gameObject.GetComponent <MeshFilter>() != null)
             {
                 base.m_MeshFilter = base.gameObject.GetComponent <MeshFilter>();
             }
             else
             {
                 base.m_MeshFilter = base.gameObject.AddComponent <MeshFilter>();
             }
         }
         NcSpriteFactory.CreatePlane(base.m_MeshFilter, this.m_fUvScale, this.m_NcSpriteFrameInfos[this.m_nFrameIndex], false, this.m_AlignType, this.m_MeshType);
         NcSpriteFactory.UpdateMeshUVs(base.m_MeshFilter, this.m_NcSpriteFrameInfos[this.m_nFrameIndex].m_TextureUvOffset);
         if (bShowEffect)
         {
             this.m_EffectObject = this.m_NcSpriteFactoryCom.CreateSpriteEffect(this.m_nSpriteFactoryIndex, base.transform);
         }
     }
 }
    void CreateAttachGameObject()
    {
        m_CreateGameObject = (GameObject)CreateGameObject(GetTargetGameObject(), (GetTargetGameObject() == gameObject ? null : transform), m_AttachPrefab);
        if (m_CreateGameObject == null)
        {
            return;
        }

        // sync Layer
//		Ng_ChangeLayerWithChild(m_CreateGameObject, gameObject.layer);

        // Random pos, AddStartPos
        Vector3 newPos = m_CreateGameObject.transform.position;

        m_CreateGameObject.transform.position = m_AddStartPos + new Vector3(Random.Range(-m_RandomRange.x, m_RandomRange.x) + newPos.x, Random.Range(-m_RandomRange.y, m_RandomRange.y) + newPos.y, Random.Range(-m_RandomRange.z, m_RandomRange.z) + newPos.z);

        // m_AccumStartRot
        m_CreateGameObject.transform.localRotation *= Quaternion.Euler(m_AccumStartRot.x * m_nCreateCount, m_AccumStartRot.y * m_nCreateCount, m_AccumStartRot.z * m_nCreateCount);
        m_CreateGameObject.name += " " + m_nCreateCount;
        SetActiveRecursively(m_CreateGameObject, true);

        // PrefabAdjustSpeed
        AdjustSpeedRuntime(m_CreateGameObject, m_fPrefabSpeed);

        // m_fPrefabLifeTime
        if (0 < m_fPrefabLifeTime)
        {
            NcAutoDestruct ncAd = m_CreateGameObject.GetComponent <NcAutoDestruct>();
            if (ncAd == null)
            {
                ncAd = m_CreateGameObject.AddComponent <NcAutoDestruct>();
            }
            ncAd.m_fLifeTime = m_fPrefabLifeTime;
        }

        // m_bDetachParent
        if (m_bDetachParent)
        {
            NcDetachParent detachCom = m_CreateGameObject.GetComponent <NcDetachParent>();
            if (detachCom == null)
            {
                detachCom = m_CreateGameObject.AddComponent <NcDetachParent>();
            }
        }

        // m_nSpriteFactoryIndex
        if (0 <= m_nSpriteFactoryIndex)
        {
            NcSpriteFactory ncFactory = m_CreateGameObject.GetComponent <NcSpriteFactory>();
            if (ncFactory)
            {
                ncFactory.SetSprite(m_nSpriteFactoryIndex, false);
            }
        }
    }
Example #13
0
 private void Awake()
 {
     if (this.m_NcSpriteFactoryPrefab == null && base.get_gameObject().GetComponent <NcSpriteFactory>() != null)
     {
         this.m_NcSpriteFactoryPrefab = base.get_gameObject();
     }
     if (this.m_NcSpriteFactoryPrefab && this.m_NcSpriteFactoryPrefab.GetComponent <NcSpriteFactory>() != null)
     {
         this.m_NcSpriteFactoryCom = this.m_NcSpriteFactoryPrefab.GetComponent <NcSpriteFactory>();
     }
 }
Example #14
0
 private void Awake()
 {
     if ((this.m_NcSpriteFactoryPrefab == null) && (base.gameObject.GetComponent <NcSpriteFactory>() != null))
     {
         this.m_NcSpriteFactoryPrefab = base.gameObject;
     }
     if ((this.m_NcSpriteFactoryPrefab != null) && (this.m_NcSpriteFactoryPrefab.GetComponent <NcSpriteFactory>() != null))
     {
         this.m_NcSpriteFactoryCom = this.m_NcSpriteFactoryPrefab.GetComponent <NcSpriteFactory>();
     }
 }
Example #15
0
// 	void Update()
// 	{
// 	}

	// Control Function -----------------------------------------------------------------
	public void SetSpriteFactoryIndex(string spriteName, int nFrameIndex, bool bRunImmediate)
	{
		if (m_NcSpriteFactoryCom == null)
		{
			if (m_NcSpriteFactoryPrefab && m_NcSpriteFactoryPrefab.GetComponent<NcSpriteFactory>() != null)
				m_NcSpriteFactoryCom = m_NcSpriteFactoryPrefab.GetComponent<NcSpriteFactory>();
			else return;
		}
		m_nSpriteFactoryIndex = m_NcSpriteFactoryCom.GetSpriteNodeIndex(spriteName);
		SetSpriteFactoryIndex(m_nSpriteFactoryIndex, nFrameIndex, bRunImmediate);
	}
Example #16
0
    protected bool DrawTrimTexture(Rect drawRect, bool bSelEnable, Material srcMat, NcSpriteFactory ncSpriteFactory, int nSelFactoryIndex, int nSelFrameIndex, bool bRotateRight, out int nClickFactoryIndex, out int nClickFrameIndex)
    {
//		FXMakerLayout.GetOffsetRect(rect, 0, 5, 0, -5);
        Texture srcTex = srcMat.mainTexture;

        GUI.DrawTexture(drawRect, srcTex, ScaleMode.StretchToFill, true);

        Event ev = Event.current;

        for (int n = 0; n < ncSpriteFactory.GetSpriteNodeCount(); n++)
        {
            NcSpriteFactory.NcSpriteNode ncSpriteNode = ncSpriteFactory.GetSpriteNode(n);
            if (ncSpriteNode.IsEmptyTexture())
            {
                continue;
            }

            for (int fc = 0; fc < ncSpriteNode.m_nFrameCount; fc++)
            {
                Color color;
                Rect  uvRect = ncSpriteFactory.GetSpriteUvRect(n, fc);
                // draw indexRect
                Rect currRect = new Rect(drawRect.x + uvRect.xMin * drawRect.width, drawRect.y + (1 - uvRect.yMin - uvRect.height) * drawRect.height, uvRect.width * drawRect.width, uvRect.height * drawRect.height);
                if (nSelFactoryIndex == n)
                {
                    color = (nSelFrameIndex == fc ? Color.green : Color.red);
                }
                else
                {
                    color = Color.yellow;
                }
                NgGUIDraw.DrawBox(FXMakerLayout.GetOffsetRect(currRect, 0), color, 1, false);

                // Change selIndex
                if (bSelEnable && (ev.type == EventType.MouseDown) && currRect.Contains(ev.mousePosition))
                {
//					m_Sel.SetSpriteFactoryIndex(n, fc, false);
                    nClickFactoryIndex = n;
                    nClickFrameIndex   = fc;
                    // Rotate
                    if (bRotateRight && ev.button == 1)
                    {
                        (target as NcEffectBehaviour).transform.Rotate(0, 180, 0);
                    }
                    Repaint();
                    return(true);
                }
            }
        }
        nClickFactoryIndex = 0;
        nClickFrameIndex   = 0;
        return(false);
    }
	// Loop Function --------------------------------------------------------------------
	void Awake()
	{
// #if UNITY_EDITOR
// 		if (IsCreatingEditObject() == false)
// #endif
		{
			if (m_NcSpriteFactoryPrefab == null && gameObject.GetComponent<NcSpriteFactory>() != null)
				m_NcSpriteFactoryPrefab = gameObject;
			if (m_NcSpriteFactoryPrefab && m_NcSpriteFactoryPrefab.GetComponent<NcSpriteFactory>() != null)
				m_NcSpriteFactoryCom = m_NcSpriteFactoryPrefab.GetComponent<NcSpriteFactory>();
		}
	}
Example #18
0
 public void SetSpriteFactoryIndex(string spriteName, int nFrameIndex, bool bRunImmediate)
 {
     if (this.m_NcSpriteFactoryCom == null)
     {
         if (!this.m_NcSpriteFactoryPrefab || !(this.m_NcSpriteFactoryPrefab.GetComponent <NcSpriteFactory>() != null))
         {
             return;
         }
         this.m_NcSpriteFactoryCom = this.m_NcSpriteFactoryPrefab.GetComponent <NcSpriteFactory>();
     }
     this.m_nSpriteFactoryIndex = this.m_NcSpriteFactoryCom.GetSpriteNodeIndex(spriteName);
     this.SetSpriteFactoryIndex(this.m_nSpriteFactoryIndex, nFrameIndex, bRunImmediate);
 }
Example #19
0
 private void Awake()
 {
     if (this.m_NcSpriteFactoryPrefab == null && base.gameObject.GetComponent <NcSpriteFactory>() != null)
     {
         this.m_NcSpriteFactoryPrefab = base.gameObject;
     }
     if (this.m_NcSpriteFactoryPrefab && this.m_NcSpriteFactoryPrefab.GetComponent <NcSpriteFactory>() != null)
     {
         this.m_NcSpriteFactoryCom = this.m_NcSpriteFactoryPrefab.GetComponent <NcSpriteFactory>();
     }
     if (this.m_MeshFilter == null && base.gameObject.GetComponent <MeshFilter>() != null)
     {
         this.m_MeshFilter = base.gameObject.GetComponent <MeshFilter>();
     }
 }
Example #20
0
//  void Update()
//  {
//  }

    // Control Function -----------------------------------------------------------------
    public void SetSpriteFactoryIndex(string spriteName, int nFrameIndex, bool bRunImmediate)
    {
        if (m_NcSpriteFactoryCom == null)
        {
            if (m_NcSpriteFactoryPrefab && m_NcSpriteFactoryPrefab.GetComponent <NcSpriteFactory>() != null)
            {
                m_NcSpriteFactoryCom = m_NcSpriteFactoryPrefab.GetComponent <NcSpriteFactory>();
            }
            else
            {
                return;
            }
        }
        m_nSpriteFactoryIndex = m_NcSpriteFactoryCom.GetSpriteNodeIndex(spriteName);
        SetSpriteFactoryIndex(m_nSpriteFactoryIndex, nFrameIndex, bRunImmediate);
    }
Example #21
0
    // Loop Function --------------------------------------------------------------------
    void Awake()
    {
// #if UNITY_EDITOR
//      if (IsCreatingEditObject() == false)
// #endif
        {
            if (m_NcSpriteFactoryPrefab == null && gameObject.GetComponent <NcSpriteFactory>() != null)
            {
                m_NcSpriteFactoryPrefab = gameObject;
            }
            if (m_NcSpriteFactoryPrefab && m_NcSpriteFactoryPrefab.GetComponent <NcSpriteFactory>() != null)
            {
                m_NcSpriteFactoryCom = m_NcSpriteFactoryPrefab.GetComponent <NcSpriteFactory>();
            }
        }
    }
 // 	void Update()
 // 	{
 // 	}
 // Control Function -----------------------------------------------------------------
 public void SetSpriteFactoryIndex(int nSpriteFactoryIndex, int nFrameIndex, bool bRunImmediate)
 {
     if (m_NcSpriteFactoryCom == null)
     {
         if (m_NcSpriteFactoryPrefab && m_NcSpriteFactoryPrefab.GetComponent<NcSpriteFactory>() != null)
             m_NcSpriteFactoryCom = m_NcSpriteFactoryPrefab.GetComponent<NcSpriteFactory>();
         else return;
     }
     m_nSpriteFactoryIndex	= nSpriteFactoryIndex;
     if (m_NcSpriteFactoryCom.IsValidFactory() == false)
         return;
     m_NcSpriteFrameInfos	= m_NcSpriteFactoryCom.GetSpriteNode(nSpriteFactoryIndex).m_FrameInfos;
     m_nFrameIndex			= (0 <= nFrameIndex ? nFrameIndex : m_nFrameIndex);
     m_nFrameIndex			= (m_NcSpriteFrameInfos.Length == 0 || m_NcSpriteFrameInfos.Length <= m_nFrameIndex ? 0 : m_nFrameIndex);
     m_fUvScale				= m_NcSpriteFactoryCom.m_fUvScale;
     if (bRunImmediate)
         UpdateSpriteTexture(bRunImmediate);
 }
Example #23
0
    void CreateBuiltInPlane(int nSelIndex)
    {
        if (m_bCreateBuiltInPlane)
        {
            return;
        }
        m_bCreateBuiltInPlane = true;
        if (m_MeshFilter == null)
        {
            m_MeshFilter = gameObject.GetComponent <MeshFilter>() != null
                ? gameObject.GetComponent <MeshFilter>()
                : gameObject.AddComponent <MeshFilter>();
        }

        NcSpriteFactory.CreatePlane(m_MeshFilter, m_fUvScale, m_NcSpriteFrameInfos[nSelIndex],
                                    (m_TextureType == TEXTURE_TYPE.TileTexture ? false : m_bTrimCenterAlign), m_AlignType, m_MeshType,
                                    m_fShowRate);
    }
Example #24
0
    public static string ExportSplitTexture(string tarBasePath, Texture srcTex, NcSpriteFactory.NcFrameInfo[] ncSpriteFrameInfos)
    {
        #if UNITY_WEBPLAYER
        Debug.LogError("In WEB_PLAYER mode, you cannot run the FXMaker.");
        Debug.Break();
        return "";
        #else
        if (srcTex == null)
            return "";
        if (ncSpriteFrameInfos == null || ncSpriteFrameInfos.Length <= 0)
            return "";

        // split texture
        Texture2D		atlasTexture	= CloneAtlasTexture(srcTex);
        bool			bHadAlpha		= IsFindAlphaPixel(atlasTexture);

        // create subFolder
        string	filename	= srcTex.name;
        string	tarPath		= NgFile.CombinePath(tarBasePath, filename);
        if (Directory.Exists(tarPath) == false)
            Directory.CreateDirectory(tarPath);

        // export
        for (int n = 0; n < ncSpriteFrameInfos.Length; n++)
        {
            // packTextures
            Color		clearColor		= new Color(0, 0, 0, (bHadAlpha ? 0 : 1));
            Texture2D	splitTexture	= new Texture2D(ncSpriteFrameInfos[n].m_nTexWidth, ncSpriteFrameInfos[n].m_nTexHeight, TextureFormat.ARGB32, false);

            // clear
            for (int x = 0; x < splitTexture.width; x++)
                for (int y = 0; y < splitTexture.height; y++)
                    splitTexture.SetPixel(x, y, clearColor);

            Color[]	colors = atlasTexture.GetPixels((int)(ncSpriteFrameInfos[n].m_TextureUvOffset.x*atlasTexture.width), (int)(ncSpriteFrameInfos[n].m_TextureUvOffset.y*atlasTexture.height), (int)(ncSpriteFrameInfos[n].m_TextureUvOffset.width*atlasTexture.width), (int)(ncSpriteFrameInfos[n].m_TextureUvOffset.height*atlasTexture.height), 0);
            splitTexture.SetPixels((int)((ncSpriteFrameInfos[n].m_FrameUvOffset.x+1)*splitTexture.width/2), (int)((ncSpriteFrameInfos[n].m_FrameUvOffset.y+1)*splitTexture.height/2), (int)(ncSpriteFrameInfos[n].m_FrameUvOffset.width*splitTexture.width/2), (int)(ncSpriteFrameInfos[n].m_FrameUvOffset.height*splitTexture.height/2), colors, 0);
            SaveTexture(splitTexture, tarPath, string.Format("{0}_{1:00}", filename, n));
            // free tempTexture
            Object.DestroyImmediate(splitTexture);
        }
        Object.DestroyImmediate(atlasTexture);
        return tarPath;
        #endif
    }
Example #25
0
 private void CreateBuiltInPlane(int nSelIndex)
 {
     if (!this.m_bCreateBuiltInPlane)
     {
         this.m_bCreateBuiltInPlane = true;
         if (base.m_MeshFilter == null)
         {
             if (base.gameObject.GetComponent <MeshFilter>() != null)
             {
                 base.m_MeshFilter = base.gameObject.GetComponent <MeshFilter>();
             }
             else
             {
                 base.m_MeshFilter = base.gameObject.AddComponent <MeshFilter>();
             }
         }
         NcSpriteFactory.CreatePlane(base.m_MeshFilter, this.m_fUvScale, this.m_NcSpriteFrameInfos[nSelIndex], (this.m_TextureType != TEXTURE_TYPE.TileTexture) ? this.m_bTrimCenterAlign : false, this.m_AlignType, this.m_MeshType);
     }
 }
Example #26
0
 private bool UpdateFactoryInfo(int nSpriteFactoryIndex)
 {
     this.m_nSpriteFactoryIndex = nSpriteFactoryIndex;
     if (this.m_NcSpriteFactoryCom == null)
     {
         if (!this.m_NcSpriteFactoryPrefab || !(this.m_NcSpriteFactoryPrefab.GetComponent <NcSpriteFactory>() != null))
         {
             return(false);
         }
         this.m_NcSpriteFactoryCom = this.m_NcSpriteFactoryPrefab.GetComponent <NcSpriteFactory>();
     }
     if (!this.m_NcSpriteFactoryCom.IsValidFactory())
     {
         return(false);
     }
     this.m_NcSpriteFrameInfos = this.m_NcSpriteFactoryCom.GetSpriteNode(this.m_nSpriteFactoryIndex).m_FrameInfos;
     this.m_fUvScale           = this.m_NcSpriteFactoryCom.m_fUvScale;
     return(true);
 }
 private void Awake()
 {
     if (this.m_NcSpriteFactoryPrefab == null && base.get_gameObject().GetComponent <NcSpriteFactory>() != null)
     {
         this.m_NcSpriteFactoryPrefab = base.get_gameObject();
     }
     if (this.m_NcSpriteFactoryPrefab && this.m_NcSpriteFactoryPrefab.GetComponent <NcSpriteFactory>() != null)
     {
         this.m_NcSpriteFactoryCom = this.m_NcSpriteFactoryPrefab.GetComponent <NcSpriteFactory>();
     }
     if (this.m_MeshFilter == null && base.get_gameObject().GetComponent <MeshFilter>() != null)
     {
         this.m_MeshFilter = base.get_gameObject().GetComponent <MeshFilter>();
     }
     if (this.m_nLoopFrameCount == 0)
     {
         this.m_nLoopFrameCount = this.m_nFrameCount - this.m_nLoopStartFrame;
     }
 }
Example #28
0
    public void UpdateSpriteTexture()
    {
        if (UpdateSpriteMaterial() == false)
        {
            return;
        }
        NcSpriteFactory ncSpriteFactory = m_NcSpriteFactoryPrefab.GetComponent <NcSpriteFactory>();

        ncSpriteFactory.UpdateNcSpriteTexture(m_nSpriteFactoryIndex, this);
        ncSpriteFactory.UpdateUvScale(m_nSpriteFactoryIndex, transform);
        m_EffectObject = ncSpriteFactory.CreateSpriteEffect(m_nSpriteFactoryIndex, transform);

        if (UpdateMeshUVs(new Rect(m_fOffsetX, m_fOffsetY, m_fTilingX, m_fTilingY)) == false)
        {
//          Debug.Log("m_Renderer.material");
            renderer.material.mainTextureScale  = new Vector2(m_fTilingX, m_fTilingY);
            renderer.material.mainTextureOffset = new Vector2(m_fOffsetX, m_fOffsetY);
        }
    }
Example #29
0
 private void ChangeAlpha(float alpha)
 {
     if (this.Type == ChangeAlphaType.Material)
     {
         for (int i = 0; i < this.rens.Length; i++)
         {
             Renderer renderer          = this.rens[i];
             string   materialColorName = AutoAlpha.GetMaterialColorName(renderer.sharedMaterial);
             if (materialColorName != null)
             {
                 Color color = renderer.material.GetColor(materialColorName);
                 color.a = alpha;
                 renderer.material.SetColor(materialColorName, color);
             }
         }
     }
     else
     {
         for (int j = 0; j < this.meshFilters.Length; j++)
         {
             Color[] array = this.meshFilters[j].mesh.colors;
             if (array.Length == 0)
             {
                 if (this.meshFilters[j].mesh.vertices.Length == 0)
                 {
                     NcSpriteFactory.CreateEmptyMesh(this.meshFilters[j]);
                 }
                 array = new Color[this.meshFilters[j].mesh.vertices.Length];
                 for (int k = 0; k < array.Length; k++)
                 {
                     array[k] = Color.white;
                 }
             }
             for (int l = 0; l < array.Length; l++)
             {
                 Color color2 = array[l];
                 color2.a = alpha;
                 array[l] = color2;
             }
             this.meshFilters[j].mesh.colors = array;
         }
     }
 }
Example #30
0
    void UpdateSpriteTexture(bool bShowEffect)
    {
        if (!UpdateSpriteMaterial())
        {
            return;
        }
        if (!m_NcSpriteFactoryCom.IsValidFactory())
        {
            return;
        }
        if (m_NcSpriteFrameInfos.Length == 0)
        {
            SetSpriteFactoryIndex(m_nSpriteFactoryIndex, m_nFrameIndex, false);
        }

        if (m_MeshFilter == null)
        {
            if (gameObject.GetComponent <MeshFilter>() != null)
            {
                m_MeshFilter = gameObject.GetComponent <MeshFilter>();
            }
            else
            {
                m_MeshFilter = gameObject.AddComponent <MeshFilter>();
            }
        }

        NcSpriteFactory.CreatePlane(m_MeshFilter, m_fUvScale, m_NcSpriteFrameInfos[m_nFrameIndex], false, m_AlignType,
                                    m_MeshType, m_fShowRate);
        NcSpriteFactory.UpdateMeshUVs(m_MeshFilter, m_NcSpriteFrameInfos[m_nFrameIndex].m_TextureUvOffset, m_AlignType,
                                      m_fShowRate);
        //      {
        // //           Debug.Log("m_Renderer.material");
        //          renderer.material.mainTextureScale	= new Vector2(m_fTilingX, m_fTilingY);
        //          renderer.material.mainTextureOffset	= new Vector2(m_fOffsetX, m_fOffsetY);
        //      }

        if (bShowEffect)
        {
            m_EffectObject = m_NcSpriteFactoryCom.CreateSpriteEffect(m_nSpriteFactoryIndex, transform);
        }
    }
 void CreateBuiltInPlane(int nSelIndex)
 {
     if (m_bCreateBuiltInPlane)
     {
         return;
     }
     m_bCreateBuiltInPlane = true;
     if (m_MeshFilter == null)
     {
         if (gameObject.GetComponent <MeshFilter>() != null)
         {
             m_MeshFilter = gameObject.GetComponent <MeshFilter>();
         }
         else
         {
             m_MeshFilter = gameObject.AddComponent <MeshFilter>();
         }
     }
     NcSpriteFactory.CreatePlane(m_MeshFilter, m_fUvScale, m_NcSpriteFrameInfos[nSelIndex], m_AlignType, m_MeshType);
 }
Example #32
0
 private void CreateBuiltInPlane(int nSelIndex)
 {
     if (this.m_bCreateBuiltInPlane)
     {
         return;
     }
     this.m_bCreateBuiltInPlane = true;
     if (this.m_MeshFilter == null)
     {
         if (base.gameObject.GetComponent <MeshFilter>() != null)
         {
             this.m_MeshFilter = base.gameObject.GetComponent <MeshFilter>();
         }
         else
         {
             this.m_MeshFilter = base.gameObject.AddComponent <MeshFilter>();
         }
     }
     NcSpriteFactory.CreatePlane(this.m_MeshFilter, this.m_fUvScale, this.m_NcSpriteFrameInfos[nSelIndex], this.m_AlignType, this.m_MeshType);
 }
Example #33
0
 private void CreateBuiltInPlane(int nSelIndex)
 {
     if (this.m_bCreateBuiltInPlane)
     {
         return;
     }
     this.m_bCreateBuiltInPlane = true;
     if (this.m_MeshFilter == null)
     {
         if (base.gameObject.GetComponent <MeshFilter>() != null)
         {
             this.m_MeshFilter = base.gameObject.GetComponent <MeshFilter>();
         }
         else
         {
             this.m_MeshFilter = base.gameObject.AddComponent <MeshFilter>();
         }
     }
     NcSpriteFactory.CreatePlane(this.m_MeshFilter, this.m_fUvScale, this.m_NcSpriteFrameInfos[nSelIndex], this.m_TextureType != NcSpriteAnimation.TEXTURE_TYPE.TileTexture && this.m_bTrimCenterAlign, this.m_AlignType, this.m_MeshType, this.m_fShowRate);
 }
Example #34
0
 bool UpdateFactoryInfo(int nSpriteFactoryIndex)
 {
     m_nSpriteFactoryIndex = nSpriteFactoryIndex;
     if (m_NcSpriteFactoryCom == null)
     {
         if (m_NcSpriteFactoryPrefab && m_NcSpriteFactoryPrefab.GetComponent <NcSpriteFactory>() != null)
         {
             m_NcSpriteFactoryCom = m_NcSpriteFactoryPrefab.GetComponent <NcSpriteFactory>();
         }
         else
         {
             return(false);
         }
     }
     if (m_NcSpriteFactoryCom.IsValidFactory() == false)
     {
         return(false);
     }
     m_NcSpriteFrameInfos = m_NcSpriteFactoryCom.GetSpriteNode(m_nSpriteFactoryIndex).m_FrameInfos;
     m_fUvScale           = m_NcSpriteFactoryCom.m_fUvScale;
     return(true);
 }
Example #35
0
	// Control Function -----------------------------------------------------------------
	public void SetSpriteFactoryIndex(int nSpriteFactoryIndex, bool bRunImmediate)
	{
		if (m_NcSpriteFactoryCom == null)
		{
			if (m_NcSpriteFactoryPrefab && m_NcSpriteFactoryPrefab.GetComponent<NcSpriteFactory>() != null)
				m_NcSpriteFactoryCom = m_NcSpriteFactoryPrefab.GetComponent<NcSpriteFactory>();
			else return;
		}
		NcSpriteFactory.NcSpriteNode	spriteNode = m_NcSpriteFactoryCom.GetSpriteNode(nSpriteFactoryIndex);

		m_bBuildSpriteObj		= false;
		m_bAutoDestruct			= false;
		m_fUvScale				= m_NcSpriteFactoryCom.m_fUvScale;
		m_nSpriteFactoryIndex	= nSpriteFactoryIndex;
		m_nStartFrame			= 0;
		m_nFrameCount			= spriteNode.m_nFrameCount;
		m_fFps					= spriteNode.m_fFps;
		m_bLoop					= spriteNode.m_bLoop;
		m_nLoopStartFrame		= spriteNode.m_nLoopStartFrame;
		m_nLoopFrameCount		= spriteNode.m_nLoopFrameCount;
		m_nLoopingCount			= spriteNode.m_nLoopingCount;
		m_NcSpriteFrameInfos	= spriteNode.m_FrameInfos;
		ResetLocalValue();
	}
	protected bool DrawTrimTexture(Rect drawRect, bool bSelEnable, Material srcMat, NcSpriteFactory ncSpriteFactory, int nSelFactoryIndex, int nSelFrameIndex, bool bRotateRight, out int nClickFactoryIndex, out int nClickFrameIndex)
	{
//		FXMakerLayout.GetOffsetRect(rect, 0, 5, 0, -5);
		Texture srcTex = srcMat.mainTexture;
		GUI.DrawTexture(drawRect, srcTex, ScaleMode.StretchToFill, true);

		Event	ev	= Event.current;

		for (int n = 0; n < ncSpriteFactory.GetSpriteNodeCount(); n++)
		{
			NcSpriteFactory.NcSpriteNode	ncSpriteNode = ncSpriteFactory.GetSpriteNode(n);
			for (int fc = 0; fc < ncSpriteNode.m_nFrameCount; fc++)
			{
				Color	color;
				Rect	uvRect	= ncSpriteFactory.GetSpriteUvRect(n, fc);
				// draw indexRect
				Rect currRect = new Rect(drawRect.x+uvRect.xMin*drawRect.width, drawRect.y+(1-uvRect.yMin-uvRect.height)*drawRect.height, uvRect.width*drawRect.width, uvRect.height*drawRect.height);
				if (nSelFactoryIndex == n)
				{
					color = (nSelFrameIndex == fc ? Color.green : Color.red);
				} else {
					color = Color.yellow;
				}
				NgGUIDraw.DrawBox(FXMakerLayout.GetOffsetRect(currRect, 0), color, 1, false);

				// Change selIndex
				if (bSelEnable && (ev.type == EventType.MouseDown) && currRect.Contains(ev.mousePosition))
				{
//					m_Sel.SetSpriteFactoryIndex(n, fc, false);
					nClickFactoryIndex	= n;
					nClickFrameIndex	= fc;
					// Rotate
					if (bRotateRight && ev.button == 1)
						(target as NcEffectBehaviour).transform.Rotate(0, 180, 0);
					Repaint();
					return true;
				}
			}
		}
		nClickFactoryIndex	= 0;
		nClickFrameIndex	= 0;
		return false;
	}
	protected bool DrawTrimTexture(Rect drawRect, bool bSelEnable, Material srcMat, NcSpriteFactory.NcFrameInfo[] ncSpriteFrameInfos, int nStartFrame, int nFrameCount, int nSelFrameIndex, out int nClickFrameIndex)
	{
		nClickFrameIndex = 0;
		GUI.DrawTexture(drawRect, srcMat.mainTexture, ScaleMode.StretchToFill, true);

		if (ncSpriteFrameInfos == null)
			return false;
		Event	ev	= Event.current;

		if (ncSpriteFrameInfos != null)
		{
			for (int n = nStartFrame; n < Mathf.Min(nStartFrame + nFrameCount, ncSpriteFrameInfos.Length); n++)
			{
				Rect uvRect	= ncSpriteFrameInfos[n].m_TextureUvOffset;
				// draw indexRect
				Rect currRect = new Rect(drawRect.x+uvRect.xMin*drawRect.width, drawRect.y+(1-uvRect.yMin-uvRect.height)*drawRect.height, uvRect.width*drawRect.width, uvRect.height*drawRect.height);
				NgGUIDraw.DrawBox(FXMakerLayout.GetOffsetRect(currRect, 0), ((nStartFrame+nSelFrameIndex == n && bSelEnable) ? Color.green : Color.red), 1, false);

				// Change selIndex
				if (bSelEnable && (ev.type == EventType.MouseDown && ev.button == 0) && currRect.Contains(ev.mousePosition))
				{
					nClickFrameIndex = n - nStartFrame;
					Repaint();
					return true;
				}
			}
		}
		return false;
	}
	// Property -------------------------------------------------------------------------
	// Event Function -------------------------------------------------------------------
    void OnEnable()
    {
 		m_Sel = target as NcSpriteFactory;
 		m_UndoManager	= new FXMakerUndoManager(m_Sel, "NcSpriteFactory");
   }
Example #39
0
	bool UpdateFactoryInfo(int nSpriteFactoryIndex)
	{
		m_nSpriteFactoryIndex	= nSpriteFactoryIndex;
		if (m_NcSpriteFactoryCom == null)
		{
			if (m_NcSpriteFactoryPrefab && m_NcSpriteFactoryPrefab.GetComponent<NcSpriteFactory>() != null)
				m_NcSpriteFactoryCom = m_NcSpriteFactoryPrefab.GetComponent<NcSpriteFactory>();
			else return false;
		}
		if (m_NcSpriteFactoryCom.IsValidFactory() == false)
			return false;
		m_NcSpriteFrameInfos	= m_NcSpriteFactoryCom.GetSpriteNode(m_nSpriteFactoryIndex).m_FrameInfos;
		m_fUvScale				= m_NcSpriteFactoryCom.m_fUvScale;
		return true;
	}
Example #40
0
	// Loop Function --------------------------------------------------------------------
	void Awake()
	{
// #if UNITY_EDITOR
// 		if (IsCreatingEditObject() == false)
// #endif
		{
			if (m_NcSpriteFactoryPrefab == null && gameObject.GetComponent<NcSpriteFactory>() != null)
				m_NcSpriteFactoryPrefab = gameObject;
			if (m_NcSpriteFactoryPrefab && m_NcSpriteFactoryPrefab.GetComponent<NcSpriteFactory>() != null)
				m_NcSpriteFactoryCom = m_NcSpriteFactoryPrefab.GetComponent<NcSpriteFactory>();
		}

		if (m_MeshFilter == null)
		{
			if (gameObject.GetComponent<MeshFilter>() != null)
				 m_MeshFilter = gameObject.GetComponent<MeshFilter>();
		}
		if (m_nLoopFrameCount == 0)
			m_nLoopFrameCount = m_nFrameCount - m_nLoopStartFrame;
		m_Renderer		= renderer;
	}
Example #41
0
    bool UpdateFactoryInfo(int nSpriteFactoryIndex)
    {
        m_nSpriteFactoryIndex	= nSpriteFactoryIndex;

        if (m_NcSpriteFactoryCom == null)
        {
            if (m_NcSpriteFactoryPrefab && m_NcSpriteFactoryPrefab.GetComponent<NcSpriteFactory>() != null)
                m_NcSpriteFactoryCom = m_NcSpriteFactoryPrefab.GetComponent<NcSpriteFactory>();
            else return false;
        }
        NcSpriteFactory.NcSpriteNode	spriteNode = m_NcSpriteFactoryCom.GetSpriteNode(m_nSpriteFactoryIndex);

        m_bBuildSpriteObj		= false;
        m_bAutoDestruct			= false;
        m_fUvScale				= m_NcSpriteFactoryCom.m_fUvScale;
        m_nStartFrame			= 0;
        if (spriteNode != null)
        {
            m_nFrameCount		= spriteNode.m_nFrameCount;
            m_fFps				= spriteNode.m_fFps;
            m_bLoop				= spriteNode.m_bLoop;
            m_nLoopStartFrame	= spriteNode.m_nLoopStartFrame;
            m_nLoopFrameCount	= spriteNode.m_nLoopFrameCount;
            m_nLoopingCount		= spriteNode.m_nLoopingCount;
            m_NcSpriteFrameInfos= spriteNode.m_FrameInfos;
        }
        ResetLocalValue();
        return true;
    }