添加链接
link之家
链接快照平台
  • 输入网页链接,自动生成快照
  • 标签化管理网页链接
腾讯云首页Banner立体动效教程

腾讯云首页Banner立体动效教程

大家好,我是 灰色执照 ,之前给大家带来了阿里云首页的粒子效果教程,也就是这个:

你可以访问下面链接来查看效果


今天,我再来教大家制作腾讯云首页Banner上的立体动效。也就是类似这种:

腾讯云首页https://cloud.tencent.com/


比较遗憾的是:当我做好这个教程,写完文章以后。腾讯云居然改版了,首页上的图标换了几个。不过没有关系,我们主要教的是大家制作的方法。这是我最终做好的效果:

你可以访问这个网站来查看我制作好的最终效果


整个教程,我是通过C4D来完成的建模,利用Three.js来编写的加载模型代码。为了让大家有更好的学习体验,我还特意录制了5个很短的视频教程,帮助大家学习。如果你有条件,可以去B站观看视频教程:


视频教程1 《日常前戏》


视频教程2 《立体图标拆分过程 & 代码实现原理》


视频教程3 《C4D建模球体》 这个教程里面还讲解了大家交付模型时候要注意的事项


视频教程4 《C4D建模两侧螺旋线》


视频教程5 《C4D建模底座》


如果你正在办公场所,不方便看视频,你可以查看我接下来的图文教程,它同样非常详细。


需要特别说明的是: 本教程和腾讯没有任何关系,教程只是我自己分析琢磨他们的制作过程和思路。 本人也并不腾讯工作,它的实际制作过程、代码编写方式很可能和我大相径庭。我只能根据我自己的知识和理解模拟出类似的效果。


建模部分和代码没有参考过任何地方,100%我原创。我只是大胆的想、勇敢的试,最终做出了“类似”的效果。兄弟们啊,还是那句老话: 只要胆子大,女鬼咱也能让她放产假!希望今后你遇到喜欢的女孩,也能够大胆的追,勇敢的表白。


好像跑题了,我们还是开始教程吧。不过反正都跑题了,此情此景,我在开始教程前突然想吟诗一首:

效果做得好,不能落地它始终是飞机稿;
跟着灰哥搞,开发小哥再不说实现不了;
关注gz号,设计和代码咱一起全都教;
做梦也会笑,平凡人生能遇到灰色执照。


好了,现在真正的、正式的、开始我们的教程(严肃脸)



教程第一部分:立体图标拆分过程

在教程开始之前,我们先来拆解一下整个模型与动效还有代码的过程。分解后有利于你有一个清晰的思路。

首先,我们肯定是需要利用C4D或者Blender来制作这样一个像是翻页感觉的球体。只需要给它加上浅蓝和深蓝色两种材质即可。导出OBJ格式的模型后,利用代码写一个X轴不停旋转即可。完成上述步骤后,球体在Y坐标上再写一个大约30度左右的旋转,让它倾斜。



球体弄好后,我们直接用代码写一个圆环,在Three.js里面你只要new 一个TorusGeometry对象即可。同时,你在用代码新建一个小球体。小球的x坐标为Math.cos(角度) + 圆环的半径。小球的y坐标为Math.sin(角度) + 圆环的半径。因为角度随着时间不停的增加,这样小球就围绕圆环转起来圆圈。


现在的转圈还是在一个平面上的,把圆环和小球加入到一个组里面,让整个组的y轴旋转30度左右即可。


球和圆环都弄好后,就剩下两侧的螺旋线了。C4D里面刚好有螺旋线功能,你通过扫描一个圆圈,可以制作这样的模型(详情见后面的教程)。螺旋线制作一个即可,通过代码克隆一个,移动到对面并且旋转180度即可。最后,你还要给它做一个底座(基本可以理解成几个立方体的组合)



模型全部弄好后,就剩下灯光了。这里的灯光因为会移动,所以并不是C4D完成的,你也不要考虑什么渲染啥的。因为Three.js里面可以直接新建灯光。

灯光就是上下两盏,上面的灯光循环左右移动,看起来整体效果就非常的丰富了。



最后的最后,就是鼠标的跟随特效了。这个部分的构思非常的巧妙,详情看下图:



教程第二部分:C4D建模球体

新建一个圆弧


将圆弧弄成180度,这样就是一个半圆了。把方向设置成平躺在地面上。


选中圆弧,对它C一下(键盘上的字母C),这样他就是一个可以编辑的线条了。用钢笔工具连接两个端点。


新建一个“放样”,把圆弧放到放样的子节点。然后设置数量为16左右。这样,圆弧就从原来的线条变成了一整个面。


选中圆弧,找到弧线上左边的点向下移动,右边的点向上移动。


