Wayback Machinekoobas.hobune.stream
May JUN Jul
Previous capture 12 Next capture
2021 2022 2023
1 capture
12 Jun 22 - 12 Jun 22
sparklines
Close Help
  • 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 jonayoung · Jun 26, 2017 at 02:27 AM · crashserializationcrashingrecursionmember variables

Why does the editor crash whenever I select a certain script in the project or object with the same script attached in the hierarchy?

Unity was crashing whenever I select a particular script in the project view or object with the script attached in the hierarchy view. It would crash by freezing as soon as I made the selection and then eventually unity would close. The editor logs showed nothing regarding the crash. I systematically found that it was a particular field in the class which was causing the problem. Eventually I found the answer which is to do with recursive field types in classes that inherit from MonoBehaviour. I will post the solution and select as the correct answer. Just wanted to let others know as there does not appear to be any information I have found on this issue anywhere else online.

Comment
Add comment
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

2 Replies

· Add your reply
  • Sort: 
avatar image
0
Best Answer

Answer by jonayoung · Jun 26, 2017 at 02:48 AM

So the reason why unity was crashing was because the script that was causing it to crash had a reference to a type which in turn had a reference to another type which in turn had a reference to the original type. For example, Script1 has a field of type Type1, Type1 has a field of type Type2 and Type2 has a field of type Type1:

 public class Script1 : MonoBehaviour
 {
    private Type1 fieldVar;
 }
 public class Type1
 {
     private Type2 fieldVar;
 }
 public class Type2 
 {
     private Type1 fieldVar;
 }

I found that the crash only occurred if Script1 is a MonoBehaviour. This lead me to conclude that the way in which unity's inspector works perhaps involves recursively searching through the fields to find serializeable types to expose in the UI. All fields in my case were private and I'm unsure why private fields would be searched through in this way. Also, this does not explain why this would happen in the project view. But it is the only explanation that seems to make at least partial sense. Post a comment if you know why this is the case!

I fixed the issue by having one the the types that reference each other implement an interface. For example, you would make Type1 implement interface IType1 which has the same properties/methods and then change the field of Type2 to by of type IType1. This fixed the issue for me:

 public class Type1 : IType1
 {
     private Type2 fieldVar;
 }
 public class Type2
 {
     private IType1 fieldVar;
 }
Comment
Add comment · Share
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
0

Answer by CinnoMan · Nov 08, 2017 at 04:50 PM

I'm having a similar problem, but I don't know exactly what scripts are involved because when I click on the game object in the hierarchy, it crashes immediately. Is there any way to see what scripts are attached to that object without using the inspector?

Comment
Add comment · Share
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

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.

Follow this Question

Answers Answers and Comments

72 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

Related Questions

Crashing no error 0 Answers

Unity Crashes when opened 1 Answer

Built Game Crashes But Not On Editor 0 Answers

Admob plugin crashing on Android 5.0 0 Answers

mobile app crash 0 Answers


Enterprise
Social Q&A

Social
Subscribe on YouTube social-youtube Follow on LinkedIn social-linkedin Follow on Twitter social-twitter Follow on Facebook social-facebook Follow on Instagram social-instagram

Footer

  • Purchase
    • Products
    • Subscription
    • Asset Store
    • Unity Gear
    • Resellers
  • Education
    • Students
    • Educators
    • Certification
    • Learn
    • Center of Excellence
  • Download
    • Unity
    • Beta Program
  • Unity Labs
    • Labs
    • Publications
  • Resources
    • Learn platform
    • Community
    • Documentation
    • Unity QA
    • FAQ
    • Services Status
    • Connect
  • About Unity
    • About Us
    • Blog
    • Events
    • Careers
    • Contact
    • Press
    • Partners
    • Affiliates
    • Security
Copyright © 2020 Unity Technologies
  • Legal
  • Privacy Policy
  • Cookies
  • Do Not Sell My Personal Information
  • Cookies Settings
"Unity", Unity logos, and other Unity trademarks are trademarks or registered trademarks of Unity Technologies or its affiliates in the U.S. and elsewhere (more info here). Other names or brands are trademarks of their respective owners.
  • Anonymous
  • Sign in
  • Create
  • Ask a question
  • Spaces
  • Default
  • Help Room
  • META
  • Moderators
  • Explore
  • Topics
  • Questions
  • Users
  • Badges