Out of Sight, Out of Mind: Improving Visualization of AI Info
TMika Vehkala | Game Developers Conference 2014, San Francisco, March 2014 | Category: AI, Programming
When AI was simple, debugging consisted of confirming that the character was simply doing the one thing you expected.
Over time, debugging moved away from "what" and became more about "why?" or "why not?"
The collision of information about the agents, the environment, the player and the game state creates an enormous amount of data that can affect the decisions that the characters make.
In this presentation some features of ReView will be demonstrated as how it was used for debugging the multi-player bots in Killzone Shadow Fall.
The Next-Gen Dynamic Sound System of Killzone Shadow Fall
Andreas Varga, Anton Woldhek | Game Developers Conference 2014, San Francisco, March 2014 | Category: Sound, Programming
We'll describe our new audio run-time and toolset that was built specifically for Killzone Shadow Fall on PlayStation 4.
However, the ideas used are widely applicable and the focus is on integration with the game engine and fast iteration, with special attention to shortcuts to get your creative spark translated into in-game sounds as quickly as possible.
We will demonstrate our implementation of these demands, which is a next-gen sound system that was designed to combine artistic freedom with high run-time performance.
It should be interesting to both creative as well as technical minds who are looking for inspiration on what to expect from a modern sound design environment.
To emphasize the performance advantage, we will show the point of view of both the sound designer and the programmer simultaneously.
We will use examples starting with simple sounds and build up to increasingly more complex dynamic ones to illustrate the benefits of this unique approach.
Killzone Shadow Fall: Creating Art Tools for a New Generation
Sander Van der Steen | Game Developers Conference 2014, San Francisco, March 2014 | Category: Graphics, Production, Programming
This talk describes the tool improvements Guerrilla Games implemented to make Killzone Shadow Fall shine on the PlayStation 4.
It highlights additions to the Maya pipeline, such as Viewport 2.0, Maya's coupling with in-game updates and in-engine deferred renderer features including real-time shadow-casting, volumetric lighting, hardware instancing, lens flares and color grading.
Taking Killzone Shadow Fall Image Quality into the Next Generation
Michal Valient | Game Developers Conference 2014, San Francisco, March 2014 | Category: Graphics, Production, Programming
This talk focuses on the technical side of Killzone Shadow Fall, the platform exclusive launch title for PlayStation 4.
We present the details of several new techniques that were developed in the quest for next generation image quality, and the talk uses key locations from the game as examples.
We discuss interesting aspects of the new content pipeline, next-gen lighting engine, usage of indirect lighting and various shadow rendering optimizations.
We also describe the details of volumetric lighting, the real-time reflections system, and the new anti-aliasing solution, and include some details about the image-quality driven streaming system.
A common, very important, theme of the talk is the temporal coherency and how it was utilized to reduce aliasing, and improve the rendering quality and image stability above the baseline 1080p resolution seen in other games.
Killzone: Shadow Fall Demo Postmortem
Michal Valient | Sony Devstation 2013, London England, April 2013 | Category: Graphics, Production, Programming
This talk is about our experiences gained during making of the Killzone Shadow Fall announcement demo.
We’ve gathered all the hard data about our assets, memory, CPU and GPU usage and a whole bunch of tricks.
The goal of talk is to help you to form a clear picture of what’s already possible to achieve on PS4.
Lighting of Killzone: Shadow Fall
Michal Drobot | Digital Dragons 2013, Krakow Poland, April 2013 | Category: Graphics, Production, Programming
The presentation describes Physically Based Lighting Pipeline of Killzone : Shadow Fall - Playstation 4 launch title.
The talk covers studio transition to a new asset creation pipeline, based on physical properties. Moreover it describes light rendering systems used in new 3D engine built from grounds up for upcoming Playstation 4 hardware. A novel real time lighting model, simulating physically accurate Area Lights, will be introduced, as well as hybrid - ray-traced / image based reflection system.
We believe that physically based rendering is a viable way to optimize asset creation pipeline efficiency and quality. It also enables the rendering quality to reach a new level that is highly flexible depending on art direction requirements.
The Creation of Killzone 3
Jan-Bart van Beek, Michal Valient, Marijn Giesbertz, Paulus Bannink | Siggraph 2011, Vancouver, August 2011 | Category: Graphics, Production
This talk details various aspects of designing and developing videogames at Guerrilla.
It highlights methods that are very similar to methods used in the CGI industry, and it illuminates some of the most important differences.
It also covers the complete breadth of videogame development from artistic design to production pipelines and tool and engine development.
Practical Occlusion Culling in Killzone 3
Michal Valient | Siggraph 2011, Vancouver, August 2011 | Category: Graphics, Programming
Killzone 3 features complex occluded environments.
To cull non-visible geometry early in the frame, the game uses PlayStation 3 SPUs to rasterize a conservative depth buffer and perform fast synchronous occlusion queries against it.
This talk presents an overview of the approach and key lessons learned during its development.
Practical Occlusion Culling on PS3
Will Vale | GDC 2011, San Francisco, March 2011 | Category: Graphics, Programming
Games always have too much stuff to render, but are often set in occluded environments, where much of what is in the view frustum is not visible to the camera. Occlusion culling tries to avoid rendering objects which the player can’t see.
Discussion of occlusion for games has tended to focus on the use of GPU pixel counters to determine whether or not an object is visible. This places additional stress on a limited resource, and has latency which has to be worked around, requiring a more complex pipeline.
For KILLZONE 3 we took a different approach - we use the SPUs to render a conservative depth buffer and perform queries against it. This allows us to cull objects very early in the frame, avoiding any pipeline costs for invisible objects.
This presentation talks about the ideas (and dead ends) we explored along the way, as well as explaining in detail what we ended up with.
Killzone 2 Multiplayer Bots
Remco Straatman, Tim Verweij, Alex Champandard | Paris Game/AI Conference 2009, Paris, June 2009 | Category: AI, multiplayer, Programming
This presentation the describes architecture behind the multiplayer bot AI for Killzone 2.
As part of this, it describes the hierarchical task network (HTN) planner, terrain analysis, and the way commander squad and individual bot AI work together for dynamic tactical gameplay.
The PlayStation®3’s SPUs in the Real World: A KILLZONE 2 Case Study
Michiel van der Leeuw | GDC 2009, San Francisco, March 2009 | Category: Graphics, Programming
This session describes many of the SPU techniques used in the engine used to develop KILLZONE 2 for the PlayStation 3.
It first focuses on individual techniques for SPU's as well as covering how these techniques work together in the game engine each frame.
The Rendering Technology of Killzone 2
Michal Valient | GDC 2009, San Francisco, March 2009 | Category: Graphics, Programming
This presentation gives an overview of the rendering techniques used in KILLZONE 2.
We put the main focus on the lighting and shadowing techniques of our deferred shading engine and how we made them play nicely with anti-aliasing.
A Hierarchically-Layered Multiplayer Bot System for a First-Person Shooter
Tim Verweij | Msc. Thesis, Vrije Universiteit Amsterdam, August, 2007 | Category: AI, Programming
This thesis research was the basis for Killzone 2's multi-player bots.
It proposes a hierarchically structured system to control the multiplayer bots, using one AI commander for each faction, each commanding several group leaders, each commanding several individual bots.
The system is evaluated on the basis of a fully implemented AI for one of the multiplayer game modes.
Deferred Rendering in Killzone 2
Michal Valient | Develop 2007, Brighton, July 2007 | Category: Graphics, Programming
Next generation gaming brought high resolutions, very complex environments and large textures to our living rooms.
With virtually every asset being inflated, it's hard to use traditional forward rendering and hope for rich, dynamic environments with extensive dynamic lighting.
Deferred rendering, on the other hand, has been traditionally described as a nice technique for rendering of scenes with many dynamic lights, that unfortunately suffers from fill-rate problems and lack of anti-aliasing and very few games that use it were published.
In this talk, we will discuss our approach to face this challenge and how we designed a deferred rendering engine that uses multi-sampled anti-aliasing (MSAA).
We will give in-depth description of each individual stage of our real-time rendering pipeline and the main ingredients of our lighting, post-processing and data management.
We'll show how we utilize PS3's SPUs for fast rendering of a large set of primitives, parallel processing of geometry and computation of indirect lighting.
We will also describe our optimizations of the lighting and our parallel split (cascaded) shadow map algorithm for faster and stable MSAA output.
Killzone's AI: Dynamic Procedural Tactics
Arjen Beij, Remco Straatman | GDCE 2005, London, August 2005 | Category: Programming, AI
Dynamic tactical position evaluation functions are procedures that use static and dynamic information about the world to make tactical decisions at run-time.
By having NPCs use a procedural description of the solution to a tactical decision, the solution can vary depending on the inputs.
Using static information about the world as input makes sure the tactics are applicable at any place on the map.
Using dynamic inputs makes sure they are applicable in multiple situations.
The Guerrilla Guide to Game Code
Jorrit Rouwé | Gamasutra, April 2005 | Category: Programming
There are a lot of articles about games. Most of these are about particular aspects of a game like rendering or physics.
All engines, however, have a binding structure that ties all aspects of the game together.
Usually there is a base class (Object, Actor or Entity are common names) that all objects in the game derive from, but very little is written on the subject.
Only very recently a couple of talks on game|tech have briefly touched on the subject.
Still, choosing a structure to build your game on is very important.
The end user might not "see" the difference between a good and a bad structure, but this choice will affect many aspects of the development process.
A good structure will reduce risk and increase the efficiency of the team.