A brief description of the lighting system of the Kepler22 game.Kepler22 is an open world game with mixed indoor / outdoor environment and full dynamic lighting which runs smoothly even on the older ios devices. This was possible thanks to some unusual tecniques...
light id map
shadow intensity map
In this article I discuss the pros and cons of using procedural generation (ProcGen). This type of analysis is a good way for you to understand when you should use it and it varies depending on what you want to do.
This article covers a method that allows you to render millions of unique objects with Direct3D11 or OpenGL 4+ with minimal CPU overhead. Rendering objects this way is very close to DX12/Mantle/Vulkan performance.
Skeletal animation plays an important role in gaming industry. There are many techniques which can be used to optimize skeletal animations to make them run more efficiently in real-time scenes. This article tends to address some of these techniques in two levels. Implementation level and usage level.
From numerical analysis to hardware tessellation this article presents my approach on creating detailed cloth simulation in real time. For complete understanding of the text presented readers should be familiar on how B-splines work. This is not a requirement for implementation since you can simply copy paste functions that do all the B-spline related stuff. Some knowledge in HLSL and DirectX11...
In this second post from our multi-post series on volume rendering for games, I’ll explain the technical basics that most solutions share. Through all the series I’ll concentrate on ‘realistic’, smooth rendering – not the ‘blocky’ one you can see in games like Minecraft.
This article tends to show how a parametric animation system can be created and be used by other modules. In this article, Unity Mecanim animation system is used to create a parametric animation system.
animation state machine
animation blend tree
One of the most crucial part of a particle system is the container for all particles. It has to hold all the data that describe particles, it should be easy to extend and fast enough. In this post I will write about choices, problems and possible solutions for such a container.
As you may know, DirectX uses by default left-handed coordinate system (LH) and OpenGL uses right-handed system (RH). RH system has become some kind of a standard in a computer graphic. However, for my personal purposes, LH system seems more logical to visualise. In this article I summarize differences in matrices and also differences in both APIs (DirectX and OpenGL)
Games often use animated characters which walk, run, shoot, etc. Those animated characters are often rendered using an animated skinned mesh. Animating such a mesh can be implemented using arrays of matrices.
This is my rendering approach to creating a custom GUI library that would support my needs of being fast, easy to work with and having a rendering system that merged well with general drawing of low vertex count objects.
So you are developing a 2D game and, suddenly, you discover that the rendering procedure is too slow. What would you do? Would you put less elements in your levels or would you render them more efficiently? Since you are here, I suppose that you would pick the latter. So, here we go, I am going to tell you how to render less things while having more.
largest empty rectangle
In these series I’ll explain the details of some of the algorithms as well as their practical implementations.This first post introduces the concept of volume rendering and what are it’s greatest benefits for games.
This article is mainly intended to give some introductory background information to the graphics pipeline in a triangle-based rendering scheme and how it maps to the different system components. We'll only cover the parts of the pipeline that are relevant to understaning the rendering of a single triangle with OpenGL.
This article discusses how axonometric projections may be used in computer graphics, multimedia applications and computer games. It compares the axonometric projection, or parallel perspective, to the linear perspective, lists the major properties and tackles some implementation details.