1 / 30

Graphics Rendering

Graphics Rendering. Culling Methods. B ackface. Binary Space Partitioning (BSP).

Télécharger la présentation

Graphics Rendering

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Graphics Rendering Culling Methods Backface Binary Space Partitioning (BSP) - ‘a method for recursively subdividing a space into convex sets by hyperplanes.’ BSP Provides special information about objects that is especially useful in rendering. The most useful feature of BSP is the fact that it can give the front-to-back ordering of an object from any given viewpoint. Backface culling is the means of removing whatever part of an object that is not visible. This is usually the back end or sides of an object. Whatever is not is view is not rendered, so this means that it’s pre-set textures are not loaded, although the object still retains it’s basic shape and state. - Generating an image from a pre-set 2D or 3D model - Portal Based Culling This type of culling is a way for the engine to separate which of the engine cells are in the vision of the player. When it has calculated this, the engine can then cut processing power by essentially temporarily removing whatever is out of view. This in turn helps to cut out any lag or delay time in the final game. View Frustum View Frustum is very similar to Portal-Based culling, except it is more commonly used in first-person games when a whole scene is out of view (usually directly behind the player.

  2. Graphics Rendering - Continued - Occulusion Contribution This method of rendering identifies objects that are being obscured in the scene and repositions them so that they become visible. However this method is extremely complex and difficult to implement. This method of rendering identifies objects that are being obscured in the scene and repositions them so that they become visible. However this method is extremely complex and difficult to implement.

  3. Rendering Techniques Ray Tracing Ray Tracing makes rendered objects look hyper-realistic by putting one or more light sources near them – making their shadows and colours change drastically. This also affects object and beings around them, such as player or structure shadows in the surrounding area.

  4. Lighting and Shadows • The addition of lighting in a 3D games project is essential as it massively brings the project to life. Lighting and shadows add a super-realistic effect to a game and altogether make it feel more immersive. Many games have specific Lighting Directors – people who ensure that every inch of the game is looking it’s best in every single frame and lighting situation. • Ray Tracing is the name for realistic modelling of light in a game engine. Ray Tracing helps to model convincing images by mapping out rays of light and casting them into the scene; reflecting them on and off of objects in the process.

  5. Lighting Techniques • In games creation, there are a few different commonly used lighting techniques and styles. Here are some explanations for a few of them. Lambertian Lighting Named after Johann Lambert who first invented the idea in 1760; Lambertian Lighting is a lighting style that emits the same light across all angles of an object. This means that all of the points on an object will look exactly the same, despite all of the angles it could be viewed from. Because this rendering is only used on objects with diffuse lighting, it is not used on objects with glossy or extra- reflective surfaces. Phong Lighting On the other hand, Phong Lighting is used on objects that directly reflect the light source. These reflections can range from dull to very shiny, to simulate reflections from different materials - such as wood and plastic. Phong lighting is made up of diffuse light and the light’s direct reflection. This kind of lighting needs the calculation of what angle the object is being viewed at, and also at which point the light is hitting it.

  6. Lambertian Lighting Phong Lighting

  7. There are endless ways for a lighting director to design and calculate light. In the end, lighting often comes down to human judgement of the atmosphere and feel of the room or location in a game. More judgement is needed as to what type and density of a reflection each object, material and texture should have in order to make it realistic. • There are also different amounts of light sources to use, and all of these interact with objects in different ways. These are: Spotlight Omni Light Directional Light Ambient Light The Elder Scrolls V: Skyrim (Using the Realistic Lighting Overhaul Mod) Untitled Project in Unreal Engine 4 Untitled Project Untitled Project in Unity

  8. Texturing • Textures are primarily the different images for materials that appear in the game. Generally most textures look different while all behaving physically in the same way; however the way that each texture interacts with light is different depending in what material is it supposed to simulate. Textures are applied over objects, giving them aesthetic complexity and making them look photorealistic. • Textures are usually made by artists and designers who digitally draw them onto square bases. They are then placed and rendered into the game world, and made sure that they are positioned and lighted realistically and effectively. Glossy Sci-Fi terrain in Tron: Evolution Leadwerks Terrain

  9. Fog/Fogging • The use of fog in videogames is both a tool for aesthetic ambience and for saving space in the game and engine memory. Fogging is useful as it fades objects in the distance out realistically so that the player can see them pop neither into or out of the clipping plane. As the player moves away from the horizon, the level of contrast for the objects on or near it increases. In recent years, fogging has become less commonly used as many photorealistic games tend to open-world.

  10. Shadowing • Just as accurate lighting is integral to making a game appear truly photorealistic, correct shadows and shadowing techniques and designs are also just as important. Without shadowing, it is hard to determine the spatial relation of players and objects to their environment. • Shadows should respond to their lighting environments effectively, and so a lighting designer should take special care to ensure that their shadows make sense in a scene. For example, although this shadowed alien may look decent at first glance; it actually does not make sense as the middle creature is being lighted from the top. The harsh shadow behind it would only make sense if it was being lighted directly from the front.

  11. Depth Buffering Depth Buffering is the management of the coordinates of image depth in a scene. It can help solve visibility issues, which determine what images are visible in the player’s vision. Depth Buffering was created by Wolfgang Straβer who discussed it in a Ph.D. thesis in 1974.

  12. Anti-aliasing • Anti-aliasing is a graphics method used to smooth down jagged edges in game engines to prepare them for use in the finished game. Therefore, the graphics as a whole appear to look better and more detailed, with a higher quality. • This technique works by placing a colour and brightness along the edge of the required object and blurring it slightly, creating a smoother by using the softness of the blend.

  13. Level of Detail • Somewhat similar to Fogging techniques, Level of Detail in computer graphics refers to the quality and complexity of a 3D model or object as it moves towards or away from the player. LOD is used to decrease the workload on the stages of graphic rastering, thus making the game run smoothly and decreasing the chance of lag or late loading. • In recent years, LOD has been applied to other detail techniques such as shaders to keep pixel complexity and count under control. It is also used often on texture management. Object viewed from immediate proximity Object as viewed from very far away

  14. Animation Systems

  15. Path-Based Animation • Path-based animation is where the animator draws a limited amount of set points, and then the engine does the rest by following a past between the present points, creating a moving image or object. Path-based animation is only used in order for an object to get from Point A to Point B – so the object does not change it’s state or shape at any time. Here we can see the path that the object must traverse along. The object can only move one way (which the animator will have set), and It would be impossible for the it to deviate from this set path.

  16. Inverse Kinematics • Inverse Kinematics is the system whereby a parts of skeleton of a figure (A Kinematic Chain) can be moved and modelled by calculating the relationship between the manual movement of it’s joints and the resulting pose. Inverse Kinematics can also helps to make sure that the object makes sense alongside its surroundings; i.e. making sure that it’s feet (or the bottom of the object) are always touching the floor. • Furthermore, Inverse Kinematics can be modelled in a way that lets the designer move a certain part of the object and have the rest of it follow up and move in a way that is realistic, rather than selecting all of the separate joints of an object and moving them into place on their own – which can often look incorrect. Note the corrected foot placement and the new position of the right hip and thigh of the soldier using IK.

  17. Inverse Kinematics (Cont.) This model has five main points from which it can be edited and moved. The coloured boxes on the raster net of the model above represent all of the parts that she can be moved from, and have the rest of her body respond realistically straight away.

  18. Forward Kinematics • Forward Kinematics is used to get objects to a certain point using their pre-set animation cycles. During a Forward Kinematics process, the animation cannot be edited or be made to flow realistically. Because of this, Inverse Kinematics is more commonly used to achieve a naturalistic effect.

  19. Particle Systems • Particle systems are the means of simulating certain graphics, objects and models that need to look fuzzy and disjointed. This images often include fires, explosions, waterfalls and smoke. • Particle systems work by using an ‘emitter’ – a tool that controls where each particle is created and where exactly it moves to. The emitter can be edited to also control how many particles it creates in a set amount of time, the colour, and how long each particle lasts for before it disappears. Each of these settings has to be used carefully and effectively to ensure that the intended effect looks good whilst also behaving realistically.

  20. Particle Systems (Cont.) This cube emitter has exactly the same settings applied to it, but it is using static particles that elongate and follow a set path. This emitter is emitting 5000 animated particles being ‘sprayed’ in different directions and responding to the area gravity by falling downwards.

  21. Systems

  22. Physics Engine • Physics engines In games development create simulations of real-time physics situations, which go towards making the game realistically accurate. Physics engines often encompass tools such as gravity, fluid dynamics and collision detection. • In videogames, however, gameplay is often viewed by the designers and developers as being more important than having complex, hyperreal physics simulations throughout the entire game. As a result of this, many of the tools in physics engines are only used in places and environments where a lack of them would seem inappropriate and largely out of place.

  23. Effects Fire Water Water is an essentials part to many videogames. In games like Bioshock, Just Cause, and Assassin’s Creed: Black Flag, shimmering, realistic water is a huge part and completely makes up the game. Water effects have infamously taken years to get right, and new ways of creating perfect, real-time responsive water is always in development. Conversely, fire is also can be a massively important part of a game. Often used to represent a great danger to the player; fire is usually created with ‘fuzzy’, complexly designed particle systems.

  24. Effects (Cont.) Atmospheric Effects Overall, effects are commonly used as the finishing touches to the graphics and aesthetics of a game, used to please the eye of the player and make them feel fully immersed in the experience of the game. When players talk about ‘graphics’ in game reviews, they tend to actually be more focused on how well the effects have been designed how consistently aesthetically pleasing they are. Atmospheric effects are crucial to the feel and mood of the environment in games. Here we have examples of fog and fragments of light, each used to create atmospheres of eeriness, peace and the morning sunrise.

  25. Sound • Audio in videogames is crucial to enhancing the atmosphere of the whole gaming experience. From soundtracks to short audio effects such as gunshots or footsteps, sounds are essentially the last piece of making a great all-round game. • Soundtracks in games are usually created by one or more composers who will compose the score. Depending on the game, the sounds are then created by scratch using computer programs or recorded by live musicians and/or orchestras. A few composers famous for their videogame work are: Jeremy Soule Koji Kondo Gustavo Santaolalla

  26. Artificial Intelligence (AI) Artificial Intelligence (AI)

  27. Artificial Intelligence Agents Bots Non-player Characters Bots are a type of AI mainly used in FPS games, generally intended to be used as standard enemies for the player to battle against. There are two types of bots. Static Bots are made to follow specific parts and often have a goal of getting to a checkpoint in the map. Dynamic Bots essentially seem like they learn the map and weaponry as they play, and are thus the more realistically behaving of the two types. NPC’s are the name for any other character who is not the player. These characters may provide dialogue, sell items, or otherwise aid the player through the story of the game. In recent games, a lot of NPC dialogue can have multiple options, to which the NPC will behave differently. An NPC in World of Warcraft An example of fighting bots in Runescape

  28. Artificial Intelligence (Cont.) Different Ai’s are created to traverse the world of the game in different ways. On a map, for instance, an NPC might use a preset path to navigate their way from point A to point B. This is called Pathfinding. NPC’s will pathfind at a set time in the scene in the game so that their movements are effective, and might perform actions along the way, such as attacking or engaging in dialogue. These types of NPC’s are very similar to static bots. Another type of movement for game NPC’s is Navigation. Navigation lets the NPC move relatively freely around the map, whilst also being programmed to avoid obstacles and other characters. NPC’s that use navigation are often able to also pass through difficult terrain. However, navigating NPC’s do also have a set target they are working towards. These types of artificial intelligence are akin to dynamic bots. A set path for a Pathfinding NPC to move along.

  29. Webliography • Culling // https://en.wikipedia.org/wiki/Clipping_(computer_graphics) • Rendering // https://en.wikipedia.org/wiki/Rendering_(computer_graphics) • Lighting // http://www.moddb.com/tutorials/lighting-in-game-environments-the-hows-and-whys • Textures // http://blog.digitaltutors.com/texturing-games-maintain-high-level-detail-without-extra-geometry/ • Fogging // https://en.wikipedia.org/wiki/Distance_fog • Shadowing // https://en.wikipedia.org/wiki/Shadow_mapping • Depth – Buffering // https://en.wikipedia.org/wiki/Z-buffering • Anti-Aliasing // https://www.youtube.com/watch?v=hqi0114mwtY • Vertex and Pixel Shaders // https://www.youtube.com/watch?v=TDZMSozKZ20 • LoD// http://blog.gameartworkbook.com/game-art-theory/about-level-of-detail-lod-in-game/

  30. Path-based animation // https://docs.google.com/document/d/1D1fdSx0uGiVXzJSGJeM5r7L-1yeCOSK7lofQQSlpEdM/edit?pref=2&pli=1 • Forward and Reverse Kinematics // https://en.wikipedia.org/wiki/Forward_kinematics // https://en.wikipedia.org/wiki/Inverse_kinematics • Particle systems // https://docs.google.com/document/d/1D1fdSx0uGiVXzJSGJeM5r7L-1yeCOSK7lofQQSlpEdM/edit?pref=2&pli=1 • Physics Systems // https://en.wikipedia.org/wiki/Physics_engine • Effects // http://www.pcgameshardware.com/aid,701237/The-best-Special-Effects-in-PC-games-part-1/News/ • Sound // http://gamingbolt.com/best-sound-design-in-a-video-game-in-2015 • Artificial Intelligence // https://en.wikipedia.org/wiki/Artificial_intelligence_(video_games) • World Navigation // https://graphics.tudelft.nl/Publications-new/2009/VB09a/VB09a.pdf

More Related