C# TextMesh pro Unity:实例化的文本预设不会更改它';什么位置?
我正在制作一个2D游戏,我instatiate的文本预设不会将自己放置在点击的游戏对象上(这就是目标)。在生成画布之后,我通过脚本将其设置为预置的父级,并且它不会改变位置C# TextMesh pro Unity:实例化的文本预设不会更改它';什么位置?,c#,unity3d,text,2d,instantiation,C#,Unity3d,Text,2d,Instantiation,我正在制作一个2D游戏,我instatiate的文本预设不会将自己放置在点击的游戏对象上(这就是目标)。在生成画布之后,我通过脚本将其设置为预置的父级,并且它不会改变位置 // creating hit text GameObject canvas = GameObject.Find("Canvas"); GameObject hit = (GameObject)Instantiate(hitText, transform.position,Quaternion.iden
// creating hit text
GameObject canvas = GameObject.Find("Canvas");
GameObject hit = (GameObject)Instantiate(hitText, transform.position,Quaternion.identity);
hit.transform.SetParent(canvas.transform, false);
hit.transform.position = transform.position;
附:此示例代码使用Unity文本编辑器生成的文本。这是否意味着TeshMesh Pro不支持此功能 对于可能有此问题的任何人,请理解我确保实例化的文本是画布的子对象。问题是,我的文本在开始时已被附加的动画更改。上面的脚本工作正常,但动画正在改变它。
您可以通过将文本的父对象设置为空的游戏对象来轻松解决此问题,然后游戏对象将用作文本的容器,允许文本仅更改其相对于父对象的位置。
transform。position
指的是此代码附加到的对象的位置,不是被单击的游戏对象。代码附加到被单击的对象@Draco18s,需要更多信息。@Draco18s例如?如果我留下的注释没有引起您的注意:“这个代码示例使用的是Unity文本编辑器生成的文本,这是否意味着TeshMesh Pro不支持此功能?”这没有任何意义,我在文档中也看不到任何支持该断言的内容。