# Step 3: Gaussian Blurring

<figure><img src="https://3464970502-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F3JUKGJZ67JX02QZdPhsy%2Fuploads%2F8JJQ3mvDXmU7c0tfM7ah%2Fimage.png?alt=media&#x26;token=1463c423-0f57-4831-a566-adb744b9d514" alt="" width="563"><figcaption></figcaption></figure>

<figure><img src="https://3464970502-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F3JUKGJZ67JX02QZdPhsy%2Fuploads%2FK2zwW1ebKXBli0EIePxH%2Fimage.png?alt=media&#x26;token=4a154035-4a2f-4c78-aa35-43ca454a2434" alt=""><figcaption></figcaption></figure>

As suggested in LearnOpenGL.com, we are going to achieve Gaussian blurring by iteratively applying one dimensionally blurring on the horizontal and vertical direction, in a so-called ping-pong style.

The work is implemented in one shader.

<figure><img src="https://3464970502-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F3JUKGJZ67JX02QZdPhsy%2Fuploads%2FWkqYBHWUTcqtoz7lfKPs%2Fimage.png?alt=media&#x26;token=70bb70be-a91f-4621-9903-03aca2bc7580" alt=""><figcaption></figcaption></figure>
