立体空间 ( 三度空间 )
这篇文章会介绍,如何在 Scratch 里使用重复无限次、逻辑判断、数学计算、尺寸设定...等积木,实作一个简单的立体空间效果,越靠近角色,则角色尺寸愈大,越远离角色,则角色尺寸越小。
背景设定
点选“选个背景”,在舞台加入一张立体空间的背景 ( 在默认“太空”类别中 )。
积木程序原理
编辑当绿旗被点击时,使用重复无限次积木,让猫咪角色定位在鼠标的位置 ( 跟随鼠标移动 )。
从左侧积木清单建立一个变数 size。
设定 size 为“x 座标的绝对值 x 0.7”,并将尺寸设定为 size 大小。
舞台中心点的 x 座标为 0,左右两侧分别是 -240 和 240,使用绝对值会让数值为正,乘以 0.7 是避免尺寸太大。
点击绿旗执行后,用鼠标在舞台左右移动,会发现猫咪越往中心靠近,尺寸越小,越往左右两侧移动,尺寸越大。
不过如果只有水平方向 ( x 轴 ),会发现猫咪不论在上方或下方,靠近中间都会变小,为了修正这个问题,必须加入垂直方向 ( y 轴 ) 的判断。
- 加入“如果...那么”积木,判断如果“y 座标 x 1.33 的绝对值”大于“x 座标的绝对值”,就以“y 座标 x 1.33 的绝对值”为主。
- 加入第二个“如果...那么”积木,判断如果“x 座标的绝对值”大于“y 座标 x 1.33 的绝对值”,就以“y 座标 x 1.33 的绝对值”为主。
因为 Scratch 舞台比例为 480x360 的 4:3 比例,所以将 y 座标乘以 1.33 ( 4 除以 3 ),就会得到和 x 座标接近的数值。
完成效果
完成后,点击绿旗,用鼠标在舞台上移动,就会看见立体空间的猫咪,越靠近边缘越大 ( 感觉靠近屏幕 ),越靠近中心越小 ( 感觉远离屏幕 )。
范例解答
范例解答:立体空间 ( 三度空间 )
延伸练习
如果已经熟悉了立体空间 ( 三度空间 )的原理,还可以尝试更多好玩的作法:
- 尝试改变猫咪的“亮度”,让立体空间效果更明显。( 解答 )
微信扫码关注
抖音扫码关注