In this episode, we're going to get some movement happening. So the first thing we want to do is create a new game object. And we're going to create a 3d object and we're going to create a sphere. Call this sphere file and we'll send to the player. So we double click, you'll see that the player is right inside the ground. And that's because our ground is actually at the same location and it's actually the same hot.
So if we actually grabbed the ground, drop down the one position down to negative one, because that'll make everything perfect. Cool. So we have a player at 000 and our player has a mesh renderer which makes it look like that. It has a sphere Collider. And just to make things pretty, let's create a new material, material and coolest player hemp, I just cannot stand that, that white color. And let's go to the sphere and go over to material and drag the play a temp, color.
Let's change it to a color. Like let's just say, that's pretty gross, let's say, yeah, red, red works, you can see pretty clearly. And then we're going to grab our player, you'll see it has a mesh render has a sphere Collider. And if we press play, the game does nothing. We haven't told him to do anything. So that's what we would expect.
So if that's what's happening for you, hey, everything's working. Well. If we go to console, we should have nothing here. Oh, we actually have two errors. The reference script unknown is is on the behavior is missing. And a reference script on behavior game object.
Okay, so let's go over to our main camera, let's just, oh, that's the script that we deleted and it's still trying to access that so which means remove that cool Good to see the debugging process. Sometimes we press play again. And go back to sorry, get out of play mode and remove component and then press play. Cool. Now console should be absolutely free and clear. So we have our player and our players just sit there, nothing happens.
And that's because we haven't told the character do anything. If we drag the character up, let's say a little bit, press play. Nothing happens either because we haven't actually told you in elite that we want gravity to affect this game object. And it's really easy to do that inside the Unity we can just add something called a rigidbody. So if we click on Add Component, and click rigidbody no rigidbody 2d, make sure it's rigidbody and would click use gravity and mass and just just all the exact same settings that comes as default and we press play BAM down till it hits this cloud of dust on the ground, and it doesn't move any further. Awesome.
Now we have physics working in a game now given the not amazing physics, but still physics nonetheless. So now we want to go over to our Scripts folder, we want to right click, I'm going to create a new C sharp script, I'm going to call this player with a capital P. best best practice to name your scripts with a capital because that's the class name and classes usually start as a capital. This is just good scripting practices. And so once we've created a script called player, we want to double click to open it in Visual Studio and we can get to programming. Okay, so the first thing we want to do is just get the player's move. So to zoom in a little bit, and we probably don't need the start, this will just leave the start and we'll go into the update.
And what we want to do is we want to actually access this plan that we want to access the component rigidbody on the player and We want to tell liberate your body to move it in a certain direction, we want to add a certain force in a certain direction. So if we go back over here, we can actually say get to component. Inside these two little triangles, I forgot what they called a rigid body. parentheses, close parentheses, dot velocity. So we want to just choose what the velocity is. And we just want to equal that to vector three dot forward.
And we want to times that by let's say 1000. And we want to times that by time dot delta time. So what's happening here is we're getting a component that this script is attached to. We were accessing the rigid body. We're accessing accessing the velocity on The rigid body, and we're equaling that to a new vector three dot forward. So that just means that's a direction.
So we're saying the velocity equals this direction. And we're timesing that direction by 1000. And then we're timesing. That by time a Delta Time, time, delta time is the time passed since the last frame, if you want something to move at a constant velocity, speed, for instance, multiply that by time to double time, so you get consistent results. If we then save the script, and we go back over to unity, we press play, nothing will happen. Well, I'll play will fall to the ground.
But if we actually and the reason nothing happened is because the script is actually attached to the game object. So what we can do is we can actually click on the player script and just drag it over. Or we could add component and we could type in player and you'll see our scripts pop up there. Either one works just fine. And let's get App Player. Let's drag them back down to zero.
Let's press play, and it should move forward. Awesome. Now moves for quite fast. And we can't control it yet. But in this episode we have looked at how to get a script attached to a game object and we've worked with and we've got that game object to move forward in at a constant rate. And we've added some physics to that.
That game of resort falls down from the sky. So everything is going going well in the next episode, we'll touch on how to control the ball and its direction.