Camera

9 minutes
Share the link to this page
Copied
  Completed
You need to have access to the item to view this lesson.
One-time Fee
$99.99
List Price:  $139.99
You save:  $40
€93.84
List Price:  €131.38
You save:  €37.54
£80.95
List Price:  £113.34
You save:  £32.38
CA$137.04
List Price:  CA$191.86
You save:  CA$54.82
A$154.99
List Price:  A$216.99
You save:  A$62
S$136.27
List Price:  S$190.79
You save:  S$54.51
HK$783.50
List Price:  HK$1,096.94
You save:  HK$313.43
CHF 91.19
List Price:  CHF 127.67
You save:  CHF 36.48
NOK kr1,101.37
List Price:  NOK kr1,541.96
You save:  NOK kr440.59
DKK kr700.13
List Price:  DKK kr980.21
You save:  DKK kr280.08
NZ$169.21
List Price:  NZ$236.90
You save:  NZ$67.69
د.إ367.23
List Price:  د.إ514.14
You save:  د.إ146.90
৳10,965.37
List Price:  ৳15,351.96
You save:  ৳4,386.58
₹8,334.23
List Price:  ₹11,668.26
You save:  ₹3,334.02
RM477.95
List Price:  RM669.15
You save:  RM191.20
₦125,683.43
List Price:  ₦175,961.83
You save:  ₦50,278.40
₨27,806
List Price:  ₨38,929.52
You save:  ₨11,123.51
฿3,703.32
List Price:  ฿5,184.80
You save:  ฿1,481.48
₺3,259.92
List Price:  ₺4,564.01
You save:  ₺1,304.09
B$516.59
List Price:  B$723.25
You save:  B$206.66
R1,923.67
List Price:  R2,693.22
You save:  R769.54
Лв183.31
List Price:  Лв256.64
You save:  Лв73.33
₩137,775.97
List Price:  ₩192,891.88
You save:  ₩55,115.90
₪378.18
List Price:  ₪529.46
You save:  ₪151.28
₱5,754.62
List Price:  ₱8,056.70
You save:  ₱2,302.07
¥15,478.45
List Price:  ¥21,670.45
You save:  ¥6,192
MX$1,711.89
List Price:  MX$2,396.72
You save:  MX$684.82
QR364.36
List Price:  QR510.13
You save:  QR145.76
P1,383.88
List Price:  P1,937.49
You save:  P553.61
KSh13,448.65
List Price:  KSh18,828.65
You save:  KSh5,380
E£4,807.48
List Price:  E£6,730.67
You save:  E£1,923.18
ብር5,687.89
List Price:  ብር7,963.28
You save:  ብር2,275.38
Kz83,485.81
List Price:  Kz116,883.48
You save:  Kz33,397.66
CLP$95,253.47
List Price:  CLP$133,358.67
You save:  CLP$38,105.20
CN¥724.60
List Price:  CN¥1,014.47
You save:  CN¥289.87
RD$5,894.01
List Price:  RD$8,251.85
You save:  RD$2,357.84
DA13,445.45
List Price:  DA18,824.17
You save:  DA5,378.72
FJ$227.71
List Price:  FJ$318.80
You save:  FJ$91.09
Q777.29
List Price:  Q1,088.24
You save:  Q310.94
GY$20,903.54
List Price:  GY$29,265.80
You save:  GY$8,362.25
ISK kr14,104.58
List Price:  ISK kr19,746.98
You save:  ISK kr5,642.40
DH1,013.18
List Price:  DH1,418.50
You save:  DH405.31
L1,782.83
List Price:  L2,496.04
You save:  L713.20
ден5,776.11
List Price:  ден8,086.79
You save:  ден2,310.67
MOP$806.39
List Price:  MOP$1,128.98
You save:  MOP$322.58
N$1,907.39
List Price:  N$2,670.43
You save:  N$763.03
C$3,677.32
List Price:  C$5,148.40
You save:  C$1,471.07
रु13,326.11
List Price:  रु18,657.10
You save:  रु5,330.98
S/368.16
List Price:  S/515.44
You save:  S/147.28
K379.71
List Price:  K531.61
You save:  K151.90
SAR375.04
List Price:  SAR525.07
You save:  SAR150.03
ZK2,580.25
List Price:  ZK3,612.45
You save:  ZK1,032.20
L466.96
List Price:  L653.76
You save:  L186.80
Kč2,370.96
List Price:  Kč3,319.44
You save:  Kč948.48
Ft36,978.60
List Price:  Ft51,771.52
You save:  Ft14,792.91
SEK kr1,088.71
List Price:  SEK kr1,524.24
You save:  SEK kr435.53
ARS$87,217.91
List Price:  ARS$122,108.57
You save:  ARS$34,890.65
Bs692.87
List Price:  Bs970.05
You save:  Bs277.17
COP$390,680.46
List Price:  COP$546,968.27
You save:  COP$156,287.81
₡50,009.58
List Price:  ₡70,015.41
You save:  ₡20,005.83
L2,466.51
List Price:  L3,453.22
You save:  L986.70
₲740,348.57
List Price:  ₲1,036,517.61
You save:  ₲296,169.04
$U3,852.35
List Price:  $U5,393.45
You save:  $U1,541.09
zł405.43
List Price:  zł567.62
You save:  zł162.18
Already have an account? Log In

Transcript

OK, so to get the camera movement happening, it's actually quite simple. So where we left off is when we play the game, our ball moves forward, we can move left and right with the controls the keyboard, and we can also do it on mobile. And but the camera doesn't actually follow the player. Now, this is obviously a problem. So there are a few ways we can handle this, we could actually just drag the play out. We could just start drag the camera and nested within the player, press play.

