Marshall has entered the soundbar market with the Heston 120. For the product launch they wanted interactive visuals for their online stores. Since they’ve partnered up with us at Animech before, we again had the privilege to be part of another exciting launch.

Realtime models

By now, Marshall is no stranger to using 3D in their online stores. Animech started delivering web optimized, AR ready models to them in 2023. These were designed to be used on retailer websites, and are now referred to as eTail models. As of early 2025, we’ve created 12 such products, often in 2 or more colorways. Heston 120 bumps it up to 13 models, and this is how we got started working with the new soundbar.

The workflow was pretty much the same as previous eTail models. We started with the customer’s CAD to create an optimized 3D model in 3ds Max. We UV’ed the model and packed it into a single texture sheet. Then we brought the model into Substance Painter, where we textured the whole thing. Finally we set up the model with materials in Blender, and then exported it as a GLB and USDZ file.

Rear of Heston 120 etail model

The eTail model still had to adhere to the previous size limit of 5 MB. With a large product like this, we had to use a few tricks to make it work. We reused as much texture space as possible by using symmetry and instancing. One part where we couldn’t use symmetry was the woven cover. Also, it is such a long object that if UV’ed as a single piece, it would make everything else tiny in the UV sheet once packed. Therefore we had to cut the cover into sections, which allowed us to pack the UVs more efficiently. This meant however that we had to use triplanar projection when texturing, or else the seams would show. And since the woven cover has a chamfer radius, we had to finagle a bit with the projection to minimize texture stretch.

Breakdown fo Heston 120 materials
Wireframe of Heston 120

Showroom

In addition to the eTail models, Marshall has started implementing realtime 3D on their own website too. These models are used to highlight key features about products, by providing hotspots with talking points. For Heston 120, we reused the eTail model, but since we’re not limited to only 5 MB, we could use much higher quality textures.

Exploded View

As part of the Heston 120’s launch, Marshall wanted yet another type of visualization. They wanted to highlight the Heston 120’s array of speaker elements. Their vision was an exploded view animation, where each type of speaker separates from the body and has a few talking points. Marshall decided to implement this as an image sequence on their website, letting the user scroll through the animation stages. The images were rendered using a traditional offline render workflow.

We started with the same CAD model as before, but used much higher tessellation. We of course kept all the internal components too. After grouping the relevant components, we could start animating. It’s not a complicated animation by any means, however the timing, order, and camera angle went through multiple iterations. To allow for quick feedback, we mainly provided viewport previews at this stage.

Between iterations, while waiting for feedback, we worked on the materials. Instead of texturing the whole model in Substance Painter as with the realtime models, this time we created tiling materials and exported them as separate 4K texture sets. In 3ds Max, we then set up Physical materials using a mix of textures and values. For some materials we used special features such as Subsurface Scattering and Anisotropic reflections. The ground plane is a Shadow Matte, which only contributes to the alpha channel. To break up the harsh corners we got from the CAD model, we use an edge-rounding shader for pretty much everything in the scene.

As for the lighting, we started off by using the same HDRI as the realtime models use. However, we quickly realized we needed something more flexible and controllable. Therefore we replaced the HDRI with actual light primitives, which allowed us to direct the lighting exactly how we wanted. One example is that we change the light when the woven cover comes off, or else the internal components would be too dark.

The images were rendered as 4K 32 bit exr:s in ACEScg. We rendered the sequence in two main passes — one with the woven cover, and another without it. This gave us flexibility to fade out the cover in comp. There was also an issue where some speaker elements were moving through the body of the soundbar. We solved this by rendering the speakers as a separate pass, and then simply composited them over the main pass on the affected frames. When pixel peeping, you’ll notice that the reflections don’t exactly match up during these frames, but it’s not something that’s visible when viewing the animation.

I couldn’t help myself but to create a few closeup renders, just for the fun of it.

Closeup of Heston 120 UI panel
Heston 120 top speakers
Heston 120 rear speakers

Closing thoughts

I was responsible for pretty much all of the 3D and video work on Heston 120. The eTail model provided the usual challenges with the file size limit, and the Showroom model was a breeze in comparison. It was really fun to work on the Exploded View animation, since nowadays I don’t get to use offline rendering as much. Having the renderer just work, with realistic reflections, lighting, and material behavior is such a relief. The downside of course is the render times.

It’s been a long time coming, but now the Heston 120 is finally released. I’m very proud of our work, and looking forward to our continued partnership with Marshall. Please check out the product page on Marshall.com, where you can find the realtime 3D in the gallery, and the Exploded View animation a little further down the page.