Last week I reported on our new standing desks, our refurbishment and repainting. This week we moved out again. We’ve been following government advice regarding the COVID-19 pandemic but it was becoming clear that we were heading for more stringent controls. This was our week.
Toby – Our leader, mentor, friend, and all-round wonderful human being
It is my responsibility to ensure business continuity regardless of the challenge we face. As such I decided to ease us all into working from home to give us time to adjust; on Tuesday I gave everyone the option to work at home, but Friday was the last day in the office for most of us.
Now the majority of the team are working remotely; I say the majority because two of us live very close to the office, require no form of transport and can inhabit an office building each.
We’re in a more stable financial position than many other small companies across all sectors, so I’m hoping that government steps in to help and very quickly. Our team’s jobs are safe, everyone will get paid, and we’ll continue to pay full salaries as and when they’re not well.
I believe the switch has gone smoothly. We have the technology infrastructure in place to support such a working model and so our customers will not suffer.
It’s critical that everyone in the team is as happy and as healthy as they can be. So we’re taking the opportunity of increased productivity to set up virtual spaces where we can have some fun, as well as work to ensure isolation is a bit more bearable. More on that in our next missive.
Cat – Lead Programmer
What a week!
This week we made the transition as a team to work from home. Technically, I think the transition has gone well – our tools already support remote access, so there’s a bit of a slowdown but nothing’s broken.
It’s a little lonely not being surrounded by the team or being able to test things on each other’s machines, but at the same time it’s nice to finally have speakers!
Aside from quarantine, we’ve been doing research into our graphics capabilities, considering our asset pipeline and trying to squeeze as much performance out of our systems as possible.
Working with Jordi and Kyung-Min we set ourselves the goal of packing as many good-looking cars onto a motorway as possible. For my part, I took on the challenge of making huge amounts of traffic flow naturally down a motorway, while keeping framerates high.
To accomplish this I wanted to use Unity’s Jobs system, which is an interface for writing code to take advantage of multiple CPU cores. Games have traditionally been mostly single-threaded applications, where every object gets updated consecutively every frame.
Which is fine for small numbers of objects, but once you start to deal with larger numbers it’s easy for it to slow down the whole application. By specifically writing a task (or Job!) to be split across all the cores available you can speed up its execution by a factor of how many cores you have to throw at it. In my case, that’s eight times faster!
We’re still a little ways off putting this traffic system into our projects – at the moment the wheels don’t spin, and I’m not sure where to start with making it networked, but it’s showing a lot of promise as a way to get lots of cars everywhere, efficiently.
Josh – Programme Manager
Fortunately for all of us here, this entry will not make much reference to CORV-19. I think at MXT we’re all aware that it’s quite a privilege to be able to use work as respite from the madness. We’ve made some small changes on Tuesday to how we work and we’re now business as usual albeit a couple of people are now working remotely. Hoping that applies to everyone, sooner rather than later.
This week was a review period, a one week opportunity for our client to make meaningful changes to the project, while simultaneously allowing the delivery forecast to be unchanged. Once it’s done, it will be approaching seven months of development; six sprints of three week durations, at pace.
These iteration periods are also a welcome opportunity for us to switch it up a bit, improve our internal tools and processes, do some R&D and generally prevent fatigue.
This week included some amendments to our Art Pipeline which was flagged as an issue last week and the results were applied to a test high definition render pipeline (HDRP) project that we also wanted to experiment with.
In theory, HDRP will bring ‘next-gen’ graphics to Unity, but so far the results are mixed and probably covered in much more detail in the other posts.
I also organised the completion of those tweaks, but largely left the R&D exercise to the people that know what they’re doing.
I did however organise our new inventory management tool, it does do some very whizzy things but ultimately it’s a list, on which we have everything we own. Our (my) lack of inventory management has been a running joke for nigh on two years, but who’s laughing now!
Stefano – 3D Artist
This week I started working on the complete dog animations, putting together the reusable little pieces of animations I made last week.
Normally I concentrate on animation curves, keyframes, and every little thing that can easily make you lose the wider vision of the movement of the dog.
I found this method makes you really feel like you are working with video editing software, where your only concern is on having fun getting a dog to move. That’s because I have already prepared those pieces of animations, and now I can concentrate on easily mixing them to generate a long complex and believable animation.
I’m continuing to learn things about dogs that I never noticed, despite having had two.
Sergio – Programmer
This week I had booked a holiday but wasn’t able to travel so had a Staycation before coming back to the office if only to collect my things in order to work from home!
Slava – Lead 3D Artist
This week I was working on two major tasks, one of which was the preparation of new car model for performance tests of our new traffic system. The other task was recording walkthrough videos of three finished projects and some more videos of project building processes by different members of the MXTreality team.
Then… we all got sent home to avoid the dreaded virus.
Kyung-Min – 3D Generalist
It’s never a quiet week here at MXTreality; many changes and unexpected events took place over the week ranging from things going missing to an all-out global pandemic! But that’s not enough to stop us.
If anything, this pandemic is proving how suited we are for such situations and the necessity for our working space to evolve with the times, as we develop a means of integrating at least some parts into virtual and augmented realities.
MXTreality shifted gears and changed to a remote working structure. Having worked in such conditions for a long time while freelancing, I am confident our clients will see no disruption to our service.
We are pushing on and soon we’re planning a big meeting for all of us in virtual reality! While our first meetings will be in a preconstructed place we have also discussed further projects that we are developing that will take these concepts further, maybe even remake our office in VR?
For this week’s work, I have been focused on developing the new MXTreality pipeline while working on an R&D project based around unity HDRP, documenting the development and test for a new artist pipeline structure.
I was also put in charge of the activation of raytracing that proved more troubling then initially expected, but all came together on Friday with stunning results.
RTX is the latest in graphical innovation that was pushed into the industry but only a handful of top-end optimised games currently support this technology as it is extremely demanding to work with – it has always been the holy grail of interactive 3d media.
Currently there are no VR experiences or games that utilise this technology because to succeed in VR would mean that extreme optimisation times two – but that is exactly what we have been doing.
With the team of skilled programmers and the optimisation of our art team here at MXTreality, I’m confident that we can create something what has never been done before. This isn’t just RTX on, this is MXTRTX on.
Jordi – Programmer
This week we’ve been doing a lot R&D work. Specifically we’ve been trying to build a road with dense traffic using the latest technologies from Unity: HDRP and ECS. The focus of the test was to use the features of the HDRP to achieve a great visual fidelity without losing too much performance, whilst using the ECS to update a large number of objects efficiently.
I focused primarily on the HDRP part. Specifically in optimizing the cars, so we could have a lot of them on screen, which is an issue we found during our projects. After proper optimization we were able to paint a screen full of cars:
The next step was to test the performance of the lighting system, so we switched on the lights of the cars. In this case Unity’s performance wasn’t as good as expected, but we still managed to put a considerable number of cars on screen.
Finally I’ve been working with the post-processing to achieve a better ambient, and putting it all together with the scenario we achieved this: