左边的两个模型是使用scale缩放的物体,最右边的是用shader移动顶点的效果。
先把顶点坐标转成时间坐标,如果在规定的 范围内的话,就需要修改顶点的位置
float4 changePosistion(float4 v){
float4 world = mul(unity_ObjectToWorld, v);
// >y最低点 开始需要移动顶点位置
if(world.y>_EffectRange.x){
//在范围中
if(world.y<_EffectRange.y){
world.y = world.y + (world.y - _EffectRange.x)*_AddScaleY;
}else{
world.y += _EffectRange.y*_AddScaleY;
}
}
return mul(unity_WorldToObject, world);
}
添加addshadow,也修改影子
就完成了