2016-11-10 78 views
0

当我加载一个脚本统一我面临给下面我新学习者好心告诉我如何解决它。统一错误3d加载脚本

MissingFieldException:UnityEngine.Transform.Position Boo.Lang.Runtime.DynamicDispatching.PropertyDispatcherFactory.FindExtension(IEnumerable`1候选) Boo.Lang.Runtime.DynamicDispatching.PropertyDispatcherFactory.Create(SetOrGet GOS) Boo.Lang。 Runtime.DynamicDispatching.PropertyDispatcherFactory.CreateSetter() Boo.Lang.Runtime.RuntimeServices.DoCreatePropSetDispatcher(System.Object target,System.Type type,System.String name,System.Object value) Boo.Lang.Runtime.RuntimeServices.CreatePropSetDispatcher (System.Object目标,System.String名称,System.Object值) Boo.Lang.Runtime.RuntimeServices + c__AnonStorey19。 <> m__F() Boo.Lang.Runtime.DynamicDispatching.DispatcherCache.Get(Boo.Lang.Runtime.DynamicDispatching.DispatcherKey键,Boo.Lang.Runtime.DynamicDispatching.DispatcherFactory工厂) Boo.Lang.Runtime.RuntimeServices.GetDispatcher (System.Object target,System.String cacheKeyName,System.Type [] cacheKeyTypes,Boo.Lang.Runtime.DynamicDispatching.DispatcherFactory factory) Boo.Lang.Runtime.RuntimeServices.GetDispatcher(System.Object target,System.Object [] args,System.String cacheKeyName,Boo.Lang.Runtime.DynamicDispatching.DispatcherFactory factory) Boo.Lang.Runtime.RuntimeServices.SetProperty(System.Object target,System.String name,System.Object value) pick up.OnMouseDown( )(在Assets/scripts/pick up.js:8) UnityEngine.SendMouseEvents:DoSendMouseEvents(Int32)

+0

你可以发布产生错误的脚本部分吗? – Omada

+0

欢迎来到Stack Overflow!请通过[tour](http://stackoverflow.com/tour),[帮助中心](http://stackoverflow.com/help)和[如何提出一个好问题](http:// stackoverflow.com/help/how-to-ask)章节,了解本网站的工作原理,并帮助您改善当前和未来的问题,从而帮助您获得更好的答案。 –

回答

0

位置应该写成小写字母“p”。通常首先使用大写字母编写类(例如,Transform,Vector3,GameObject)。类包含对象的定义,但没有值。

像“transform.position”这样的类实例通常带有小写的第一个字母。他们拥有对象的真正价值。这是你改变位置,旋转对象,更换材料等的地方。

我的猜测:在你的“pick up.js”中,看看你是否试图调用实例“Transform.Position”并将其重命名为“transform 。位置”。