Hello!

My name is Pavel Šmejkal, I am a programmer currently working on the Apex engine at Avalanche Studios Group in Stockholm. On this website, you can find my posts, projects, and some information about me.

My main area of interest is video games which I love to play from my very early childhood. This passion of mine led me to build (with some help) my first computer when I was 13 and it also ultimately made me study informatics and Game development at Charles University, Faculty of Mathematics and Physics. At the university, I did a few games as semestral projects and as a Bachelor thesis, I worked on an AI to StarCraft.

During my bachelor studies, I also worked at Bohemia Interactive Simulations. First, on a full-time three-month paid internship as a Game designer (scripter), afterward, as a part-time Game designer/tools programmer. This was an amazing experience for me, however, I eventually decided to leave and focus on my studies.

Choosing the Computer graphics and computer game development master's programme was an easy decision for me. In the first semester we made a point and click adventure called Spring in four people for the Computer games development course, it ended up being the best game of the year.

Afterward, in slightly different team composition we made a turn-based game called Fruitons (originally called Besought) as a Software project. It was much more challenging because the span of the project was set to 9 months and we used many different technologies some of which were quite new to us.

For my master thesis, I had a great opportunity to work on an AI to a freshly released Czech indie game called Children of the Galaxy. It is a 4X turn-based strategy game from space. The thesis focuses on the combat aspect of the game and proposes an adversarial search method based on Monte-Carlo tree search (MCTS) called MCTS considering HP. The follow-up paper we made was accepted to the 14th AAAI Conference on Artificial Intelligence and Interactive Digital Entertainment (AIIDE).

After graduating I started to work as a C++ engine programmer on an in-house engine called Enfusion at Bohemia Interactive. Over time I took responsibility and did significant amounts of work on the in-game UI system, tools for map designers, and finally, as my long-time passion, I implemented a DirectX 12 rendering backend and became responsible for the PlayStation 4 rendering backend. I see the DirectX 12 implementation as the most significant contribution to the engine because I was able to successfully implement many modern techniques such as "bindless" resource binding model, multi-threaded command list recording, resource memory aliasing (transient resources), asynchronous resource loading on the copy queue, automatic system for resource barriers and more.

This pretty much sums up my professional life. If you want to see some of my projects you can look, hover, and click on the screenshots below or head directly to the Portfolio section.