It’s Time for Talent – with Martin Haagaard
Hi, I’m Martin. It’s a pleasure to introduce myself! 👋
I joined Tactile in September 2024 as a Data Architect on the Core Team. I help build the foundational infrastructure that powers all our games. My role involves designing and implementing an innovative data warehouse solution in Google BigQuery, which serves as the backbone for a comprehensive self-service BI platform used by game analysts, product teams, data scientists and others.
We process millions of game events daily, ensuring the system is optimized for cost-efficiency, performance, and scalability. By enabling data-driven decision-making across teams, we contribute to improving player experiences and driving the success of Tactile’s games.
🚀 Before Tactile
I actually started studying communication at university with an idea of working in marketing in the end, but quickly realized that it wasn’t for me – there was too much subjectivity and not enough facts. I pivoted and pursued a master’s degree that was more IT focused (yay – objectivity, facts, TRUE/FALSE 🎉).
Since then, I have worked six years in IT and data consultancies. I started out more on the business side but quickly transitioned to the technical side as I discovered my strengths and interests there. For the past couple of years I’ve had tech-lead roles on different large data projects, working mainly on architecture and design, but still having the chance to get my hands dirty coding as well.
💜 Joining Tactile
Moving from consultancy to a mobile gaming company as an internal resource has been a significant shift for me. As a consultant you work from project to project with different people, different clients in different countries, different goals and so on – which teaches you A LOT. But it also means that you don’t get ownership of any of the solutions that you implement and actually see it in action and how it evolves over time. You get that here at Tactile.
There’s not long from idea to action, since we work very agile and with a flat organizational structure. You also have the opportunity to deep dive and become an absolute expert on what you’re working on, which I really enjoy.
The move has been exactly what I wanted and needed!
💪 Having an impact
Our team is basically responsible for everything data in Tactile. We build our internal data platform, including all of the tools and services which are used by game and marketing teams to manage, improve and speed-up their daily operations.
The most motivating part of the job for me is that we are building something truly innovative. The challenges here aren’t things you can simply Google or ask ChatGPT about – or you can, but most of the time you won’t get a useful answer. You just have to sit down and turn on the big brain 🧠
Working with state of the art tools with highly skilled people to build something brand new is highly motivating and rewarding.
💫 What sets us apart
Working in a Danish company where you as a Dane are basically a minority is something that I don’t think you find in many other places 😅 We are 50+ nationalities here, so it’s a big melting pot of different cultures – which makes every conversation interesting, because you learn something new every day about the minor or major differences that we have in our everyday lives.
💡 Hot tips for joining the gaming industry
If you’re looking to get into the gaming industry or join Tactile, my advice is: don’t be afraid to show curiosity and ask questions. The industry moves fast, and every day brings new challenges, so being open to learning is key. And don’t be afraid to bring your unique perspective to the table. Diversity is one of the things that makes Tactile such an exciting place to work! And passion for games obviously helps a lot! 🤩
When we started developing new game projects in more recent years, we found limitations in our gameboard technology used by games such as Lily’s Garden. At the same time, we could also see that the match-3 gaming market was moving towards a very fluid gameboard experience – whilst the post-move visual animations are running, the players are already able to make their next move. This was a limitation in our own technology which we wanted to overcome.
And so a small team of Tactilers set on a mission to rebuild our core gameplay tech in order to increase our gameboard capabilities. We sat down with Lasse, who has been on the team since the very start, and Niels, who joined it a year in, to learn more about the why’s and the how’s of what they’ve been doing and to find out what this new tech enables them to do today.
Starting from scratch
Our ‘old’ gameboard tech was set-up in a way that whenever you made a valid input (i.e. made a match or set off an in-game booster), its logic would instantly get solved. This meant that you had to wait for the visual presentation to complete before you were able to make the next move. You basically had to tap and wait, and this limited us both in the experience we wanted to give to our players and in how we worked on the gameboard from the development perspective. Developing the connection between logic and visuals was often troublesome because time, as a concept, differed between the two parts. This is why our gameboard team decided to build new gameboard tech which allowed them to move time to the logic and give them the flexibility to do a lot of extra things on top of that.
Building gameboard tech, however, is no small feat. Gameboard tech is incredibly complex, simply because there are so many little things and combinations that can happen within it. It took a team of 3 people, including Lasse, several months to get it to the place they wanted it to be. They started off with creating core building blocks, made several different versions, and then started testing. It was very much a trial and error process. “At the beginning, you think there’s stuff that is really smart architectural design, but then you see that in practice it doesn’t really work. We learned a lot just by doing things, testing them and making changes afterwards,” says Lasse. The learn-as-you-go process is still ongoing now, 3 years later, but the rate of change is becoming less common as the team gains more and more experience with each new case.
The best thing is that this new technology can now be used to do practically everything gameboard related – whether it’s a match-2 board, match-3, merge-2, merge-3, or something completely different. This is because it is built on the core concepts of an interactive gameboard, instead of catering to a specific game genre. Building it from scratch gave us so much experience and insight into where we can go with our new gameboard tech. This is important because this new tech will likely be integrated into every new game project we start working on.
The harsh reality of building new tech
New gameboard tech was initially built for a game called Makeover Match. This was a brand new project which we started working on in 2021. As it was on a much smaller scale compared to a game like Lily’s Garden, it presented the perfect environment to build, test, implement and iterate in.
The team invested a lot of time into building this new technology and eventually more and more people joined the mission. It took an incredible amount of work, dedication, consideration and support to get it up and running, but the long-term benefits were worth the initial investment.
After they had the new gameboard tech working in Makeover Match, they decided to take the next step and implement it into Lily’s Garden. This presented a challenge on a completely different scale.
They knew going into it that Lily’s Garden is a monolith and that this would be a big task. Everything gameboard related basically needed to be re-coded from scratch. On top of this, the game had over 10.000 levels, which all had to work after being moved to the new tech, and the team had to be extra careful to not miss out on any edge cases. For nearly an entire year, they had to run Lily’s Garden on both game boards at the same time, to ensure that everything performed as expected. “It was a difficult time,” say Niels and Lasse, “But now we’re so incredibly happy that we did it!”
Once the new gameboard tech was up and running in Lily’s Garden, we were able to focus on using it to build new projects. Having all of our games based on the same core technology enables us to reduce the overhead. Firstly, it is easy for our game programmers to move in between projects because the code architecture is shared. Secondly, it makes it simpler for us to scale and maintain the tech. When we discover an issue in a core building block, we can fix it in one game and then easily update it in all of the other games as well. The new technology therefore provides us with a lot of benefits.
Clear separation between logic and visuals
Despite rewriting the entire system from scratch, the basic principle of having the logic and visuals clearly separated remains. This protects us from visual changes causing bugs in the logic and it’s something we highly value. The main difference is that the logic now progresses in sync with time, mimicking real-time behavior. Simulating time within our logic in this way allows the player to make moves while pieces are still falling (or performing other actions, like exploding).
This clear separation allows us to run our gameboard simulations in a more deterministic manner, which gives us time. It also gives us the ability to execute logic independently and at a higher tick rate, which increases speed. This capability offers numerous benefits. For example, the team now has quick access to logical test scenarios that help protect against recurring bugs. When issues arise, we have developed a tool that lets us replay levels exactly as they were played. All of this is crucial when developing something as complex as gameboard technology, simply because it has so many edge cases (just think of all the combinations a player can make!).
Separating the logic from the visuals also safeguards us in future improvements and enables us to stay agile and keep moving fast. If we want to be able to play the game fast, test new things and move forward faster with technical improvements (such as new AI tools), we do not have the luxury of time to spend on things such as waiting for visuals to play out.
Speaking of making improvements, when it comes to gameplay tech, we need to keep in mind that even the most minor changes can have a massive impact on the gameplay experience. For example, if we speed up booster logic (like making all the rockets go off at the same time), it completely changes the outcome of player moves, which can then alter the difficulty of our levels. So we always have to keep these things in mind when trying to optimize the technology.
What helps us to maintain high quality of everything that we do though, is strictly following the same core coding principles as a team. These include clean code, SOLID, DRY and unit testing whenever possible. In particular on the logic side, we’re trying to keep things neat. On the visual side, however, we try to be a little bit more pragmatic. Here, we try to focus on what will make the levels fun to play and appealing to look at.
Building customized tooling
Building our technology from scratch has also allowed us to develop a range of customized, shareable tools over time. These tools include asset management, improved A/B testing capabilities, better data gathering, level replays, test scenarios, level search tools, level bulk adjustments, and many more.
Being able to share these tools across our teams saves us considerable resources, which can instead be spent on enhancing the core gameplay experience.
Writing this kind of modular code takes a lot of time and it took the team a lot of reviewing, testing and re-writing to get it right. But the team believes it’s worth the effort and once it’s all in place, it gives them the ability to do so much more with this technology long-term.
A great example of that is the fact that all the different game teams can take these core building blocks to construct their own projects. The teams have the freedom to use the core gameboard tech however they want in order to create the logic and the game feel they wish to give to their players. This means that Lasse, Niels and their team do not need to involve themselves into the details of what they are doing in other games and can focus on supporting Lily’s Garden gameboard and the core tech itself. Lasse adds: “We want to give the game teams the freedom to express themselves as they want, and we just support them along the way with these core building blocks. It’s about guiding them, not limiting them.”
Plans for the future
Now that the core building blocks are in place and being used across a number of projects, we can allow ourselves to dive deeper into the visual side of things. This means that if an artist or a designer has an idea, the programmers would like to be able to support its implementation using this new technology.
For performance reasons, the gameboard programmers also started looking into the areas where they have more heavy-performance on the logical side. They are currently exploring using Unity’s Job system*, which will enable them to, at least in some cases, enhance the performance drastically.
To support this testing process, the team started a small book club for gameboard programmers. The aim of it is to provide a space for deeper discussion on how to improve the general look of the architecture when using the Job system and how to integrate it best within the existing tech structure at Tactile.
* Unity’s Job system – The job system lets you write simple and safe multithreaded code so that your application can use all available CPU cores to execute your code. This can help improve the performance of your application.
About the co-authors
Lasse Beck Knudsen has over a decade of experience in game programming, having worked on a variety of projects both in Denmark and in the UK. He joined the Tactile team in 2018 and has since then grown into leading the efforts of all core gameboard related things.
Niels Meijer started his journey in the gaming industry in 2017 back in the Netherlands, where he spent the first years of his career working on city builder games. In 2022, he joined our team and after supporting both Lily’s Garden and Makeover Match productions, he settled on the Gameboard team. A fun fact about Niels is that he used to run a (quite frankly very) popular YouTube channel about Unity development.
A lot of Art students get told early on to be specialists in their field, to focus on something and get really good at it. Our 3D generalist, Anne-Karina (AK), feels otherwise. In particular in the worlds of mobile and indie gaming, being a generalist is super important. This doesn’t apply to your art skills only – it’s super important to also have the mindset of continuous learning, for both art and software.
AK recently spoke about this topic to the students at DADIU (the National Academy of Digital, Interactive Entertainment), with the aim of showing what it’s like to work as an artist in the ‘real world’. We wanted to share her story, experiences and reflections from her 2 decade long career in this article.
The highs, the lows and all the good stuff in between
Hi all, my name is Anne-Karina, it’s lovely to e-meet you!
My journey into the world of art started at the Animation Workshop in Viborg (a tiny town in the west of Denmark), where I enrolled into a course in character animation (called KIKA). This was back in the olden days with 2D hand drawings and flipbook animations. Something really awesome about that education was that our teachers were people from the business, from companies such as Disney and Pixar, and it was incredible to learn from them.
After graduating, I worked as a freelancer for a couple of years, mainly as an animator. One day the principal of the Animation Workshop reached out to me with a potential job opportunity. He’s apparently been getting a lot of calls from a company and he asked if I’d be interested in talking to them. I decided to call them, got the job and this is how I ended up in gaming!
The company I was working with was developing PC games and my role involved a lot of hand drawing (this was back in 2006). But soon after that, PC games started declining and mobile gaming started growing (first iPhone was launched in 2007 👀). My company bought the Hugo IP and I started working on 3D more, focusing on the boardpieces, the icon and characters. This was when I really got into rigging, texturing and modelling, figuring out everything on the go and learning as I worked. My foundation for 3D was basically a 1 week course we did at the Animation Workshop, but the design principles are not different from 2D. Yes, you do get another dimension and you can’t just draw your way out of things, but the basic design principles I learned during my education were the same. The hardest thing was learning the software (Maya), but luckily I am very tech curious and love building bridges between tech and art. This is why I truly believe it’s important to have the mindset of learning – it helps with picking up new skills and adapting to the ever changing world we’re in.
Then in 2016, Tactile approached me and I initially said no because I wanted to stay within the world of 3D. Unfortunately, 1 year later my company shut down its Danish office and I was out of a job. Tactile stuck in my mind and so I decided to follow-up with them. As I’ve already done the art test the previous year, the process moved really quickly and I basically started working there a week later! The first project I worked on was Disco Ducks. After that I moved to Bee Brilliant and finally, to Lily’s Garden. I started rigging characters, modelling, animating, and setting up the entire art pipeline. Again, by keeping my mind open and focusing on the whole package, I started taking on more and more responsibilities.
An optimized art pipeline
When we are making games at Tactile, we first spend a lot of time trying to figure out what players want. We do so through user research and extensive data analysis (we get loads of data from our players, the devices they’re playing on, etc.). We also of course want to make a game that people actually can play. If the game sucks so much battery life that your phone keeps dying, or the app keeps crashing, or your device gets too hot when using the app, then it’ll eventually stop people from playing. This is why optimisation is so important and something to always be aware of! Making all this work is not just on QA and programmers. It’s a collective effort of all departments and Art has a big responsibility in it.
I want to illustrate what I mean by giving you a little run-down on how we handled the ‘heavy’ 3D character pipeline on our Makeover Match game, which I’ve been the 3D Lead on. The 3D process can seem a bit mysterious to those who haven’t worked with it, especially when colleagues come over to my computer and I’m working on a skin texture for a character and it looks like I flayed some poor cartoon character alive to do my evil deeds in Photoshop 🤣
Well here’s Emma from Makeover Match. Let’s have a little look at how she got from idea to finished game asset.
In the end we have an optimized 3D character pipeline, ready to produce a bunch of new characters.
Specialist vs. Generalist and the importance of having a portfolio
Now you’ve learned a little bit about 3D in the ‘real world’, but how do you decide what direction you want to go in if you’ve just finished your studies (or are about to)? Should you become a specialist, or stay more of a generalist? As a generalist in gaming, your skills will be highly useful on mobile and indie projects, whereas specialist roles exist more in AAA games.
A great place to start is having a portfolio. But what makes a good portfolio? In general in the Art craft, we all have the tendency to want to look at and make really neat pieces of art, so sometimes we get ourselves lost in the details before we have even built a proper foundation. I have looked through many portfolios full of highly realistic Zbrush assets. Whilst these are really neat and impressive, they don’t give me an understanding of whether this person can actually contribute to a production pipeline of stylized, low-poly 3D characters.
So when I look at portfolios, I want to see your work process. How do you texture? Do you have an interest in color and design? Have you been learning design basics from the old masters? I want to see behind the glossy surface, so that I really understand what you can do. If you can also show me that you understand the game engine you’re working in (whether it’s Unity or Unreal or something else), you’re very far along!
Grow your skills, but don’t forget the basics
Let’s take a look at a practical example.
A bird… I want to draw a bird. I start in one corner and draw some sort of a bird, but I’d like to stop myself and see if I can do better before I lose myself in starting to render this ‘masterpiece’
Construction… Yes, this part can sometimes feel boring and even mechanical. With the first few attempts you’re figuring out the actual geometric figure which will help you draw well-constructed drawings later, but the process feels clumsy and stiff. But I promise if you keep going, your hand and brain will start relaxing and you will soon get a looser style, whilst still keeping the technique underneath! The beauty of digital art is that you can make as many layers as you wish, so try and try again. And CTRL+Z as much as you want.
Keep practising the underlying construction and you can render in whichever style is needed for your project. And when you really understand the shapes…
… and your art director says: “Nooo, I want a different angle!”, you don’t panic! You can do a different angle easily. You build it with the shapes and as always, remember the perspective.
This really goes for any type of drawing, and very much for 3D modelling as well. Understanding good design, pleasing shapes, good silhouettes and ensuring the edge flow is good no matter how you twist and turn your character are just as important in 3D art as in 2D. The point is that you need to work on the foundation first in art. Whether it’s 2D or 3D, don’t forget the basic principles of construction and perspective. Keep training your craft!
Besides all of this, you also need to be open to doing some things that are maybe not so exciting, or not exactly your style… Remember, they don’t always have to be, you’re doing a job.
Working with styles or stories that aren’t for you is bound to happen. My own example of something I might not loooove making a game about is needlepoint work. BUT, I would research it intensely and make the best needlepoint game art ever, I promise! That’s what our craft is and that’s what a good game artist can do – make game assets following the vision of someone else. And do so well. For ourselves, we can do projects on the side which will quench that thirst of creating something that is really our vision.
So the best piece of advice I can give you is to keep learning and stay flexible in styles. Adapt to whatever game you’re working on, even if it’s not your ‘specialization’.
Something that can help you with this is strong team collaboration. Rely on your team to give you feedback and help direct you in your work. Taking feedback is not always easy, because you’re likely to get triggered. We pour our heart and artistry into our work and then someone comes by and totally tears us down – or so it feels at the time. Some critique or feedback is great, some is good, some is unfair. Some is not delivered in a great way and some can be seen as a matter of taste. But if you build a good foundation of trust within your team, you can always find something useful to take out of the criticism you receive. Being able to take critique is key to becoming better in your work.
Keep learnin’, keep learnin’ and embrace new tech
I would like to wrap up this story by saying – keep your mind open to learning new things, it will make you a more diverse artist.
In the generalist mindset, I encourage you to have diverse interests and learn more about how the world works, about fashion, book binding, cooking, other cultures, philosophy, maybe even needlepoint embroideries 😉, so you always have something to draw inspiration from. Also learn more about the market and players you’re making games for.
Just don’t be like Blockbusters …
… They didn’t believe in streaming and now they don’t exist. We have to deal with reality however little we like it at times. New technology can be scary and it is getting better extremely fast. But, I will say this… AI is just another tool and let’s face it, it’s here to stay. So just like streaming movies instead of renting physical copies, learn about the new technology and see what it can do for you. Is there some tedious work it can take care of for you so that you can focus on the creative part? AI is here and we have to adapt to this wild new reality as artists and game makers.
So learn new tools (yes, jump on that AI train), figure out how to make it useful for your work and be curious, always!
I want to leave you with a final thought …
I think that working with games is a little bit like our friend Indiana Jones here. Trying to find the right formula to get the gold – making that next game a real success. Sometimes we end up running with a boulder chasing us, wondering what in the world happened…
… And sometimes we end up getting the gold and getting away with it all! I hope you all get to learn from a bunch of lovely failures and successes and make awesome games in the future. I can’t wait to play them!