Luminous Productions' developers took the stage at CEDEC 2021 (Computer Entertainment Developers Conference 2021), which was held online in August, 2021. In this interview, we will be revealing additional details that were not included in the presentation, along with the speakers' thoughts and sentiments behind the development.
■The speakers of [Using NVIDIA Omniverse for Remote Development in Luminous Engine]
―Could you start off by giving us a brief overview of your talk?
Ono: In this presentation, we talked about the process of integrating NVIDIA Omniverse (hereafter referred to as Omniverse) into the Luminous Engine developed in-house here at Luminous Productions, and how we managed to facilitate large-scale game development, which is essentially one of the Luminous Engine's specialties, in a remote setting. Our presentation consisted of two parts: Bryan Dudash from NIVIDA Corporation gave an introduction of Omniverse in the first half, and Lee and I presented case studies from our integration process in the second half.
―What made you to choose this subject?
Ono: The huge increase in demand for remote development as a result of the pandemic is undoubtedly one of the reasons we chose this topic. That said, one of Luminous Productions' primary objectives is to embrace and appreciate different work styles in order to maximize individual employee performance, so we have been thinking for some time about ways in which we may facilitate large-scale development in various settings. And it was in those discussions with the NVIDIA team when we thought it might help us enhance our development environment if we could effectively leverage Omniverse with the Luminous Engine.
― What was remote development in the Luminous Engine like in prior to this initiative?
Ono: We normally work on our PCs at home, but due to difficulties like network speed and SSD capacity, we also have PCs set up at the office with remote desktop enabled, allowing us to work on both the PC at home and one at the office. In terms of Luminous Engine, we sought to overcome difficulties by compressing data, reducing the amount of updates, and speeding up loading in order to allow development to take place in as wide a range of network conditions as possible. However, this alone did not address all of the issues that must be addressed in order for us to operate comfortably.
―Given the pressing need to go remote, what was the biggest obstacle for the Luminous Engine team?
Ono: For a large-scale development, updates made in a single day can exceed several hundred gigabytes, and without the adequate network environment, it could take several hours just to synch the data, which inevitably causes delays in our work. As such, we had the impression that there was a limit to how much we could achieve on a local PC.
―When it came time to integrate Omniverse, how did you split up the responsibilities between the two of you?
Ono: I was responsible for implementing communication processing for the Luminous Engine and Omniverse, which enabled models, lighting, camera placement, and parameters created on our engine to be exported to Nucleus in .usd format for synchronization.
Lee: Since the assets on the Luminous Engine are in a unique format, they needed to be converted into USD and MDL formats in order to be rendered in RTX Renderer. In addition, we wanted to be able to edit USD and MDL files with DCC tools and have them reflected in both the Luminous Engine and RTX Renderer, which meant we needed the ability to convert the files in the other direction as well. I was in charge of this conversion part of the process as well as USD format support for models and MDL format support for materials.
―What were some of the challenges you encountered while working on this initiative?
Ono: Because Omniverse is multifunctional, designing the integration method itself "how to integrate it into the Luminous Engine" as well as the environment "what sort of remote environment should we construct using Omniverse" proved to be challenging. Naturally, the directionality that Omniverse seeks as a platform and what the Luminous Engine aspires to achieve are not completely in alignment, so there had to be a lot of discussions before Omniverse could be utilized in actual game development. Despite this, we were able to take on challenges on the Luminous Engine side, such as conversion between USD and MDL formats, and also carried out testing over ongoing discussions with the NVIDIA team. So, in the end, I'd say we managed to make effective use of Omniverse.
―How was your collaboration with the NVIDIA team structured?
Ono: First, the NVIDIA team gave us a thorough overview of Omniverse. Following the overview, we went on to conduct testing and explored how we could utilize it. From there, we had remote meetings every week and also communicated constantly via chat, through which we received recommendation on server configuration, implementation methods, and so on and so forth. It was very helpful since, while we were familiar with USD, this was our first time using MDL format.
―We understand you handled all of the conversion work yourself - what was your experience like?
Lee: When I worked on MDL support, I used text editors like Notepad to write source code for handcrafted materials. Because it was impossible to know if the source code was written correctly until I imported and parsed it using the MDL SDK, I went through a lot of trial and error at first. Luckily, I got the hang of it the more I wrote, and the amount of materials I had to deal with for this initiative wasn't too large, so I was able to go through implementation steadily.
―Without so many case studies to draw on, your tasks must have been extremely challenging. Did you also work closely with the NVIDIA team, Mr Lee?
Lee: Initially, I referred to the official Omniverse documentation as I worked on implementation, but I also communicated with the NVIDIA team on a regular basis for minor problems that were not covered in the documentation. Essentially, I'd go to Bryan first to discuss whatever issues I was experiencing. And if we couldn't come up with a solution, he'd direct me to an expert in the relevant field, and that was pretty much how we addressed each problem.
―You mentioned during your presentation that in order to utilize Omniverse in a more practical manner, you will need to build an environment in which all the data for the entire game is managed on a server - do you think that will be accomplished in the not-too-distant future?
Ono: There is still a lot of work to be done before the data of the entire game can be managed with Omniverse. We loaded terabytes of data on Nucleus to test it, but didn't see the results we had hoped. We could use a system called Drive to use file I/O as-is, but it has yet to produce consistent results. So, before we can actually use Omniverse for large-scale game development, we'll need to see progress in these areas or modify the mechanism on the Luminous Engine side, which could take time and makes using Omniverse straight away difficult. That being said, having the opportunity to test Omniverse this time has certainly broadened my knowledge about data management, and I hope to continue exploring a variety of approaches to make the integration a reality.
―Following your presentation at CEDEC 2021, the audience was invited to participate in an in-depth Q&A session called "Ask the Speaker." What did you discuss in the session? Did you get the impression that some of the audience members were struggling with remote development?
Lee: We received questions about implementation methods from people who, like us, are developing a converter that converts files to MDL format. They were applying similar conversion methods and running into the same challenges we were, such as difficulties matching images on two different rendering engines. We were delighted to hear that they found our case study helpful.
―The Luminous Engine continues to evolve year by year - could you share with us your future plans for the engine?
Ono: We are working on a large-scale development of an open world game with the Luminous Engine as we speak. We've been putting a lot of effort into enhancing features suited for open world development, such as fast data loading and a world editor, in addition to, of course, beautiful graphics. We're excited to be able to show you the fruit of our effort soon, and we hope you are as well.
―Lastly, do you have any message for the audience of your talk as well as the readers of this interview?
Lee: I think that remote development is increasingly becoming a common practice in the video game industry, as it is in the software industry, and that we should build an environment where remote working can be easily facilitated. In that regard, I hope that what we are trying to achieve with the Luminous Engine will benefit as many people as possible, so if this topic is of interest to you, I invite you to watch the archived video of our presentation, which is available on the official CEDEC YouTube channel and does not require a CEDEC conference pass to watch. Furthermore, we're also making our presentation materials available on this page, so please have a look at these as well.
Ono: The Luminous Engine will continue to evolve, so if you'd like to be a part of our journey, please apply for a position from our careers page (LINK). As with this initiative, opportunities to collaborate with other companies are essential as we continue to take on new challenges, and we'd love to hear from anyone who is interested in collaborating as well.