Progress Page - MATF-RG18/RG42-tank-na-autoputu GitHub Wiki

Welcome to the RG42-tank-na-autoputu wiki!

University project for Computer Graphics course.
Done in C with addition of GL/glut.h library.
University of Mathematics, Belgrade, Serbia.
Aleksandar Dimitrijevic 509/2017

Week 1 report:

Setting stage:

Road 
Main object(Tank-Cube as base)
Goal objects(Cars-cube as base)
Camera was set on how it will be during whole project most likely, unless small changes.
Generic colors, just to have visual of everything.  
Mostly worked on project basics, but more is to come during week 2.  

Plan for next week:

During next week, plan is to continue building up on basics.
To implement car movement, tank movement. To try to make it to be more realistic.  
Random car spawn points on beginning of road(most likely couple of spots), 
speed of car movement(on keyboard command).    
To fix code and organize it better.  
Adding light would be another goal for this week.  
Fix colors so they are not so generic.  

State of game during week 1:

Week 1: https://imgur.com/8EutRJ0

Week 2 report:

This week work:

During week 2 a lot code fixing was done.  
Had to reorganize code into structures that will reflect each thing in game as specific object.
So had to reorganize a lot functions to reflect those structs.
Added endless road and constant car spawn.
Added car-tank collision and counter. For now its just printing counter at end of game.
Changed colors a bit, still not happy with it, but need to do proper lightning.
Fixed car spots, fixed tank spots, adjusted camera to follow tank instead fixated.
Cars and tank are moving. Right now, its hard to notice that tank is moving, because no side objects.

Plan for next week:

Didn't do lights yet, so next week light should be a goal.
Possibly more fixes in code organization.
Fix some of TODO comments.
Try to make collision effects.
Try to show that tank is actually moving - side objects, shadows will help.
Delta movement of cars/tank to make it seem more real than what it is now. 
I want pixel by pixel movement instead of "teleport" from spot to spot.
Try to add text on screen with how many cars were crushed.

State of game during week 2:

Week 2: GIF state of game

Week 3 report:

This week work:

During week 3 more of code fixing was done.
Added base model of box, so its base model for all cars, tank etc instead of individually.
It will depend on future plans and ideas on how this will be used or will it be rewritten.
Added lighting functions that are coloring everything in world. For now ill keep coloring with light. 
Also removed old Color3f functions.
Added score of crushed vehicles on top of screen as bitmap.
Didn't do everything from last week wishes.

Plan for next week:

Plan here is for next week, but also weeks after.
Possibly more fixes in code organization.
Add sun, moon and stars, that will rotate in day/night sequence.
Need to add different light for those 3 objects.
Need to fix source of light on that sun as well-Compare with current situation and fix current lighting then.
Fix some of TODO and check ? comments.
Probably work for week 4:
Try to show that tank is actually moving - side objects. 
Delta movement of cars/tank to make it seem more real than what it is now. 
I want pixel by pixel movement instead of "teleport" from spot to spot.
Try to make collision effects.

State of game during week 3:

Week 3: https://imgur.com/a/27OhSNO

Week 4 report:

This week work:

Added 1 more layer and barrel to tank. It will be improved in upcoming weeks.
Added side road texture. Will think about what other objects will be like, will I add more textures or no.
Added sun rotating around road, with proper lights. Fixed day/night swap according to it.
Proper tank movement.
AABB collision of tank-cars.
Fixed some TODO comments. Got in new ones, that don't really need fixing, but in my preference they will be fixed eventually.

Plan for next week:

Add on mouse rotation of top part of tank.
Add bullets shooting towards cars and killing cars.
Add ways to lose game. As mines on road or similar.
Maybe add some more side road objects for sake of better look.
If time allows, fix TODO comments.

State of game during week 4:

Week 4: Clone project to try game.

Week 5 report:

This week work:

On mouse turret rotation.
On mouse shooting bullet. Only 1 as planned(if more, game will be easy). Bullet flies in direction of where turret is pointing and not towards mouse(also as planned).
AABB collision of bullet and cars.
Added shields for cars that are either not there, half visible, or fully visible(way to lose game).
Fixed some TODO comments, have new ones. 
Fixed how light works around objects.

Plan for next week:

Side objects to make game look nicer. Maybe some lamps with direction light.
Fix car spawn points in some way. Its not terrible now, but can be better.
Some shading maybe.
Fix any TODO comments that are left.
Refactor some functions into one with different parameters, instead having one function for each thing individually.
Any potential idea that comes up to make game better.

State of game during week 5:

Week 5: Clone project to try game.

Week 6 report:

This week work:

Worked on cleaning code.
Added fences on side of road.
A lot of functions reformatting.
A lot of code reformatting.
Fixed car spawns. 
Some small lighting work.

State of game during week 6:

Week 6: Clone project to try game.