June through to July this year (2024) I was out in Riyadh, Saudi with Bright doing the E-sports world cup, previously known as Gamers8. This was the third year doing this with Bright and the gig has grown considerably since year one which feels like so long ago now.
The event revolves around some of the best esports teams in the world who have been through various stages to get to compete in the world cup in Riyadh. A multitude of games are played over a course of several weeks culminating in a grand final based between 2 teams with the most cumulative points.
Year one we had one main games arena for the playing of the games and one studio for commentary during and between the games, all if this being streamed to various online platforms mainly twitch and youtube.
Both the studio and the arena had multiple AR elements to the show to have game characters appear onstage in camera next to the players and also a very grand opening sequence which started the games each day.
With two and a bit weeks setup before the the first event there was a lot to do, Stageprecision was used throughout, a team spent about a week calibrating the camera lens for all postion’s creating a lens profile to match the exact camera body it was attached too. This was then used to take into account the lens distortion when overlaying the AR which came directly form Unreal via the Stage precision Shield plugin.
In addition to controlling all of the Unreal nodes for the AR, stage precision was taking in all of the game logic API and based on events in the game it was then sending triggers audio lighting and disguise. This meant when there was a “spawn” or a “kill” event in the game LX Video and Audio would be triggered at the right time for the correct look or sound stem.
And another thing SP was handling was the tracking data coming from the cameras, reformatting and offsetting the data to get the physical and the virtual worlds aligned so the AR looked correct. All of the cameras had a Stype Red spy system on, apart from the spider cam which had its own system. We had quite a few issues with the spider cam data drifting and needing resetting quite often which was a bit trial and error to start with but once everyone got in the swing of “how to make it look right” we were golden. The Spider cam tracking looks like it works great when you see it on a stadium size gig but for our purposes it didn’t really cut it for the accuracy we needed in this smaller size venue (more on this later).
This was the control position for year 1 in the same arena as the games were being played, we were behind the seating bank and as with most gigs in Saudi it was a building site for the first couple of weeks. Everything was continuously covered in dust and the temperature swung between hot and cold as the people who were in charge of the building tried to get the correct air-con setting.
I was operating d3 on the gig which was delivering all the content to the led and rendering scores to the led via a notch block running over renderstream from RX servers. The notch block got the games score data from the API via SP and we also got indirections from the games engine API via SP which pulled up the correct player/team name before going to a particular cue. All of this was triggered by a button push on a streamdeck that sent a command to SP which then pulled infor from the games API and sent the relevant triggers to multiple departments.The whole system integration was complex and had a lot of moving parts, the above is just a few. And to those who are reading this who got lost in the terminology heres a breakdown.
d3 : disguise media server
Indirection : The terminology when send sending a file path string to d3 to display content in a video layer/module
Notch : realtime rendering engine that can be played and procedurally updated within d3
Renderstream : disguise’s proprietary system for sending a video stream over a network
RX : Rendering machine part of the disguise ecosystem
SP : Stage Precision live event and production toolkit
API : Application Programming Interface, a way to pick up data from a computer program over a network.
Everything worked smoothly except renderstream which would crash and bring down the servers after running for around 5 to 6 hours and most of our broadcast was around 8 hours each day. The disguise devs were great and we spent a long time with them trying to identify the issue but it was never resolved. In the end we moved the notch block to run on one of the local Gx machines which worked a treat.
That was a brief recap on year 1 of Gamers8 now we fast forward to 2024 where the event has grown considerably from 1 arena and 1 studio, in 2024 we had 3 x arenas, 3 x English studio’s and 3 x Arabic studios. Usually I’m out for the setup for this but this year Matt & Pillerin were holding their wedding party which Kristaps & myself were attending. This meant Kristaps, Matt & myself didn’t go out until 10 days into the setup which as were all kind pleased about. The celebration was really nice, we all met in Tallin, Estonia and enjoyed a great party and generally just hanging out
After flying home from the party, repacking and sorting out the flat I was on a flight the following day to Riyadh, with a quick stop in LHR where I met Adam for the next flight and we arrived in Riyadh late that evening. The following day we all met the team who had been here for the last 10 days and heard all the horror stories of the site not being finished which still didn’t really prepare us for when we got onsite and seen ourselves how still unfinished it was.
The building was sill being built when we got there, windows were missing, the toilets were still being constructed and the air-con didn’t work. It was at this point i actually realised the extent of the shitty environment the guys had to endure for the first couple of weeks before we got there and they had done a great job managing to get everything in.
In 2023 all the operating positions for each stage were in the same arena that the stage was in, either operating from behind the set or behind the bleachers. This year we had a unified control room with the servers at the stage and all remote KVM to the operating positions. Being in one space had its pros and cons, it was nice that it was quite social being able to see each other and bounce ideas between us. The down side was that the space was just too cramped and got quite noisy, nice idea, just needed more space.
For the first week we were onsite for one day, off for three because the content wasn’t read then back in for the remaining 3 days for some frantic programming and collectively figuring out how the show should opperate and fit together with all the other departments. I think it was on the 4th f July we were meant to have our first full rehersal with all departments but that turned into a slow stumble through. Everything was delayed generally hampered by the building flaws the general struggle to get things done in the Saudi environment
Rehearsal’s, once we got into the swing of them were supper slow, there had been constant changes between different departments and quite often early on these changes weren’t relayed to everyone. This mean that when I hit that button on the stream desk it didn’t always turn out as expected. Sometimes the wrong states/character’s were being displayed and I spent quite a bit of time on coms with he various departments figuring out if we were sending he wrong command or they had programmed the wrong “pickup” at their end.
Eventually we were all lined up across departments and things were working as expected, the AR looked great so crisp and the tracking was really tight. I was there for only 2 weeks of games which was enough. All of the interesting and challenging stuff happens in the install and set and after that I just became a button pushing monkey with a bit of managing communication between departments.
It was a good few weeks working with friends, making new friends and hanging out in an dusty parking lot between construction equipment waiting for Ubers.