【问题标题】:Unity spriting a platform tileUnity 绘制平台图块
【发布时间】:2016-09-03 02:25:19
【问题描述】:

我是 Unity 新手,我正在尝试使用平台制作游戏。

所以我有一个图块,它是由三个图像构建的:右角、左角和中间,我想制作不同大小的图块,所以一个看起来像这样:

{left, middle, middle, right}

还有一个:

{left, middle, middle, middle, middle, right}.

有可能吗?

这些是我所说的更有意义的图块:

【问题讨论】:

  • 是的,您可以将它们制作为预制件,然后根据需要多次实例化它们
  • @the.Legend 你能补充一些关于如何实现它的细节吗?
  • 你想在运行时制作它们吗?
  • 您想要一个脚本来创建它们?或者您想要手动创建它们?
  • @MiladQasemi 我希望在运行时使用它,因为我希望它是随机宽度

标签: unity3d sprite


【解决方案1】:

你最难的问题是瓷砖的定位。

假设您的图块在游戏中的宽度为 1 米。 如果您将左图块放置在游戏坐标 (0,0) 处,则必须将中间图块放置在 (1,0) 并以右图块结束 (2,0)

一旦您可以将其可视化,您就可以将其应用到任何位置。 (x,y) 处的左侧瓷砖将在 (x+1,y) 处有中间瓷砖,在 (x+2,y) 处有右侧瓷砖

但是,如果您想添加更多中间图块怎么办? 想象一下,你有一个参数为 n 的函数。 n 是您需要的中间瓷砖的数量。每次你构建一个中间瓦片时,你可以将 n 减一。当 n 为 0 时,您放置正确的瓷砖。

一些伪代码

public void spawnPlatform(int n){  
 int x = random num between 1-10;  
 int y = random num between 1-10;  
 Instantiate left at coord (x,y)

 for(int i=1;i>n;i++){  
  Instantiate middle at coord (x+i,y)  

 }  

 Instantiate right at coord (x+n,y)  
}    

【讨论】:

    猜你喜欢
    • 2012-04-21
    • 2017-12-25
    • 2014-06-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-11-24
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多