当前位置:  开发笔记 > 编程语言 > 正文

Unity3D的"3D"文本是二维的.我会建立自己的

如何解决《Unity3D的"3D"文本是二维的.我会建立自己的》经验,为你挑选了1个好方法。

Unity3D不提供3维文本.他们有一种他们称之为3D文本的文本,但我不知道为什么因为它没有深度,只有高度和宽度.

我需要三维文字.实际上,我只需要数字,0到9.我已经在Blender中制作了这些数字.

我不知道如何在Unity中使用我的数字.对于上下文,我有一个"得分"可以从碰撞事件中获取数据,所以它并不像将这些对象拖放到我的世界中那么简单.

我是否需要构建字体或其他内容?如果有人能指出我正确的方向,我会非常感激.谷歌在这次搜索中并没有放弃太多.



1> Minzkraut..:

Unitys上下文中的3D文本只是意味着可以在3D空间中移动的文本(不像只能在二维平面上移动的GUI文本)

不幸的是,你不能只为团结或任何其他软件制作你自己的"3D字体"(搅拌机自己完成所有计算以深度渲染文本),
以便存档你想要的东西:

创建3D数字(在搅拌机中)

将它们导入您的资产

创建一个获取数据的新脚本

仔细检查数字的每个字符

根据位置计算偏移量

实例化资产中的数字

如果不再需要数量资产,则销毁它(重绘数字)

循环示例(根据要求)!Just the idea!!复制和粘贴不起作用:

int scoreData = whatever your number is;

LoopFunction(){

    string scoreText = scoreData.toString();
    string[] characters = new string[scoreText.Length];

    for (int i = 0; i < text.Length; i++)
     {
        Instantiate (Resources.Load (characters[i])) as GameObject;
        /*
        Make sure that "1.pfefab" to "9.prefab" files exists in  
        Resources folder and 'Resources' folder exists in 'Assets' folder.  

        Add the offset to a variable after instantiating  
        so the numbers wont overlap
        */
      }

}


将它们放在资源文件夹中,并在它们的编号后命名.将分数转换为字符串和foreach字符,加载资产.
推荐阅读
和谐啄木鸟
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有