游戏蛮牛学习群(纯技术交流,不闲聊):159852603
游戏蛮牛 手机端
开启辅助访问
 找回密码
 注册帐号

扫一扫,访问微社区

问答求助

关注:558

当前位置:游戏蛮牛 技术专区 问答求助

_____________________________________________________________________________________________________________
问答求助版块规则:

  1、问题尽量描述清楚
      2、代码要放在代码块里
      3、附件最好放到云盘,然后把链接放到TXT文档里,上传TXT文档。【最好没有附件,你懂得】
      4、本版块回复不得无意义,如:顶、呵呵、不错......以及擦边!【真的会扣分的哦】严重者,封IP!
      5、问题得到解决,请选择最佳答案。
      6、若问题是你自己解决了,可以联系管理员,返还蛮牛币,写下你的答案,另有蛮牛币奖赏。
_____________________________________________________________________________________________________________
查看: 671|回复: 19

[技术讨论] Unity3D 怎么实现在运行的时候建造模型

[复制链接]  [移动端链接]
2初来乍到
116/150
排名
15220
昨日变化

2

主题

23

帖子

116

积分

Rank: 2Rank: 2

UID
153696
好友
0
蛮牛币
199
威望
0
注册时间
2016-6-26
在线时间
45 小时
最后登录
2018-9-19
发表于 2018-8-6 11:13:37 | 显示全部楼层 |阅读模式
5蛮牛币
求助求助啊!!那个朋友有做过相关方面的开发的能不能写一段代码,或者讲解一下思路,真的没有思路啊
http://www.3dmomoda.com/gallery/index#
这个链接是我找到的用做的编辑器一类的东西,我就想知道他这个建造墙壁是怎么实现的
QQ截图20180806111052.png QQ截图201802806111052.png QQ截图20180806111236.png

没有思路啊。。。


回复

使用道具 举报

7日久生情
1597/5000
排名
1444
昨日变化

11

主题

230

帖子

1597

积分

Rank: 7Rank: 7Rank: 7Rank: 7

UID
99182
好友
0
蛮牛币
2314
威望
0
注册时间
2015-5-10
在线时间
532 小时
最后登录
2018-10-22
发表于 2018-8-6 11:13:38 | 显示全部楼层
花火 发表于 2018-8-6 17:10
前辈,没思路啊

拉伸效果不过就是判断起始点到当前点的距离,实例化出几个预制体而已,用队列queue存储实例化出来的柱子,距离变大就增加,距离减小就删除。。视频的栅栏其实就是一个柱子的预制体,连续实例化制作的。

回复

使用道具 举报

7日久生情
1597/5000
排名
1444
昨日变化

11

主题

230

帖子

1597

积分

Rank: 7Rank: 7Rank: 7Rank: 7

UID
99182
好友
0
蛮牛币
2314
威望
0
注册时间
2015-5-10
在线时间
532 小时
最后登录
2018-10-22
发表于 2018-8-6 12:01:54 | 显示全部楼层
网上一大堆建造插件。。。简单思路就是把模型都做成预制体,用射线检测到地面,利用这个hit.point的坐标,把预制体放上去就好啦。

回复

使用道具 举报

7日久生情
2137/5000
排名
2815
昨日变化

1

主题

1375

帖子

2137

积分

Rank: 7Rank: 7Rank: 7Rank: 7

UID
119154
好友
0
蛮牛币
2282
威望
0
注册时间
2015-8-21
在线时间
271 小时
最后登录
2018-10-22
发表于 2018-8-6 13:23:23 | 显示全部楼层
第一步:将建筑物做成Prefabs
第二步:写旋转,移动,代码
第三步:写空间定位代码
第四步:实现功能
可以参考一下3DMeshBuilding这个插件

回复

使用道具 举报

4四处流浪
393/500
排名
9161
昨日变化

7

主题

161

帖子

393

积分

Rank: 4

UID
288872
好友
3
蛮牛币
463
威望
0
注册时间
2018-7-7
在线时间
107 小时
最后登录
2018-10-23
QQ
发表于 2018-8-6 15:10:04 | 显示全部楼层
    public GameObject[] obj;
    public int suiJi = 0;
    private float timer=0;
    void Update () {
        ShengCheng();
    }
    void ShengCheng()
    {
        timer += Time.deltaTime;
        while (timer >= 3)
        {
            suiJi = Random.Range(0, obj.Length);
            GameObject obj = Instantiate(LiWuShu[suiJi],transform.position, transform.rotation);
            timer = 0;
        }
    }
把你需要的东西全都拖到数组里,然后随机生成

回复

使用道具 举报

4四处流浪
393/500
排名
9161
昨日变化

7

主题

161

帖子

393

积分

Rank: 4

UID
288872
好友
3
蛮牛币
463
威望
0
注册时间
2018-7-7
在线时间
107 小时
最后登录
2018-10-23
QQ
发表于 2018-8-6 15:11:24 | 显示全部楼层
上次代码有点小错误,这次是对的
   public GameObject[] LiWuShu;
    public int suiJi = 0;
    public static ShengChengLiWu Instance;
   
    private float timer=0;

        void Awake () {
        Instance = this;
    }

    //void Start()
    //{

    //}

    void Update () {
        ShengCheng();
    }
    void ShengCheng()
    {
        timer += Time.deltaTime;
        while (timer >= 3)
        {
            suiJi = Random.Range(0, LiWuShu.Length);
            GameObject obj = Instantiate(LiWuShu[suiJi],transform.position, transform.rotation);
            timer = 0;
        }
    }
