Quantcast
Channel: #AltDevBlogADay » Simon Yeung
Browsing index pages (24 articles)
↧

Image may be NSFW.
Clik here to view.

Implementing Voxel Cone Tracing

[Updated on 25-2-2013: added a paragraph about lowering the voxel update frequency for faster dynamic update. The demo also added a combo box for choosing the update frequency] Introduction In last...

View Article


Image may be NSFW.
Clik here to view.

Angle based SSAO

Introduction SSAO (Screen space ambient occlusion) is a common post processing effect that approximate how much light is occluded in a given surface by the surrounding objects. In this year SIGGRAPH,...

View Article


Shader Generator

Introduction In the last few weeks, I was busy with rewriting my iPhone engine so that it can also run on the Windows platform (so that I can use Visual Studio in stead of Xcode~) and most importantly,...

View Article

Image may be NSFW.
Clik here to view.

Photon Mapping Part 2

Introduction Continue with previous post, this post will describe how light map is calculated from the photon map. My light map stores incoming radiance of indirect lighting on a surface which are...

View Article

Image may be NSFW.
Clik here to view.

Photon Mapping Part 1

Introduction In this generation of computer graphics, global illumination (GI) is an important technique which calculate indirect lighting within a scene. Photon mapping is one of the GI technique...

View Article


Image may be NSFW.
Clik here to view.

Software Rasterizer Part 2

Introduction Continue with the previous post, after filling the triangle with scan line or half-space algorithm, we also need to interpolate the vertex attributes across the triangle so that we can...

View Article

Image may be NSFW.
Clik here to view.

Software Rasterizer Part 1

Introduction Software rasterizer can be used for occlusion culling, some games such as Killzone 3 use this to cull objects.  So I decided to write one by myself. The steps are first to transform...

View Article

Image may be NSFW.
Clik here to view.

Light Pre Pass Renderer on iPhone

Introduction About a month ago, I bought an iPhone 4s, so I write some code on my new toy. Although this device does not support multiple render target(MRT), it do support rendering to a floating point...

View Article


Image may be NSFW.
Clik here to view.

Extracting dominant light from Spherical Harmonics

Introduction Spherical Harmonics(SH) functions can represent low frequency data such as diffuse lighting, where those high frequency details are lost after projected to SH. Luckily we can extract a...

View Article


Image may be NSFW.
Clik here to view.

Inverse Kinematics (2 joints) for foot placement

Introduction Game sometimes need to solve Inverse Kinematics (IK) for more realistic look like foot placement on a terrain. There are different methods to solve an IK problems, some are numerical...

View Article

Image may be NSFW.
Clik here to view.

Writing an iPhone Game Engine (Part 7- Postmortem)

Introduction The first game that made with the iPhone game engine described in this series is released before Christmas on App Store, it is called Monster Bowling. You may surprise that the final...

View Article

Image may be NSFW.
Clik here to view.

Microfacet BRDF

Introduction In recent years, there are more and more papers talking about applying physically based BRDF in games. So I decided to spend some time to investigate it. For a BRDF to be physically...

View Article

Image may be NSFW.
Clik here to view.

Spherical Harmonic Lighting

Introduction Spherical Harmonics(SH) functions are a set of orthogonal basis functions defined in spherical coordinates using imaginary numbers. In this post, we use the following conversion between...

View Article


Image may be NSFW.
Clik here to view.

Dual Quaternion

Introduction Continue to the last post which introduce Dual Number, it can be extended to Dual Quaternion. Dual Quaternion is similar to Quaternion with all the real numbers replaced by dual numbers:...

View Article

Image may be NSFW.
Clik here to view.

Dual Number

Introduction Recently, I read the “Spherical Skinning with Dual-Quaternions and QTangents” from Crytek. It raised my interest on the topic of “Dual Number” (which is related to Dual Quaternion). Dual...

View Article


Image may be NSFW.
Clik here to view.

Using PID Controller

Introduction Several weeks ago, I need to implement a game screen for user to choose a level. At that time, I read some post and article about using PID controller for controlling the behavior of a...

View Article

Image may be NSFW.
Clik here to view.

Writing an iPhone Game Engine (Part 6- Performance)

Introduction Performance of a game is very important, it is important to maintain a constant frame rate of a game. So I will talk about how I keep track of the performance of the game. However, the...

View Article


Image may be NSFW.
Clik here to view.

Writing an iPhone Game Engine (Part 5- Audio)

Introduction Every games should have an audio system. In my little engine, it supports 2 types of sound: 3D effects sounds and BGM. Separate this 2 types because the BGM can be decoded on hardware. A...

View Article

Image may be NSFW.
Clik here to view.

Writing an iPhone Game Engine (Part 4- Streaming)

Introduction My game is an open world game. The player can freely explore the game world. It is impossible to load all the game objects when the game start, so my engine should be able to stream in the...

View Article

Image may be NSFW.
Clik here to view.

Writing an iPhone Game Engine (Part 3- Scripting)

Adding script support to an engine has many benefits such as writing game play code without recompile the engine source code which may takes a long time. It also can draw a much clear boundary between...

View Article
Browsing index pages (24 articles)


Latest Images