Presentation is loading. Please wait.

Presentation is loading. Please wait.

Final presentation saswat, venkat, vivek, vaibhav, jian, revant.

Similar presentations


Presentation on theme: "Final presentation saswat, venkat, vivek, vaibhav, jian, revant."— Presentation transcript:

1 Final presentation saswat, venkat, vivek, vaibhav, jian, revant

2

3

4 ...back in the beginning It was ambitious

5  3D racing/combat game  Mono wheel vehicle  Offensive/defensive weapons ▪ Missiles ▪ Turrets ▪ Spikes  3 game modes ▪ death match ▪ races ▪ style Networking Motion blur Dynamic lighting … Networking Motion blur Dynamic lighting …

6  Open source graphics engine  Networking  Physics  Race mode  Frame rates  Game Architecture But.. We survived

7  Irrlicht  Hacked code to get features we wanted  Recompiled source  Profiled and optimized packages  Were at mercy of open source forums  Poor documentation  EMT_LIGHTMAP_LIGHTING  EMT_LIGHTMAP_LIGHTING_M2  EMT_LIGHTMAP_LIGHTING_M4

8  Packets lost over UDP ▪ Reliability implemented on top  Ordering of packets  LAN server discover  Efficient serialization ▪ Use cheap bit masks ▪ Update only when necessary ▪ Works over wifi

9  Interpolate between messages  Prevent ‘jumping’ t = 0 t = 1

10  Networking meant more work in other areas ▪ Who died and who killed? ▪ Did the missile hit? ▪ Game states ▪ Lobby UI ▪ Networked sound ▪ In-game chat ▪ …

11  Why the wheel is hard ▪ PhysX’s uses a vertical RayCast wheel model ▪ Collision only at the vertical y contact point ▪ No wheel-wheel collision re-invented The wheel re-invented The wheel

12  Our wheel implementation  Additional shapes for collision response ▪ 2 cylinders and 1 box  Carful grouping of all game objects .. And a lot of debugging ▪ To a point where we almost gave up the idea

13  Anisotropic friction model for Skid  Based on a piecewise cubic Hermite spline.  Varies with speed and tire pressure

14  ‘Tunneling’  Go through walls at high speeds  Implemented custom CCD [continuous collision detection]  Visual debugging  Keep graphics and physics world in sync

15  Is player A ahead of player B? ▪ Update rankings in real time ▪ Implemented path objects ▪ Adaptive interpolation algorithm  Race AI [scraped] ▪ Non deterministic, yet intelligent ▪ Follow vehicle physics

16  20 fps ▪ Octree for each mesh ▪ Careful level design ▪ Prioritize update loop  Custom implementation

17  Custom interpolation algorithm ▪ Handles motion blur ▪ Rear view ▪ Objects of interest highlighted

18  C++ Pointers, types, network packets, sound, physics, aghhh  Non linear development  Our solution: ▪ A reusable game engine ▪ abstracts networking, physics and graphics ▪ extendible ▪ Game play programmers only worry about game level details ▪ Planning to release as open source ▪ 15,000+ lines, 150+ files of c++ source excluding physics, graphics, network, sound patches

19  Open source buggy level editor

20  Nobody had done 3D art before  Our external artist got busy  Only did the wheel mesh  We Learnt 3D design tools  Textured each triangle  Realistic Light mapped environment

21


Download ppt "Final presentation saswat, venkat, vivek, vaibhav, jian, revant."

Similar presentations


Ads by Google