applications of computer graphics and virtual reality in gaming


Post on 13-May-2015




2 download

Embed Size (px)


This slide is about Applications of Computer Graphics and Virtual reality in Gaming Tejas Ghalsasi ->6483 Aman Tiwari ->6331 Kapil Khond ->6493 Rohit Sabnis ->6513 Amit Goregaonkar ->6487 Rohan Kotian ->6494 It is jointly Developed by the above students from Fr.Conceicao Rodrigues college of Engineering Bandra,Mumbai The content covered is: Scope of Gaming in Real World Market Computer Graphics in Games Popular Languages Famous Games in C++ Famous Games in python Why is java not used? Computation Speed Analyzing Real concepts Rendering Rendering Realism 3D projection Ray tracing Different lighting effects Types of shading 3D Model How to represent triangles TRANSFORMATION OF AN OBJECT 2D Transformation& Types VRGI 3D Games Shooting in Games Grenade Spamming An Interaction Device Virtual Simulated Rifle (VSR) ALIASING ARTIFACTS AND ANTI-ALIASING TECHNIQUES Supersampling Haptic Technology Gaming Using VR


  • 1.Tejas Ghalsasi ->6483 Aman Tiwari ->6331 Kapil Khond ->6493 Rohit Sabnis ->6513 Amit Goregaonkar ->6487 Rohan Kotian ->6494

