今天和大家分享Unreal基础教程之蓝图样线条,我是木偶心没,既然是入门,就先从如下效果的基本样线条效果开始。
上面主要根据画出的样线条,然后加载了同一个mesh不同的旋转值以及大小。首先按照规矩先创建一个普通的Actor blueprint class。
然后搜索并创建一个spline。
然后在construction script中创建一个loop去循环样线条上的每一个点。
接着就开始往每个样线条距离上面加mesh,添加一个add static mesh component节点,并用set static mesh为添加的static mesh component设置mesh。
New Mesh中可以选择需要用样线条加载的模型,这里先随便加一个圆柱。
用set material为添加的模型赋予材质球,并将add static mesh component的return value;连接到set static mesh和set material的target中,表示是为前面的mesh设置的材质以及模型。
接下来我们将计算各个样线条上面点之间的距离,然后根据这些点需要循环放置多少mesh。
所以首先需要在左边创建如下几个。
Float类型的变量 Spacing,表示mesh之间的距离,默认值设置为150。
Float类型的变量RandomRotation,表示各个mesh的随机旋转值。
Float类型的变量RandomScale,表示各个mesh的随机大小。
RandomStream类型的变量RandomStream,可以产生随机值。
将component里面的spline拉下来,并使用Get Spline Length获取样线条的长度,将获取到的长度除以我们自定义的变量spacing就可以得到loop循环需要的次数,所以最后将return的值输入到ForLoop的Last Index里面。
找到位置以后,就可以开始放置mesh了,再将spline拉下来,然后用节点Get Location at Distance Along Spline来根据给到的样线条间隔长度,得到样线条上面的点。并且coordinate space选择World,Distance就是用自定义变量spacing和循环时候的index相乘得到的距离(如果循环到第1个,就是一个spacing,第二个就是两个spacing的距离)
接下来就是把我们的随机旋转和随机大小给加进去,先把Random Rotation和Random Stream拉出来,然后从RandomStream添加一个Random Float in Range From Stream,并设置Min为-15,Random Rotation连入到Max中,并设置默认值为15.
把最后的旋转值输入到Make Rotator的Y轴中,因为我们设置只绕着Y轴旋转。
同理设置Random Scale的范围大小为0.8-2.2
然后再在之前Get Location at Distance Along Spline后面添加Make Transform节点,把设置好的rotation和scale值都连进去,最后把输出的值连入到Add Static Mesh Component的Relative Transform中,顺手勾选Manual Attachment,可以保证加载的mesh是在蓝图原点生成。
Compile并保存蓝图,然后在拖一个蓝图到场景中,点击前面的样线条点就可以拖动样线条。
拖动样线条的同时按住alt键可以生成弯曲连续样线。
在属性面板还可以调节之前我们设置的变量个mesh之间的中间距离Spacing,随机旋转值Random Rotation,随机大小Random Scale。
这种功能比较适合做一些和电线杆类似有规律摆放的物件。
来源:Thepoly公众号
上一篇 Unreal超级水体系统介绍
热门课程
专业讲师指导 快速摆脱技能困惑相关文章
多种教程 总有一个适合自己专业问题咨询
你担心的问题,火星帮你解答023年以来,在版号审批、出海政策等影响下,新品游戏大量涌现,这也为游戏市场带来了一些新变量、新现象。
学习游戏开发班可以帮助游戏爱好者从零基础成为游戏开发专家,掌握全面的游戏开发技能。
火星时代教育为您提供专业的界面设计实战班,在实践中掌握界面设计的核心技巧和最新趋势,成为优秀的UI设计师。
了解UI交互设计培训的最佳选择,比较不同培训机构的优势和特点。
火星时代教育为您推荐专业的学影视后期培训机构,提供高质量的培训内容及资深导师指导,助您成为优秀的影视后期剪辑师或合成师。
火星时代教育是一家专注于交互设计培训的机构,为学员提供专业的交互设计培训课程,并帮助他们成为优秀的交互设计师。
1. 打开微信扫一扫,扫描左侧二维码
2. 添加老师微信,马上领取免费课程资源
同学您好!