[发帖际遇]: BBoyLong 被钱袋砸中进医院,看病花了 1 蛮牛币. 幸运榜 / 衰神榜

回复

使用道具 举报

2初来乍到
116/150
排名
15220
昨日变化

2

主题

23

帖子

116

积分

Rank: 2Rank: 2

UID
153696
好友
0
蛮牛币
199
威望
0
注册时间
2016-6-26
在线时间
45 小时
最后登录
2018-9-19
 楼主| 发表于 2018-8-6 15:39:04 | 显示全部楼层
Kasug 发表于 2018-8-6 12:01
网上一大堆建造插件。。。简单思路就是把模型都做成预制体,用射线检测到地面,利用这个hit.point的坐标, ...

关键是它这个模型还要有拉伸的效果

回复

使用道具 举报

2初来乍到
116/150
排名
15220
昨日变化

2

主题

23

帖子

116

积分

Rank: 2Rank: 2

UID
153696
好友
0
蛮牛币
199
威望
0
注册时间
2016-6-26
在线时间
45 小时
最后登录
2018-9-19
 楼主| 发表于 2018-8-6 15:40:26 | 显示全部楼层
boy840102 发表于 2018-8-6 13:23
第一步:将建筑物做成Prefabs
第二步:写旋转,移动,代码
第三步:写空间定位代码

有插件的链接吗,不胜感谢

回复

使用道具 举报

2初来乍到
116/150
排名
15220
昨日变化

2

主题

23

帖子

116

积分

Rank: 2Rank: 2

UID
153696
好友
0
蛮牛币
199
威望
0
注册时间
2016-6-26
在线时间
45 小时
最后登录
2018-9-19
 楼主| 发表于 2018-8-6 15:43:20 | 显示全部楼层
BBoyLong 发表于 2018-8-6 15:11
上次代码有点小错误,这次是对的
   public GameObject[] LiWuShu;
    public int suiJi = 0;

你可能误会我的意思了,我的意思不是自动生成模型,而是要能在程序运行的时候点击某两个点然后生成墙壁,根据点生成面,根据面生成体

回复

使用道具 举报

7日久生情
1597/5000
排名
1444
昨日变化

11

主题

230

帖子

1597

积分

Rank: 7Rank: 7Rank: 7Rank: 7

UID
99182
好友
0
蛮牛币
2314
威望
0
注册时间
2015-5-10
在线时间
532 小时
最后登录
2018-10-22
发表于 2018-8-6 15:48:28 | 显示全部楼层
花火 发表于 2018-8-6 15:39
关键是它这个模型还要有拉伸的效果

拉伸就是控制模型的Scale吧。。。放置模型之后操作物体的Transform呀

回复

使用道具 举报

2初来乍到
116/150
排名
15220
昨日变化

2

主题

23

帖子

116

积分

Rank: 2Rank: 2

UID
153696
好友
0
蛮牛币
199
威望
0
注册时间
2016-6-26
在线时间
45 小时
最后登录
2018-9-19
 楼主| 发表于 2018-8-6 16:44:23 | 显示全部楼层


回复

使用道具 举报

7日久生情
3050/5000
排名
473
昨日变化

3

主题

279

帖子

3050

积分

Rank: 7Rank: 7Rank: 7Rank: 7

UID
127556
好友
0
蛮牛币
7303
威望
0
注册时间
2015-11-2
在线时间
1264 小时
最后登录
2018-10-23
发表于 2018-8-6 17:05:02 | 显示全部楼层
没那么难,多观摩几遍视频,仔细想想。

回复

使用道具 举报

2初来乍到
116/150
排名
15220
昨日变化

2

主题

23

帖子

116

积分

Rank: 2Rank: 2

UID
153696
好友
0
蛮牛币
199
威望
0
注册时间
2016-6-26
在线时间
45 小时
最后登录
2018-9-19
 楼主| 发表于 2018-8-6 17:10:25 | 显示全部楼层
ma1238906 发表于 2018-8-6 17:05
没那么难,多观摩几遍视频,仔细想想。

前辈,没思路啊

回复

使用道具 举报

2初来乍到
116/150
排名
15220
昨日变化

2

主题

23

帖子

116

积分

Rank: 2Rank: 2

UID
153696
好友
0
蛮牛币
199
威望
0
注册时间
2016-6-26
在线时间
45 小时
最后登录
2018-9-19
 楼主| 发表于 2018-8-7 09:09:54 | 显示全部楼层
Kasug 发表于 2018-8-6 18:07
拉伸效果不过就是判断起始点到当前点的距离,实例化出几个预制体而已,用队列queue存储实例化出来的柱子 ...

那实例化出来的预制体,坐标怎么设置呢
[发帖际遇]: 一个袋子砸在了 花火 头上,花火 赚了 1 蛮牛币. 幸运榜 / 衰神榜

回复

使用道具 举报

7日久生情
1597/5000
排名
1444
昨日变化

11

主题

230

帖子

1597

积分

Rank: 7Rank: 7Rank: 7Rank: 7

UID
99182
好友
0
蛮牛币
2314
威望
0
注册时间
2015-5-10
在线时间
532 小时
最后登录
2018-10-22
发表于 2018-8-7 09:21:14 | 显示全部楼层
花火 发表于 2018-8-7 09:09
那实例化出来的预制体,坐标怎么设置呢

获取到起始点和当前鼠标坐标,就是基本数学运算而已。

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册帐号

本版积分规则

快速回复 返回顶部 返回列表