新闻资讯NEWS INFORMATION
经验|竖向随机立面建模,其实很简单
发布时间:2018-07-17浏览 1719 次

你以为别人的随机立面是真随机啊?下面的图告诉你答案~




那咱就先来分析一下这张图吧



从这张图上可以看到,这个立面是结合结构一起做的柱子是上下一一对应的,从底层直接到顶上而格栅则是随机的




最后做出的成果,那下面咱就来看具体的操作吧!



咱们可以先理理大概的思路:先定出一根柱子,然后阵列得到其他的柱子,再在柱子间等分得到格栅,再挑选出相应的格栅以生成随机效果,其他另外的细节我们在操作中再加入。


一、定出初始的柱子



说是柱子

其实我们这里生成的是曲线

因为后面生成方柱是比较简单快速的

这里我将建筑总高度拆分成层高和层数两个因素

这样便于咱们后期调节

后面用到会再说

定出的这第一根直线

很重要



二、阵列出其他的柱子



直接给个等差数列

移动第一根柱子

定出柱子的数目和间距

当然如果定的是总的开间

然后再分开间数的话

可以用range



三、格栅的制作



这里首先咱们可以明确的一点是

格栅是在柱子之间的



而柱子是基于咱们的等差数列移动生成的

所以我们现在要在柱子中间插入格栅的话

就以这个等差数列相邻两个数建立区间

range在这区间中再建立等差数列




就是为了生成这种效果

绿色的是柱子

红色的是格栅



但是这里其实有另一个问题

上图没显示出来

就是range出来的数据

前一列表的最后一个数

和后一个列表的第一个数



这样子会出现一些咱们不想要的情况




比如格栅会和柱子重合在一起




这里将其首尾两个数删除掉就好

这里cull index我会拍平一下

让后面的数据结构看起来更加简单一些

我试过

在这里拍不拍平对最后的效果没影响



ok继续操作

先等分这些曲线

等分的数值就是之前设置好的建筑层数

提取等分点的 t 值组成区间

把上一步我们得到的格栅基准线等分成一根根sub curve

这里我之所以再接个cull index是因为要让一层没有格栅




bake出来是一根根子线段



现在我们就要从这一堆sub curve中

筛选出要成格栅的sub curve




现在我们就要从这一堆sub curve中筛选出要成格栅的sub curve



这里用random运算器

0到1的区间随机取值(random的R端默认是0到1)

将取得的值四舍五入

就可以得到一组由 0和1 组成的数

不过这里又有个问题

0和1的值基本是五五开

那我想1多一些怎么办?

这个问题先放着

后面用到咱们再说




dispatch的L端接入之前的sub curve

将会成格栅的曲线筛选出来



调节seed值可以取得不同的随机效果

立面竖向的格栅基准线搞定

下面就是简单的挤出成体了



在这之前我们先要将横向的横档给做出来



取之前做好的柱子的首尾两根

按层数等分

然后连线

搞定



下面就是成体

先是柱子格栅



然后横档

如果最底下一根不需要

可以用cull index剔除





所以这时候问题就来了

我想要格栅多一些怎么办

那就得回到之前我们之前提出疑问的地方




得让1多一些

问题放在这里

就是让random中产生的数大于0.5的数更多一些




random和四舍五入之间

接个graph mapper




右键设置bezier曲线

调节曲线即可调节格栅数的多少




做的过程中很多时候

往往显示把效果做出来

后面需要实现怎样的操控效果

再加相应的程序就好了

到这里这个案例差不多就结束了



让我们来看看用这个做出来的实际案例吧!














苏ICP备  Copyright  江苏雅迪装饰工程有限公司  All Rights Reserved
售前咨询
点击这里给我发消息
售后客服
点击这里给我发消息
欢迎给我们留言关闭
联系人:
电    话:
  
用微信扫一扫,加为关注关闭