bokeh dof

Quick takeaway:

  • bokeh is expensive, because it uses a lot of samples
  • it can also be expensive if you think you can calculate samples distribution within the nice bokeh shapes using real time Poisson stuff (good job mr. F)
  • but
  • we figured a way, to do bokeh dof without the depth map (actually, mr. F, forgot to bind it in the early version of the shader – and, well, it still looked nice)



I’ve fixed (3) P1 bugs today. Yes – the ones, that was fixed last week already.

Anyway, why would drivers decide to crash when you cast float to an uint while iterating in a loop? There are 2 possibilities:

1) we (technical artists) completely dont know what we are doing

2) actually, driver people dont know what they are doing (I mean, they should know that someone would be abusing the hlsl, right?)

Golden thoughts part 2.

People asking what technical artist do, well, we do scientific research – mostly in: simulation / lowering performance / debugging … and in shading also.

And I’ve noticed (some while ago – tbh) that people ship games with shaders. I mean, essentially, shaders are kept there as text files. You know,  you could view / edit them since dos.

But keep in mind, that If you steal from one – its plagiarism. If you steal from many – its a scientific research.

And here’s fancy way of adding 2 normalmaps:

/*this version of the code was removed due
to legal issues, I will post proper code when
I'm done with changing the variable names*/

Latest game development techiques

I would like to share some of my latest endeavours, regarding game development, that I’ve have encountered, while at lead technical artist role (currently @ CDProjektRed).

Lately I’ve found out, that copy-paste technique (I’ve just called it, copy-paste technique but, it might goes on some other, better nextgen name in other studios) – is getting more and more popular.

Not only because of savings of countless man-hours, or, (even better!) for carving the way to new, extremely advanced features – but because of simplicity, reliability, and elegance. It is something everyone (will) eventually follow.


*not actual code

The shortcut for it is Ctrl+C and then Ctrl+V. Generally will compile, and the performance, well, it depends. Mostly ok (if not, try restarting your java thing).