• Products
  • Solutions
  • Made with Unity
  • Learning
  • Support & Services
  • Community
  • Asset Store
  • Get Unity

UNITY ACCOUNT

You need a Unity Account to shop in the Online and Asset Stores, participate in the Unity Community and manage your license portfolio. Login Create account
  • Blog
  • Forums
  • Answers
  • Evangelists
  • User Groups
  • Beta Program
  • Advisory Panel

Navigation

  • Home
  • Products
  • Solutions
  • Made with Unity
  • Learning
  • Support & Services
  • Community
    • Blog
    • Forums
    • Answers
    • Evangelists
    • User Groups
    • Beta Program
    • Advisory Panel

Unity account

You need a Unity Account to shop in the Online and Asset Stores, participate in the Unity Community and manage your license portfolio. Login Create account

Language

  • Chinese
  • Spanish
  • Japanese
  • Korean
  • Portuguese
  • Ask a question
  • Spaces
    • Default
    • Help Room
    • META
    • Moderators
    • Topics
    • Questions
    • Users
    • Badges
  • Home /
avatar image
0
Question by DanielAllison · Aug 23, 2018 at 10:04 AM · gameobjectarray of gameobjectssource-control

Array of objects on a MonoBehaviour script not persisting after pulling from source control

I have a script which has an array of vehicle objects and an array of directions which are both populated through the inspector. It works fine for me but I have another laptop that can't seem to pull the changes properly from source control (git). Whenever the scene with this script is changed, if I update the other laptop, the array of directions is unchanged but the array of vehicles is a list of 30 empty objects. The script is here:

 using System.Linq;
 using UnityEngine;
 
 namespace Game.Vehicles
 {
     public class VehicleManager : MonoBehaviour
     {
         [SerializeField] private Vehicle[] _vehicleObjList;
         public Vehicle[] VehicleObjList { get { return _vehicleObjList; } set { _vehicleObjList = value; } }
 
         [Header("Directions")]
         [SerializeField] private DirectionRotation[] _facingDirections;
         public DirectionRotation[] FacingDirections { get { return _facingDirections; } }
 
         public Vehicle SpawnVehicle(VehicleType type)
         {
             var eligibleVehicles = VehicleObjList.Where(x => x.VehicleType == type);
             var vehicleObj = eligibleVehicles.ToList().GetRandomListElement();
 
             var vehicle = Instantiate(vehicleObj);
             vehicle.Setup(FacingDirections);
 
             return vehicle;
         }
     }
 }
 

I've tried creating a prefab with the script and the issue still occurs and I've also tried creating a new version of the script without any luck. All the objects in the list are in the scene on both machines so that shouldn't be the problem. I've also tried pulling the project from source control onto a friends machine and it works without any issues there .

The Vehicle object used above is also a MonoBehaviour script but the DirectionRotation is just a serialized class with a float and an enum value.

Any ideas would be appreciated!

Comment
Add comment · Show 2
10 |3000 characters needed characters left characters exceeded
▼
  • Viewable by all users
  • Viewable by moderators
  • Viewable by moderators and the original poster
  • Advanced visibility
Viewable by all users
avatar image Casiell · Aug 23, 2018 at 11:40 AM 1
Share

That sounds like a problem with cource control. Are you commiting .meta files? They are vital for all the references in the scene.

avatar image DanielAllison Casiell · Aug 23, 2018 at 02:01 PM 1
Share

We are checking in meta files, yeah but spent some digging with regards to the meta files and found 2 versions of them on the machine having issues. Basically it had references to the same objects in the list but in 2 different locations. Deleted the wrong set and pulled down the meta files again and it's all working now. Thanks for the suggestion, it really helped out!

0 Replies

· Add your reply
  • Sort: 

Your answer

Hint: You can notify a user about this post by typing @username

Up to 2 attachments (including images) can be used with a maximum of 524.3 kB each and 1.0 MB total.

Welcome to Unity Answers

The best place to ask and answer questions about development with Unity.

To help users navigate the site we have posted a site navigation guide.

If you are a new user to Unity Answers, check out our FAQ for more information.

Make sure to check out our Knowledge Base for commonly asked Unity questions.

If you are a moderator, see our Moderator Guidelines page.

We are making improvements to UA, see the list of changes.



Follow this Question

Answers Answers and Comments

134 People are following this question.

avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image

Related Questions

Retrieve multiple items from an array of GameObjects 2 Answers

Three Spots For Three Random Objects 1 Answer

using Contains(gameObject) to find and destroy a gameObject from a list 2 Answers

how can i spawn my 52 cards in list of my 52 spawn points gameobject? 1 Answer

Public Array of GameObjects 2 Answers

  • Anonymous
  • Sign in
  • Create
  • Ask a question
  • Spaces
  • Default
  • Help Room
  • META
  • Moderators
  • Explore
  • Topics
  • Questions
  • Users
  • Badges