3D Doesn’t Always Mean Games or AR: 3D Seat Map

Virakri J.
DanSiam
Published in
5 min readAug 6, 2019

Most people’s first ideas when hearing about 3D graphics in a mobile application are games or augmented reality. It makes perfect sense given that the majority of 3D technology deployed today is in those two app sectors. However, there is still lots of space to experiment with mobile 3D technologies in new directions.

The capacity to see virtual things or environments is a significant feature of 3D graphics technology, which has been recognized and applied for decades in engineering and architecture (CAD). It allows people to better grasp substances without having to see or experience them in person, which greatly assists audiences in visualizing such things.

Many businesses, such as hospitality, transportation, and ticket suppliers, allow consumers to choose certain seats or areas before utilizing the services. Because we live in a digital age, this strength has been transferred to the mobile application, which is known as a seat selection function. The feature’s goal is to help consumers firmly understand what service they will get and to make them think they have control over what they want. However, most applications with this function build it by using some basic graphical appearances and buttons to represent their space on the screen, which does not genuinely improve users’ trust in understanding the space, but is more likely to mislead users.

As 3D graphics technology is significant in visualization, seat booking applications may profit from it, as the spaces of the seat map would be much more effectively conveyed in 3D visualization, allowing users to comprehend the space facilities with certainty.

Many people may believe that incorporating 3D into an app is a challenging task that demands a great deal of technical attention and diverse expertise. However, implementing 3D technology in the present may be far easier than people believe.

When you talk about 3D graphics technology, most mobile engineers and product people think of game engines like Unity or Unreal Engine. This is because most people who use 3D graphics do so in the gaming industry, which mostly uses those two game engines. When you use these frameworks, making a 3D experience is much easier than when you use a lower-level framework like Open GL. This is because these frameworks come with a lot of tools and ready-to-use functions, which lets engineers focus more on the user experience and less on tedious math problems.

Despite how popular these game engines are, they are rarely used for anything other than games or fully immersive apps. The reason is that they were mostly made to be game engines, and it turns out that the whole experience in the apps needs to be wrapped around a game-like user experience, which is not good for other kinds of apps. More apps are thinking about using these game engines. For example, apps made with game engines take much longer to load than regular native apps, and they’re also much bigger.

SceneKit is another another intriguing 3D framework created by Apple, and it is included with iOS by default. SceneKit is far less widespread on the gaming industry than other well-known game engines since it is platform-specific, but its primary advantage is that it can be easily integrated with the native experience. In contrast to other gaming engines, your 3D experience is an integral component of your whole experience, and not the other way around. SceneKit does not need any external core engine to be preloaded in order to render the application, so its loading time and size are comparable to those of other native applications.

With the ability to use 3D technology in the seat booking feature and SceneKit, a framework that enables the 3D experience to execute native behavior in the applications, I decided to investigate and create a prototype of a 3D seat booking app to demonstrate what may possible be done in the iOS app.

The flow of the booking experience is included in the prototype app. The first view is a criterion display that enables users to pick the departing station, destination station, date, and time. Another view is a train selection view, which allows users to choose a train at a certain time. There is a seat class selection screen that allows users to pick the kind of seat they desire. A seat map view is available to enable users to choose a specific seat. There is also a summary view, which allows users to review what they have chosen before completing a purchase.

The 3D Seat map view is a highlight of this prototype, which is powered by the SceneKit framework and includes 3D elements and interactions. The goal of this feature is to push the boundaries of non-game 3D user experience while maintaining consistent native interactivity throughout the flow. This is the link to get access to the prototype through TestFlight if you want to check it out for yourself.

Making the seat map in 3D was a challenge from both a design and a technical point of view. But it’s fun to take on these challenges. There are two more articles about this project. These articles are from an engineering point of view and talk about the details of making this project. Link to the article The Making of a 3D Seat Map: Engineering Episode to find out more. Also, this project is an open-source project, so if you want to learn more or help with it, you can visit the repository.

With today’s powerful devices and 3D technology, we have a lot of chances to find creative ways to make the user experience better. So, keep having fun exploring! I’m excited to see what you make.

--

--

Virakri J.
DanSiam
Editor for

Design Technologist, Prototyper, 3D Interaction Designer, UX Engineer, whatever you may call.