Я думаю, что для деятельности разработчиков Unity большинство значений обычно остаются открытыми и легко изменяемыми. Если у вас есть что-то, что нужно опубликовать c в вашем C#, но не видно из редактора Unity, определите это как
publi c var {get; set;}
Если вам нужно дополнительно ограничить в Unity, определите свою переменную как
publi c var {get; приватный набор;}
Если вам действительно нужна дополнительная защита, разбейте значения на переменную доступа и вспомогательную переменную, ie:
var _x;
public var X
{
get {return _x;}
set {
if( valueAllowedToBeWritten)
_x = value;
}
Удачи!