@@ -46,7 +46,7 @@ int main(void)
4646 //--------------------------------------------------------------------------------------
4747 const int screenWidth = 800 ;
4848 const int screenHeight = 450 ;
49-
49+
5050 InitWindow (screenWidth , screenHeight , "raylib [core] example - 2d camera" );
5151
5252 Player player = { 0 };
@@ -60,7 +60,7 @@ int main(void)
6060 {{ 250 , 300 , 100 , 10 }, 1 , GRAY },
6161 {{ 650 , 300 , 100 , 10 }, 1 , GRAY }
6262 };
63-
63+
6464 int envItemsLength = sizeof (envItems )/sizeof (envItems [0 ]);
6565
6666 Camera2D camera = { 0 };
@@ -77,36 +77,36 @@ int main(void)
7777 UpdateCameraEvenOutOnLanding ,
7878 UpdateCameraPlayerBoundsPush
7979 };
80-
80+
8181 int cameraOption = 0 ;
8282 int cameraUpdatersLength = sizeof (cameraUpdaters )/sizeof (cameraUpdaters [0 ]);
83-
83+
8484 char * cameraDescriptions [] = {
8585 "Follow player center" ,
8686 "Follow player center, but clamp to map edges" ,
8787 "Follow player center; smoothed" ,
8888 "Follow player center horizontally; updateplayer center vertically after landing" ,
8989 "Player push camera on getting too close to screen edge"
9090 };
91-
91+
9292 SetTargetFPS (60 );
9393 //--------------------------------------------------------------------------------------
9494
9595 // Main game loop
96- while (!WindowShouldClose ())
96+ while (!WindowShouldClose ())
9797 {
9898 // Update
9999 //----------------------------------------------------------------------------------
100100 float deltaTime = GetFrameTime ();
101-
101+
102102 UpdatePlayer (& player , envItems , envItemsLength , deltaTime );
103103
104104 camera .zoom += ((float )GetMouseWheelMove ()* 0.05f );
105-
105+
106106 if (camera .zoom > 3.0f ) camera .zoom = 3.0f ;
107107 else if (camera .zoom < 0.25f ) camera .zoom = 0.25f ;
108-
109- if (IsKeyPressed (KEY_R ))
108+
109+ if (IsKeyPressed (KEY_R ))
110110 {
111111 camera .zoom = 1.0f ;
112112 player .position = (Vector2 ){ 400 , 280 };
@@ -125,12 +125,12 @@ int main(void)
125125 ClearBackground (LIGHTGRAY );
126126
127127 BeginMode2D (camera );
128-
128+
129129 for (int i = 0 ; i < envItemsLength ; i ++ ) DrawRectangleRec (envItems [i ].rect , envItems [i ].color );
130130
131131 Rectangle playerRect = { player .position .x - 20 , player .position .y - 40 , 40 , 40 };
132132 DrawRectangleRec (playerRect , RED );
133-
133+
134134 EndMode2D ();
135135
136136 DrawText ("Controls:" , 20 , 20 , 10 , BLACK );
@@ -140,7 +140,7 @@ int main(void)
140140 DrawText ("- C to change camera mode" , 40 , 100 , 10 , DARKGRAY );
141141 DrawText ("Current camera mode:" , 20 , 120 , 10 , BLACK );
142142 DrawText (cameraDescriptions [cameraOption ], 40 , 140 , 10 , DARKGRAY );
143-
143+
144144 EndDrawing ();
145145 //----------------------------------------------------------------------------------
146146 }
@@ -157,35 +157,35 @@ void UpdatePlayer(Player *player, EnvItem *envItems, int envItemsLength, float d
157157{
158158 if (IsKeyDown (KEY_LEFT )) player -> position .x -= PLAYER_HOR_SPD * delta ;
159159 if (IsKeyDown (KEY_RIGHT )) player -> position .x += PLAYER_HOR_SPD * delta ;
160- if (IsKeyDown (KEY_SPACE ) && player -> canJump )
160+ if (IsKeyDown (KEY_SPACE ) && player -> canJump )
161161 {
162162 player -> speed = - PLAYER_JUMP_SPD ;
163163 player -> canJump = false;
164164 }
165165
166166 int hitObstacle = 0 ;
167- for (int i = 0 ; i < envItemsLength ; i ++ )
167+ for (int i = 0 ; i < envItemsLength ; i ++ )
168168 {
169169 EnvItem * ei = envItems + i ;
170170 Vector2 * p = & (player -> position );
171171 if (ei -> blocking &&
172- ei -> rect .x <= p -> x &&
172+ ei -> rect .x <= p -> x &&
173173 ei -> rect .x + ei -> rect .width >= p -> x &&
174174 ei -> rect .y >= p -> y &&
175- ei -> rect .y < p -> y + player -> speed * delta )
175+ ei -> rect .y < p -> y + player -> speed * delta )
176176 {
177177 hitObstacle = 1 ;
178178 player -> speed = 0.0f ;
179179 p -> y = ei -> rect .y ;
180180 }
181181 }
182-
183- if (!hitObstacle )
182+
183+ if (!hitObstacle )
184184 {
185185 player -> position .y += player -> speed * delta ;
186186 player -> speed += G * delta ;
187187 player -> canJump = false;
188- }
188+ }
189189 else player -> canJump = true;
190190}
191191
@@ -200,7 +200,7 @@ void UpdateCameraCenterInsideMap(Camera2D *camera, Player *player, EnvItem *envI
200200 camera -> target = player -> position ;
201201 camera -> offset = (Vector2 ){ width /2.0f , height /2.0f };
202202 float minX = 1000 , minY = 1000 , maxX = -1000 , maxY = -1000 ;
203-
203+
204204 for (int i = 0 ; i < envItemsLength ; i ++ )
205205 {
206206 EnvItem * ei = envItems + i ;
@@ -209,10 +209,10 @@ void UpdateCameraCenterInsideMap(Camera2D *camera, Player *player, EnvItem *envI
209209 minY = fminf (ei -> rect .y , minY );
210210 maxY = fmaxf (ei -> rect .y + ei -> rect .height , maxY );
211211 }
212-
212+
213213 Vector2 max = GetWorldToScreen2D ((Vector2 ){ maxX , maxY }, * camera );
214214 Vector2 min = GetWorldToScreen2D ((Vector2 ){ minX , minY }, * camera );
215-
215+
216216 if (max .x < width ) camera -> offset .x = width - (max .x - width /2 );
217217 if (max .y < height ) camera -> offset .y = height - (max .y - height /2 );
218218 if (min .x > 0 ) camera -> offset .x = width /2 - min .x ;
@@ -224,11 +224,11 @@ void UpdateCameraCenterSmoothFollow(Camera2D *camera, Player *player, EnvItem *e
224224 static float minSpeed = 30 ;
225225 static float minEffectLength = 10 ;
226226 static float fractionSpeed = 0.8f ;
227-
227+
228228 camera -> offset = (Vector2 ){ width /2.0f , height /2.0f };
229229 Vector2 diff = Vector2Subtract (player -> position , camera -> target );
230230 float length = Vector2Length (diff );
231-
231+
232232 if (length > minEffectLength )
233233 {
234234 float speed = fmaxf (fractionSpeed * length , minSpeed );
@@ -241,34 +241,34 @@ void UpdateCameraEvenOutOnLanding(Camera2D *camera, Player *player, EnvItem *env
241241 static float evenOutSpeed = 700 ;
242242 static int eveningOut = false;
243243 static float evenOutTarget ;
244-
244+
245245 camera -> offset = (Vector2 ){ width /2.0f , height /2.0f };
246246 camera -> target .x = player -> position .x ;
247-
247+
248248 if (eveningOut )
249249 {
250- if (evenOutTarget > camera -> target .y )
250+ if (evenOutTarget > camera -> target .y )
251251 {
252252 camera -> target .y += evenOutSpeed * delta ;
253-
254- if (camera -> target .y > evenOutTarget )
253+
254+ if (camera -> target .y > evenOutTarget )
255255 {
256256 camera -> target .y = evenOutTarget ;
257257 eveningOut = 0 ;
258258 }
259- }
260- else
259+ }
260+ else
261261 {
262262 camera -> target .y -= evenOutSpeed * delta ;
263-
264- if (camera -> target .y < evenOutTarget )
263+
264+ if (camera -> target .y < evenOutTarget )
265265 {
266266 camera -> target .y = evenOutTarget ;
267267 eveningOut = 0 ;
268268 }
269269 }
270- }
271- else
270+ }
271+ else
272272 {
273273 if (player -> canJump && (player -> speed == 0 ) && (player -> position .y != camera -> target .y ))
274274 {
@@ -278,7 +278,7 @@ void UpdateCameraEvenOutOnLanding(Camera2D *camera, Player *player, EnvItem *env
278278 }
279279}
280280
281- void UpdateCameraPlayerBoundsPush (Camera2D * camera , Player * player , EnvItem * envItems , int envItemsLength , float delta , int width , int height )
281+ void UpdateCameraPlayerBoundsPush (Camera2D * camera , Player * player , EnvItem * envItems , int envItemsLength , float delta , int width , int height )
282282{
283283 static Vector2 bbox = { 0.2f , 0.2f };
284284
0 commit comments