And it does something similar to that. And of course, we could combat that with code or just you know, make it you know, you could do some other stuff, but we're not going to do that. So we're just going to understand, we could go to Window, we've got a package manager, and we could actually click on all and we could download a package that there might even be included in your version of you leave here if you're watching this feature called cinema machine. So the machine used to be a paid actor. In the Asset Store, but now it is free for all unity developers because Unity has bought out the program because it was such a good plugin. It is the bee's knees if you want to make a camera for a 3d game, like God of War cinema machine if you want to make a game like Mario, and you need a camera for just a simple 2d game like that cinema machine, if you want a camera for a game like Gears of War, it shakes and or it looks really awesome.

It has some really cool cutscenes cinema sheen. It is extremely impressive and also extremely free, which is sweet. We could install that and if we wanted to, but for what we're doing, I don't actually think we need this much like grunt This is like putting a VA engine on a say tricycle. You don't really need it. Because all we're doing is moving the camera in one direction where it's not going to be doing anything else and it's actually really simple to do that. So we're going to do things the old fashioned way cuz I It'll also show some really cool some some really basic coding techniques that may help to understand things a little bit better.

So we're going to go over to our Scripts folder, we're going to right click, we're going to create a new C sharp script. And we're going to call this camera follow. They're gonna open up this. So there's a few things we need. The first thing we need is, we need to tell the script what we're trying to follow. So we're actually trying to follow the player.

And how do we know where the player is? Well, we know where the player is from the players transform position. So right now it's at 00, negative 41 45.1. Right? So we need to get that information. So we need a variable that can help us find information.

So we can just write public game object. So we're creating a game object variable. I'm just gonna call it player We don't need a stop method. So we can just get rid of this. don't even need this line of code here. It's just a comment, make our code extra lane.

And we're going to change update to late update, which I find works a little bit better for things like cameras, it's basically happens after update is called late update gets called. So we just go into another big one big long line of code. But hopefully this one isn't as confusing. It's very similar to the other line of code we wrote in the player script here, but it's just a little bit different, because we're not actually clamping anything. So all we're doing is we're saying, hey, this game object, sorry, this. Yeah, well, this camera just needs to move in a certain direction.

And so we want to smoothly move from its position and is now to the players position minus a certain amount of like, you know, distance between The camera in the player. So we could run game objects dot transform dot position. So this is talking about the main cameras transform position, which right now is this, this is the vector three. And we're saying gamma transform the position, remove that the common that was a mistake equals a vector, three dot loop. Okay, once again, looping is just smooth motion from one position to another. So we need a vector three a vector three B and how long it's going to get there.

So our first vector three position is just where we are now game objects dot transform dot position. And the next place we want to be is we could just write player position. But the problem with that is, well, I'll show you actually, let's run player dot transform dot position. Time Delta time, times 100, just to get the ball rolling. Cool. So if we press play, and we go to our main camera, and we drag our camera folder script over to the camera is going to actually ask us what the hell's the player.

I don't know what this is. So then we need to actually drag the player into that section. Camera for. So now, the script knows where the what the player game object is. And it's saying, hey, make my position. Lip it so smoothly move from my position to the players position and do it at time but over time, times 10 times 100.

Sorry. So let's see what happens. Press play. Oh, that's interesting. What's going on here? Okay, if we pause it and we zoom in, you'll see The map player is here for fun.

And our camera is actually right in the middle of the player, because we've just looked to the exact middle of the sphere. So things aren't working out exactly how we want it to them. So what we actually need to do is we need to create a bit of a buffer zone between the player and the camera. So how do we do that? Let's get back over to our script. And we're going to delete all this up to the vector three dot loop, open parentheses.

And we're going to say game object, dot transform position. This is what we want to look from. And we want to look to a new vector three. And the new vector three will equal zero. on the x axis, the wax will be damaged or transformed opposition dot y. So basically, don't worry about changing anything for our Hot for the camera hot.

Don't worry about changing the camera height, just keep it what it is. And the last one is player dot game object dot transform dot position dot z. And here's the here's the tricky bit minus 10. That's a pretty good distance run. Well, I think so. So basically what that means is, let's just end sorry, we'll just finish this on the code actually.

And then put a comma there and write time, dot delta time. times 100. just seemed like a good number before. Just so just bear just is there so it speeds it up. And with the end with parentheses, close the semi colon, one line of code. Let's see how it goes. So if we press play, Cool.

So our cameras, many don't even look. Yeah, there we go, you can see our camera is actually moving, then we can move left or right. And I can it's gonna fall off the edge. But if we press play again, you'll see that the big move left and right on the screen, and things seem to be working out pretty well. So, right now, if we get the player and we put the playback at zero, and we put the camera back at, well, it can stay at that height and we put that back at zero. They're both on top of each other, but it also drag this back to negative 10.

That would, that would mean that that's exactly if I press play, it should just start rolling on from exactly where we are because you know screen Script, that's actually what we've said, we've said, make a game on character make position, sorry, let from our position. And I'll just zoom out a little bit, make a position, look to a new vector three, the x position, don't worry about it, just leave that zero. The y position, don't worry about it, leave it at the default of whatever the cameras position is. And as the position leave it at the player's position, but minus 10. So if I made this 15, it obviously go back further, if I made it five, you'd go back further and do that at a rate of time. But though time times 100 awesome.

So now we have a working game in the fact that our working movement system in that in that our player can move left and right and continue on and he won't go off the screen. Obviously, if it's falling down now, and the camera will follow him or her soon the next video we'll do a little bit of a test.

Sign Up

Share

Share with friends, get 20% off
Invite your friends to LearnDesk learning marketplace. For each purchase they make, you get 20% off (upto $10) on your next purchase.