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

扫一扫,访问微社区

问答求助

关注:547

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

_____________________________________________________________________________________________________________
问答求助版块规则:

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

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

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

2

主题

20

帖子

100

积分

Rank: 2Rank: 2

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

没有思路啊。。。


回复

使用道具 举报

6蛮牛粉丝
1434/1500
排名
1620
昨日变化
5

8

主题

208

帖子

1434

积分

Rank: 6Rank: 6Rank: 6

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

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

回复

使用道具 举报

6蛮牛粉丝
1434/1500
排名
1620
昨日变化
5

8

主题

208

帖子

1434

积分

Rank: 6Rank: 6Rank: 6

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

回复

使用道具 举报

7日久生情
1589/5000
排名
3537
昨日变化
15

1

主题

994

帖子

1589

积分

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

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

回复

使用道具 举报

3偶尔光临
166/300
排名
17121
昨日变化
472

3

主题

95

帖子

166

积分

Rank: 3Rank: 3Rank: 3

UID
288872
好友
3
蛮牛币
114
威望
0
注册时间
2018-7-7
在线时间
32 小时
最后登录
2018-8-16
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;
        }
    }
把你需要的东西全都拖到数组里,然后随机生成

回复

使用道具 举报

3偶尔光临
166/300
排名
17121
昨日变化
472

3

主题

95

帖子

166

积分

Rank: 3Rank: 3Rank: 3

UID
288872
好友
3
蛮牛币
114
威望
0
注册时间
2018-7-7
在线时间
32 小时
最后登录
2018-8-16
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初来乍到
100/150
排名
16298
昨日变化
385

2

主题

20

帖子

100

积分

Rank: 2Rank: 2

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

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

回复

使用道具 举报

2初来乍到
100/150
排名
16298
昨日变化
385

2

主题

20

帖子

100

积分

Rank: 2Rank: 2

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

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

回复

使用道具 举报

2初来乍到
100/150
排名
16298
昨日变化
385

2

主题

20

帖子

100

积分

Rank: 2Rank: 2

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

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

回复

使用道具 举报

6蛮牛粉丝
1434/1500
排名
1620
昨日变化
5

8

主题

208

帖子

1434

积分

Rank: 6Rank: 6Rank: 6

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

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

回复

使用道具 举报

2初来乍到
100/150
排名
16298
昨日变化
385

2

主题

20

帖子

100

积分

Rank: 2Rank: 2

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


回复

使用道具 举报

7日久生情
2836/5000
排名
518
昨日变化

2

主题

264

帖子

2836

积分

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

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

回复

使用道具 举报

2初来乍到
100/150
排名
16298
昨日变化
385

2

主题

20

帖子

100

积分

Rank: 2Rank: 2

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

前辈,没思路啊

回复

使用道具 举报

2初来乍到
100/150
排名
16298
昨日变化
385

2

主题

20

帖子

100

积分

Rank: 2Rank: 2

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

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

回复

使用道具 举报

6蛮牛粉丝
1434/1500
排名
1620
昨日变化
5

8

主题

208

帖子

1434

积分

Rank: 6Rank: 6Rank: 6

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

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

回复

使用道具 举报

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

本版积分规则

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