2. Before NOW! 3. The video game industry is the economic sector involved with the development, marketing and sale of video and computer games to millions of people worldwide. There are over 11 countries with revenues of over $1 billion related to this industry. The so non-existent gaming industry sky-rocketed from just a $1.5 billion in the year 1982 to a whopping $ 54,506,258,511 in the year 2008. Sources: As the demand for new developments goes on increasing each year new techniques of Graphics processing are scrutinized and applied where ever possible With evolution of languages and consoles the developers faced immense demands and the demands were met using scripting languages like python and HD technology. Further with the rise of Haptics and Virtual Gaming , A new dimension is opened up In the industry. 4. Assassin's Creed: Black Ops: published by Activision Developers: Ubisoft 5. GTA5: Rockstar games. ***** NFS-HOT PURSUIT: EA 6. sports-jobs.html The average salary for ea sports jobs is $39,000(Rs.24,18,000). 7. The above slides Clearly demonstrate the ever growing demand of games in the market Now let us Analyze the need for CG in games. 8. Computer Games need to be fast at least 60 image per second (the monitor refresh rate) You need an efficient programming language C++ You cannot use Java, Visual Basic, C# for critical routines. Note: A mixture of languages can be used but right now the performance critical parts are dominated by C++ in the industry Why C++ over the other programming languages? The most popular game development language is C++ because it is object oriented and complies to binary (native language of the target platform) 9. Blizzard: StarCraft StarCraft: Brood War Diablo I Diablo II: Lord of Destruction Warcraft III World of Warcraft. Starfleet Command. Microsoft And EA Sports based games are heavily programmed in c++. 10. PYTHON Python is heavily used for prototyping i.e. testing and tuning an app/algorithm before rewriting it in a faster language. You can write C/C++ functions and call them from Python and have them do the heavy work such as loading images , clearing buffer etc. For instance, the Panda3D engine ( allows you to write games (in 3D) in Python, and then port parts to C++ as needed It is an object oriented language, but doesn't force you to define tons of classes. Python is cross platform! It'll work on Linux, Windows, Mac, and most other OS's. I don't know of any major OS's that can't use Python, but that doesn't mean such a thing doesn't exist. Python is free and very available. Many linux distros come with some form of Python preinstalled. Python is free to download and free to develop for. 11. Civilisation 4 BattleField 2 Disney's Pirates of the Caribbean Online based on the movie using panda3d. Traitors Gate 2 is a puzzle/adventure game that uses Python scripts for game logic. Frets On Fire is a famous Hero-like game written in pygame SolarWolf an excellent action arcade game written with pygame 12. Java is extensively used for mobile games. The most popular Smartphone O.S. is also familiar to javas gaming methodology. Because of Javas slower Run time with respect to native languages ,high speed graphic processing is not possible. Hence JAVA is not a favored option for most of the Game Development companies out there for PC game development. 13. Efficient Programming Language is not enough We need an efficient architecture Regular Intel CPU is too slow Its analogous to SRT playing with a kids bat. 14. How can we make computation faster? Idea: Parallel Computing In the last years most speed gains come from massive parallel computation Graphics hardware is a cheap parallel supercomputer that can work with your PC Study computer architecture and parallel computing which includes:- Build fast hardware ie faster GPUs Implement fast algorithms by complexity analysis. Fast implementation is not always intuitive and requires detailed system level knowledge. 15. Study of Mechanics(Sem 1) and Engineering Drawing(Sem 2) helps in study of computer graphics(Sem 5). Analysis of real objects , motions and movements helps in creating similar Graphical counterparts Here is an LIVELY EXAMPLE: 16. Reality 17. Virtual Reality 18. Reality 19. Virtual Reality 20. Rendering is the process of generating an image from a model, by means of computer programs. The model is a description of three dimensional objects in a strictly defined language or data structure. It would contain geometry, viewpoint, texture, lighting, and shading information. 'Rendering' is also used to describe the process of calculating effects in a video editing file to produce final video output. 21. Morning Evening 22. 3D projection 3D projection is a method of mapping three dimensional points to a two dimensional plane. As most current methods for displaying graphical data are based on planar two dimensional media, the use of this type of projection is widespread, especially in computer graphics, engineering and drafting. Ray tracing Ray tracing is a technique for generating an image by tracing the path of light through pixels in an image plane. 23. Polygonal model rendered in wire-frame (no visibility). With visibility Shaded rendering. Note how the faces of the cube and cone have different shades depending on their orientation relative to the light source. 24. Shading In computer graphics, shading refers to the process of altering the color of an object/surface/polygon in the 3D scene, based on its angle to lights and its distance from lights to create a photorealistic effect. Shading is performed during the rendering process by a program called a shader. 25. Cours doption Majeure 2 images from Anisotropic highlights Isotropic highlights Fresnel effect Dispersion Caustics 26. Flat Shading Smooth Shading Gouraud shading Phong shading 27. From a concept (or a real object) to a geometric model representable on a computer. Arbitrary objects can be triangulated. 28. LS=list of vertices LS = {P0, P1, P2, P3} F1 = (LS [0], LS [1], LS [2]) F2 = (LS [0], LS [2], LS [3]) F3 = (LS [3], LS [1], LS [0]) F4 = (LS [3], LS [2], LS [1]) Fi = Facet i Object = {F1, F2, F3, F4} 29. TRANSFORMATION OF AN OBJECT 30. The process of manipulation or changing an object with respect to given values called Transformation. 31. 1) Geometric = When the co-ordinate system is fixed and we have to transform given object with respect to fixed co-ordinate system is called as geometric 2) Co-ordinate = Whenever object is fixed and transformation has to be obtained by changing views of an object with help of co-ordinate axis is called as Co-ordinate. 32. Types Of Transformation 1)Translation 2)Scaling 3)Rotation 4)Shear 33. The process of shifting of an object from one point to other point (one location to another location) along a straight line using translation vector Tx or Ty along x or y axis respectively. 34. Translation 38 )','('tom o ve),( yxPyxP y x dyy dxx ' ' ),(' , ' ' ', yx y x ddTPP d d T y x P y x P P(x, y) P(x, y) x y dx dy 35. Using the homogeneous coordinate representation in some frame p=[ x y z 1]T p=[x y z 1]T d=[dx dy dz 0]T Hence p = p + d or x=x+dx y=y+dy z=z+dz note that this expression is in four dimensions and expresses that point = vector + point 36. Scaling is change in the size of an object It can be done as up scaling and down scaling In this case we perform multiplication of co-ordinate with scaling factor. x`=x*Sx Y`=Y*Sy [x` y`] = [x y] * [ Sx 0] [ 0 Sy] 37. Scaling axisthealongbyand axisthealongbyScale ys xs y x ysy xsx y x ' ' PssSP y x s s y x yx y x ),(' 0 0 ' ' x y P0(x0, y0) P1(x1, y1) y1 1 2 y0 y1 y0 1 2 x1 1 2 x0 1 2 x1 x0 38. S = S(sx, sy, sz) = 1000 000 000 000 z y x s s s x=sxx y=syy z=szz p=Sp Expand or contract along each axis (fixed point of origin) 39. The matrix expression for the scaling transformation of a position P = (x, y, z) relative to coordinate origin can be written as: 40. Rotation o rigina b o ut thea nglea nthro ughR o ta te cossin' sincos' yxy yxx PRP y x y x )(' cossin sincos ' ' P(x, y) P(x, y) x y 41. Consider rotation about the origin by degrees radius stays the same, angle increases by x=x cos y sin y = x sin + y cos x = r cos y = r sin x = r cos ( y = r sin ( 42. Same argument as for rotation about z axis For rotation about x axis, x is unchanged For rotation about y axis, y is unchanged R = Rx( ) = R = Ry( ) = 1000 0cossin0 0sin-cos0 0001 1000 0cos0sin- 0010 0sin0cos 43. Rotation about z axis in three dimensions leaves all points with the same z Equivalent to rotation in two dimensions in planes of constant z or in homogeneous coordinates p=Rz( )p x=x cos y sin y = x sin + y cos z =z 44. R = Rz( ) = 1000 0100 00cossin 00sincos 45. corresponds to negative scale factors originalsx = -1 sy = 1 sx = -1 sy = -1 sx = 1 sy = -1 46. reflection at -1 0 y axis 0 1 reflection at 1 0 x axis 0 -1 reflection at -1 0 origin 0 -1 47. reflection at 0 1 y =x axis 1 0 48. reflection at -1 0 0 y axis 0 1 0 0 0 1 reflection at 1 0 0 x axis 0 -1 0 0 0 1 reflection abt -1 0 0 origin 0 -1 0 0 0 1 49. reflection at 0 1 0 y=x axis 1 0 0 0 0 1 reflection at 0 -1 0 y=-x axis -1 0 0 0 0 1 50. Helpful to add one more basic transformation Equivalent to pulling faces in opposite directions 51. VRGI is a software that allows: players to play commercial 3D first-person- view shooting games in an immersive environment. We also present a new interaction device the Virtual Simulated Rifle (VSR) that is used to play the games in the Virtual Environment. The VSR replaces the mou


View more >