UE4+制作手柄画笔

虚幻引擎:4.22

VS:2017

1.画布材质

Alpha纹理用来存储画笔的痕迹(一会儿的手柄将会通过UV设置Alpha),并用PaintColor(自己选的颜色)绘制在画布上。

 2.画笔材质

画笔材质相对来说,会稍微复杂点,主要是用Position(手柄指向)来获取当前射线所在的UV位置,并绘制相应的PaintTex也就是我们自己所设置的画笔纹理到目标纹理上,这里的Size是用来控制PaintTex的大小。

 3.画笔纹理

因为UE4对图片都有相应的Texture设置,这里也需要对纹理进行相应的设置。不然纹理会是平铺状态,这样子就不符合我们的需求了。

 4.墙面Actor

创建蓝图,在下面添加一个Cube,并创建了开始的画布材质赋值给Cube,这里还可以为其设置自己喜欢的画笔颜色。

 然后我们还需要为这个蓝图创建一个RenderTarget,用来存储画笔的痕迹,并设置为当前画布材质的Alpha纹理 。

 5.手柄画笔蓝图

用UE4自带的第一人称模板,通过手柄的射线来获取画布模型的UV,再通过画布材质渲染到RenderTarget上。
(1)在构造方法中,创建画笔材质,并设置其笔刷大小与纹理。

 (2)设置一个bool变量,表示是否扣右手扳机。

(3)创建射线。

射线检测是否是之前的画布蓝图,并获取UV通过画笔材质绘制到画布蓝图的RenderTarget上,这样你的画笔就已经实现了。

6.注意事项

 在UE4的ProjectSettings中需要打开Support UV From Hit Results,不然Find Collision UV方法将无法执行。

7.附上github工程

https://github.com/zhangmei126/Painting

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值