Difference between revisions of "Erik"

From Spartacats
Jump to: navigation, search
(Week 5)
(Week 5)
Line 116: Line 116:
 
* Improved connection-failure handling.
 
* Improved connection-failure handling.
 
* The server will no longer send new update packets to a client, until the client has processed the last wave of updates.
 
* The server will no longer send new update packets to a client, until the client has processed the last wave of updates.
 +
* Fixed performance issues up until a sound has been played for the first time (cause utter lagg when mute was on), also releasing sound buffers when the sound is destroyed (unrelated).
  
 
'''Failed'''
 
'''Failed'''

Revision as of 01:43, 6 May 2013

Week 1

Goals

  • Get a basic 3d engine working.

Accomplished

  • Basic world, with a moving third and first person camera.
  • A skymap, using cube mapping.
  • Calculation/Rendering of bounding boxes and spheres based on our loaded models.
  • Rendering and loading of textures.
  • Bump mapping with Stephanie.
  • Class for reading XML settings.
  • Keyboard input, and camera movement with the mouse.

Week 2

Goals

  • Point lights.
  • Multi-threaded rendering.
  • Glow maps.
  • Specular maps.

Accomplished

  • Multiple moving point lights.
  • Glow effect with Stephanie.
  • Height map generated based on terrain objects.
  • Mouse buttons for input.
  • Calculation of normal vectors during model loading, if they are missing from the model.
  • Normalized model sizes, and centered them during model loading.

Failed

  • Had problems rendering more than 1 frame on multiple cores, and moved on to other things. Will take another stab at it at some point.
  • Didn't get around to implementing specular maps.

Next weeks goals

  • Shadows from directional lights.
  • Shadows from point lights.
  • Multi-core rendering.
  • Specular maps.
  • Write a framework for handing out the lights to the game logic (hiding the fact that there is only a finite number of lights available).
  • Prevent the camera's view of the player from being obscured by other objects.

Morale

  • Not feeling very creative right now, so I'll quote you, Geoff, "HEY, THIS IS GOING TO BE GREAT".

Week 3

Goals

  • Shadows from directional lights.
  • Shadows from point lights.
  • Multi-core rendering.
  • Specular maps.
  • Write a framework for handing out the lights to the game logic (hiding the fact that there is only a finite number of lights available).
  • Prevent the camera's view of the player from being obscured by other objects.
  • Expand the heightmap to also include "heights" in the x and z directions.

Accomplished

  • Specular maps.
  • Lighting manager.
  • Spotlights.
  • Atmospheric fog with Stephanie.
  • XZ spacial partitioning and collisions with static objects. (scrapped the x/z heightmap in favor of this due to the memory to accuracy ratio of the heightmap method).
  • Multithreaded rendering and asset loading.

Failed

  • Shadows
  • Preventing the camera's view of the player from being obscured
  • Didn't get around to trying either of the above due to the number of hours per week problem.

Next weeks goals

  • Shadows, of all kinds
  • The camera thing (mentioned twice above)
  • Volumetric lighting (if time allows, probably not)

Morale

  • C++11 is great! :D

Week 4

Goals

  • Hunt down memory leaks.
  • Shadows from directional lights.
  • Shadows from point lights.
  • Shadows from spotlights.
  • Prevent the camera's view of the player from being obscured by other objects.
  • Volumetric lighting.

Accomplished

  • Added VLD to our project (really neat tool btw). Fixed all memory leaks we detected while simply running/closing our game (we still aren't releasing all our D3D/D2D/WIC/DSound resources properly).
  • Fixed some uninitialized variables which would cause crashes when running without the debugger attached.
  • Fixed issue where the client would completely freeze it it was unable to process all update-packets from the server before the server sent the next batch of update-packets.
  • Implemented some preliminary client-side prediction of object movements.

Failed

  • Everything aside from the memory leak stuff. Didn't get around to looking at any of it, since other things were higher on my priority list.

Next weeks goals

  • Shadows
  • Proper calculation of binormals and tangents for the height map.

Morale

  • Was feeling a little tired this week, but things are going good :)

Week 5

Goals

  • Fix networking issues
  • Shadows
  • Proper calculation of binormals and tangents for the height map.
  • Fix the deadlock in the ThreadCollection's barrier code.
  • Frustum culling of the heightmap.
  • Fix the (single) double free that seems to occur on shutdown.

Accomplished

  • Fixed the crash when connecting to a server which has already had another player on it.
  • Frustum culling of the heightmap.
  • Fixed the deadlock in the ThreadCollection class (hopefully...).
  • Fixed the (single) double free that seemed to occur on shutdown.
  • Fixed the invalid packetType crash, which occurred when we received partial packets.
  • Wrote a class to allow rendering the scene depth from the perspective of a light (initial work for shadows).
  • Objects which haven't changed during a server frame will no longer generate update packets at the end of that frame.
  • Improved connection-failure handling.
  • The server will no longer send new update packets to a client, until the client has processed the last wave of updates.
  • Fixed performance issues up until a sound has been played for the first time (cause utter lagg when mute was on), also releasing sound buffers when the sound is destroyed (unrelated).

Failed

TBD

Next weeks goals

TBD

Morale

TBD

Week 6

TBD

Week 7

TBD

Week 8

TBD

Week 9

TBD

Week 10

TBD