public void BrushSkillItem()
    {
        if (brushItemDict.Count > 0)
        {
            return;
        }

        CAR_POS oneCarPos = DataCfgMgr.instance.GetCarPos(1);

        SkillBrushPosY = oneCarPos.car_pos.y + BattleInstance.instance.MapLenght + BattleInstance.instance.GetFirstPlayerDistance();
        for (int i = 1; i <= BrushItemCount; i++)
        {
            int        objID        = 0;
            CAR_POS    carOriginPos = DataCfgMgr.instance.GetCarPos(i);
            GameObject obj          = ResMgr.instance.CreateObject(BrushItemResPath, out objID);
            if (obj == null)
            {
                Debug.LogError("ObjMgr SpawnOneUnit obj == null resPath:" + BrushItemResPath);
            }
            Transform objTr        = obj.transform;
            Vector3   skillDropPos = new Vector3(carOriginPos.car_pos.x, SkillBrushPosY, 0);
            objTr.localPosition = skillDropPos;

            SkillItemObj item = new SkillItemObj();
            item.objID           = objID;
            item.itemObj         = obj;
            brushItemDict[objID] = item;
        }
    }
    public void ReleaseItemByID(int objID)
    {
        SkillItemObj obj = null;

        if (brushItemDict.TryGetValue(objID, out obj))
        {
            ResMgr.instance.ReleaseObject(BrushItemResPath, objID);
            brushItemDict.Remove(objID);
        }
    }