I compare two enums with == operator in a thread other than the main thread.
if(leftChunk.Climate.ClimateType==chunk.Climate.ClimateType){...
It throws
ToString can only be called from the main thread.
Constructors and field initializers will be executed from the loading thread when loading a scene.
Don't use this function in the constructor or field initializers, instead move initialization code to the Awake or Start function.
The code is in a regular method.