Category: Tutorial

  • Improving the Rainbow – Part 1

    Improving the Rainbow – Part 1

    Our journey to photorealism requires us to understand not only how light works, but also how we perceive colours. How many colours are in the rainbow? And why pink is not one of them? Those are some of the questions that this post will address. You can find the complete series here: A link to…

  • Fast Subsurface Scattering in Unity (Part 2)

    Fast Subsurface Scattering in Unity (Part 2)

    This is the second part of the tutorial on Fast Subsurface Scattering in Unity. This post will show a working implementation of this effect. This is a two part series: At the end of this post, you will find a link to download the Unity project.

  • Tentacle Suckers Shader

    Tentacle Suckers Shader

    Following the unexpected success of the tutorial on Inverse Kinematics for Tentacles, I have decided to share the shader that I used to make them so realistic. If you are not familiar with shaders, fear not. This tutorial will be target at beginners, and you’ll only need a basic understanding of how Unity works. A…

  • Inverse Kinematics for Tentacles

    Inverse Kinematics for Tentacles

    This post continues our journey in the depth of Inverse Kinematics. In this tutorial you will learn how to apply this powerful technique to create realistic tentacles. The other post in this series can be found here: At the end of this post you can find a link to download all the assets and scenes necessary to replicate…

  • Inverse Kinematics for Robotic Arms

    Inverse Kinematics for Robotic Arms

    After a long journey about the Mathematics of Forward Kinematics and the geometrical details of gradient descent, we are ready to finally show a working implementation for the problem of inverse kinematics. This tutorial will show how it can be applied to a robotic arm, like the one in the image below. The other post in this series can…

  • An Introduction to Gradient Descent

    An Introduction to Gradient Descent

    This post concludes the theoretical introduction to Inverse Kinematics, providing a programmatical solution based on gradient descent. This article does not aim to be a comprehensive guide on the topic, but a gentle introduction. The next post, Inverse Kinematics for Robotic Arms, will show an actual C# implementation of this algorithm in with Unity. The other post in this…

  • Implementing Forward Kinematics

    Implementing Forward Kinematics

    This tutorial continues our quest to solve the problem of forward kinematics. After exploring a mathematical solution in The Mathematics of Forward Kinematics, we will see how to translate it into C# for Unity. The next tutorial, An Introduction to Gradient Descent, will finally show the theoretical foundations to solve inverse kinematics. The other post in this series can be found…

  • The Mathematics of Forward Kinematics

    The Mathematics of Forward Kinematics

    This tutorial starts our journey into the world of inverse kinematics. There are countless ways to approach this problem, but they all starts with forward kinematics. Inverse kinematics takes a point in space, and tells you how to move your arm to reach it. Forward kinematics solves the opposite, dual problem. Knowing how you are moving your arm, it…

  • Positioning and Trilateration

    Positioning and Trilateration

    This post shows how it is possible to find the position of an object in space, using a technique called trilateration. The traditional approach to this problem relies on three measurements only. This tutorial addresses how to it is possible to take into account more measurements to improve the precision of the final result. This algorithm is…

  • Understanding Geographical Coordinates

    Understanding Geographical Coordinates

    This series introduces the concept of trilateration. This technique can be applied to a wide range of problems, from indoor localisation to earthquake detection. This first post provides a general introduction to the concept of geographical coordinates, and how they can be effectively manipulated. The second post in the series, Positioning and Trilateration, will cover the actual…