To achieve the top-down floating effect of a button, we usually think of animation and Itween. This time we'll use trigonometric functions to implement
Code implementation:
usingUnityengine;usingSystem.Collections; Public classDemo:monobehaviour {Private floatRadian =0;//radians Public floatPerradian =0.02f;//increases the radian, can control the speed that moves up and down Public floatRadius =0.2f;//The range of motion that can control the distance moving up and down PrivateVector2 Oldpos; PrivateRecttransform RT; Public voidStart () {RT= transform. Getcomponent<recttransform>(); Oldpos=rt.anchoredposition; } Public voidUpdate () {Radian+=Perradian; //Matif.cos incoming radians, return is the adjacent edge: the ratio of the hypotenuse, the value between 1 and 1 multiplied by the motion range = The maximum radius that the button moves up or down floatDY = Mathf.cos (radian) *radius; Rt.anchoredposition= Oldpos +NewVector2 (0, DY); }}
Use trigonometric functions to float buttons up and down