弧线中间的锚点移动一下两侧的手柄。让它变成一个圆滑的状态,如下图:

把圆角顶部的两个端点也稍微调整锚点,让整个圆弧更加圆滑。




你最终就得到了这样一个面:



选中放样和圆弧2个元素,右键 > 连接对象加删除。这样他们就合并成了一个整体。用选面工具选择这个整体的面,右键>挤压。这样你就得到了一个有厚度的扇形。在挤压的时候,别忘记勾选“创建封顶”。



由于这个面是弧线的,加上光照效果,很可能最终浏览器加载后会有“破面”,所以按两次k 调整为切刀,把顶部的这个面横向切分一下。你可以简单的理解成多布置一些线条在这个面上,模型就更稳定。


不停的用切刀,横向的连接两侧的平行线。最终得到如下布线效果的模型。这样带有弧线的模型就非常稳定了,不会再出现一些破面等情况。


选择整个模型让它向左侧移动一小段距离,选中比例尺,让模型的起点变成偏左。这样做的目的就是为了克隆多个的时候大家都有一段空隙,模型不会重合到一起。

新建一个克隆,把做好的模型拖成它的子节点。


把克隆调整成放射状,数量调整成12个,半径设置成0。通过这三个步骤,球体就做好了。


旋转一下来看看,这就是成品了,是不是很简单。


双击材质面板,弄两个材质球。一个蓝色,一个浅蓝色。



材质其实非常简单,就是加了个颜色、透明度和一点反射而已,都是我随手调的。除了颜色不一样,材质球其它参数几乎一样。




选中克隆对象,C一下,这样模型就变成了12个扇形。把蓝色材质给1、3、5、7、9、11。浅色材质给2、4、6、8、10、12


这样,整个球体就做好了。文件 > 导出OBJ格式即可。导出的时候,连材质一起勾选上。


这就是导出结果了。obj是模型,只有314KB,mtl就是材质,只有1KB。利用three.js加载它们比加载一张png图片还小,非常的完美!球体的模型,我们就100%做完了。怎么样,非常的简单吧?




教程第三部分:螺旋线模型

新建一个螺旋



调整到侧面方便你观察


调整一下起始的半径,把一端调整成0,结束角度可以设置螺旋转几圈,你可以根据需要,转个2~3圈。高度设小一点,免得线条整体太长。


复制一个一模一样的,然后旋转180度。


将2个都选中,右键 >连接对象+删除。这样它们就合并成了一个整体。


利用选点工具,拉框选择靠在一起一侧的点,删掉它们。


删掉选中的点后,自己用钢笔工具绘制一个点,把它们连接起来。


试着调整它的锚点和位置,让新加入的这个点看起来过渡自然。



你可以使用平滑样条工具让这个曲线更加圆滑一点儿。




接下来我们新建一个小圆环。




再新建一个扫描,把圆环和螺旋线都拖入到扫描的子节点里面去。圆环一定要在顶层。




这样,螺旋线就基本做好了,你稍微调整一下圆环的半径、分段就可以了。把刚才的浅色材质复制一个,随便调整一下,加上去就100%完成了。





教程第四部分:制作一个底座


新建一个圆柱




使用选面工具,把最顶部的面全部选中。




按下字母T,执行缩放,把这个面缩小




右键,挤压。把这个面向上挤压出一个新的高度。




按字母T,再次缩放。向里面缩放一小段距离。又形成了一个斜面。




通过这样的方式,不停的缩放,挤压,缩放,挤压。就可以做出不同的层次了。




底部,你也可以通过同样的方式,选择底部那个面,做出一些变化:




这样,一个底座就做好了。随便给它添加一个材质即可。


当然,这只是我随手做的。你可以根据需要,或者完全模仿腾讯云去调整成你想要的样子。


最后,你把以上3个模型全部导出OBJ格式,然后把他们的材质都放在一起,等于是3个OBJ加一个mtl格式的材质,交给程序员就完成了。


再次强调一下,我们的模型一定要想办法弄得足够小。类似于复杂的细分曲面之类的效果我们是不可能去尝试的。因为那样会让模型变大,做出网页加载不出来的东西,没有意义。今天的教程就不教大家写代码了,因为代码都是简单的旋转动画,没什么好讲解和学习的。关键的鼠标跟随效果,我也已经在前面给大家分析过原理了。


目前为止,我已经教会了大家阿里三维图标动效、阿里粒子效果、腾讯云立体动效。如果你还看到了什么有意思的效果,想学习,可以在微信群给我留言~制作这样的教程非常的辛苦,需要自己挖空心思去想,去尝试,希望你可以给我点个

发布于 2022-03-03 11:17