We recently had Simon Brown, aka DrBeef, in our virtual studio for an interview and recounted his path from the first Oculus Rift development kit and building a rudimentary positional tracking system for Gear VR to his most recent ports of Doom, Return To Castle Wolfenstein and even Doom 3 to the Oculus Quest standalone headset.
Check out the roughly 23-minute interview here and read along with the transcript below:
Starting Out With DK1
UploadVR: Welcome to our studio. This is Simon. You are better known as DrBeef. We have DrBeef in our studio. You feel like royalty to come into our studio after all you’ve brought to the masses out here. Tell me how you started becoming a VR developer and what got you interested in it in the first place?
DrBeef: It goes all the way back to the original DK1, the very first Oculus dev kit, you know, I’ve always enjoyed gaming. When I first sort of stumbled across the Kickstarter I’d missed the opportunity to actually get one of the original Kickstarter units, but I signed up as quickly as I could to get hold of the original dev kit. And it sort of went from there. I mean, obviously those early days, there wasn’t much in the way of content. So there was the old sort of tech demo that people had thrown together. And then there were things like injection drivers. I think a lot of people are aware of VORPX, which is sort of one of the more popular current ones. So I got involved fairly early on in Vireio Perception, which is basically a DirectX 9 injection driver that allows you to play some of the games that you’d normally play on your monitor on the dev kit. And it kind of went from there really. So I just sort of started tinkering with that project. Got involved in that and moved on up the dev kits through the DK2. And then I got a Gear VR and I started doing a bit of dev for that. That’s where Quake first happened.
The rest is history, really.
Quake/Half-Life/Doom/Return To Castle Wolfenstein/Doom 3
UploadVR: List off all the games that you have sort of ported to VR. Give us the full list.
Dr. Beef: First there was Quake, then there was Half-Life then I think it was Quake 2 after that QuestZDoom then Return To Castle Wolfenstein. And then most recently Doom 3.
UploadVR: That’s quite a collection and I’ve been constantly blown away. It was amazing to go into the original Doom, alone. You’ve got those cardboarded textures kind of rotating at you, but it still feels like you’re actually in those rooms. Just the sense of presence is really stellar in there. Was it a surprise to you that you could actually get Doom 3 running on a Quest?
DrBeef: Yeah, very much so. It always been one of the goals is to attempt it at some point and it was never a certainty. If we’d literally just taken the original source and tried to make that run in VR, it would be a subpar experience, but there’s a chap called Emile, better known as Beloko, who has done a number of Android ports of a lot of this sort of classic id software games. And he’d actually implemented a multithreaded renderer for Doom 3. And that was a really good starting point. So we took that and we got that running on the Quest and it worked very well, but it wasn’t quite fast enough. So we then added OpenGL ES multi-view, which is the sort of approach where it can actually draw the two eye frames without having to do all the backend processing twice. And that was enough to make it just run smoothly as it needed to on the Quests. From that point forward, it was just great, really, but it was something of a surprise to actually be able to get Doom 3 running as well as it actually does.
UploadVR: And that one still runs on the original Quest. I guess I’m wondering if you decided to port something that was Quest 2-only, how recent do you think you could go with a game. And is there a dream game that you would like to see ported? Or have you already gotten there?
DrBeef: The problem is there’s a dependency on the actual software being open source. As far as modern games go, I think Doom 3 is kind of — I’m quite happy to be corrected — but Doom 3 is probably one of the most recent well-known popular games that actually has its engine code open source. After that point, I think, id software stopped doing that. There’s not many games studios where they actually open source their engine software. It’s a bit of a shame. The game I would most like to do, but I think will probably never happen is Half-Life 2. Because I’m slightly ashamed to admit I’ve never played all the way through it. And also I got halfway through playing it on the original dev kit, but never finished it. You know, it’s one of those games that we get asked about all the time. There’s somebody who’s managed to do some sort of Android port somehow. I don’t know how they’ve done it, but it’s, you know, it’s not like a truly open source engine port. So I think there would be some risks entailed with trying to pick that up. So as it stands, I think that game is out of reach, but, yeah, that would kind of be the dream game to bring to the Quest, but I fear it’s probably never going to happen.
John Carmack And App Lab
UploadVR: You’ve had some communications with John Carmack. I noticed he talked about that on Twitter. What have you talked to him about, and what do you think Facebook thinks of what you do? And what do you think the next steps are going to be for some of these ports? Are you going to be able to get on App Lab?
Thanks for the quick response. In that case I will postpone the App Lab application for now and hope that things progress in our favour.
— Simon Brown (@DrBeef) February 14, 2021
DrBeef: I’m not really sure. I mean, it’s not like John Carmack and I have a secret conversation. So everything that everybody saw on that Twitter — that very short Twitter interaction — was literally as much as I also know. I sort of get the impression that he would be quite keen for some of the ports anyway, to actually make it to the Oculus store properly, as long as they are officially licensed. You know, and there were no sort of copyright issues or anything like that. And that would be great to see, but I don’t think that’s going to happen quickly and I don’t think it will be all that easy to achieve. And it won’t work for all of the ports either. For example, Half-Life, that will never be on the Oculus store. It’s not actually the Valve GoldSrc engine it’s using, it’s just like a fan project anyway. Yeah. So whilst some might make it, I’m thinking immediately of Quake, that’s probably the most likely of all of them and is certainly one that I know John Carmack himself has played. Beyond that I don’t really know. It’s hard to say. I’m not sure they are likely to make it onto App Lab because, well, there’s a variety of reasons, I think copyright is probably one of the issues because to create the store listing we would have to use images and gameplay footage. And we don’t own that — that doesn’t belong to us — we’re perfectly free to make changes to the engine and release it in a way that people can install it on their Quest. But trying to put that onto a store that is run and managed by Facebook, I think is possibly never gonna work out without all the proper legal agreements in place.
Facebook Account Requirement For Quest
UploadVR: Maybe it’s unfair to put this question to you, but as someone who has taken Facebook’s platform to such an extreme — it seems to me like you are one of the people kind of testing the limits of what Facebook will allow. You’re not doing anything that anyone else on sideloading or Sidequest isn’t doing. You’re using the same routes everyone else is, but you’ve been there since the beginning and you were there interested in VR before Oculus got bought by Facebook. I guess I’m wondering how you feel about the Facebook account requirement and how you think Facebook is treating developers and the overall marketplace.
DrBeef: I must admit as far as the ports are concerned, I’ll admit I’m slightly concerned at the longevity of the current sideloading approach is probably, potentially, under threat. It’s hard to say. They’ll make changes at the drop of a hat without — I mean, they don’t have to consult the community. They’ve sold so many millions of units of Quest devices now that most people would just, most people were probably completely unaware of Sidequest. Probably only like a percentage of Quest owners, a smallish percentage that are aware of it. So if they were to introduce something that then subsequently prevented people sideloading and they were forced to the use the App Lab route, then, I suspect that would probably spell disaster for most of the ports. Which is why I kind of pitched that question out there and hope that John Carmack could reply to it. I don’t know. I sort of feel like if you read a lot on Reddit, for example, the Oculus Quest sub, then, people’s opinions of Facebook are pretty well known. I don’t think I’m saying anything wrong to say that. I think they generally don’t have the most positive reception, particularly in the VR world. They’ve also, by the same token, they’ve done an awful lot for VR. They’ve, they’ve introduced low cost, high quality hardware that just wouldn’t be around otherwise. So you can’t be too critical. I think as a sort of hobbyist developer, I think I’d be very disappointed if my ability to get these ports and other hobby projects out to the masses in the way that we currently can is taken away — that would just be a big disappointment and I’m not entirely convinced that’s not going to happen. We shall see really?
Gear VR Positional Tracking
UploadVR: That’s such a nuanced answer. I appreciate everything you’ve said there. Reddit is not a representative crowd of who owns Quests, or buys Quests, or would be interested in buying Quest. Obviously there’s been a lot of people learn learning about VR and the power of VR through Quest and there’s benefits to linking your Facebook account to be able to socially connect with others. I understand why Facebook is sort of pushing that, but I think of open computing and the idea of being able to do what you want with your device. As a hobbyist developer, you’re at the whims of the platform holder to a certain extent, and you’ve done some other crazy things. Didn’t you also do some 6DoF tracking for Gear VR?
DrBeef: Yeah. So when I did Quake on the Gear VR originally it was obviously just Quake running with three degrees of freedom. So the gun was kind of attached to your face and wherever you looked, et cetera, but Google then released this thing called ARCore, which is like a sort of tracking technology and mapping as well. So ,the camera can sort of map objects and track the position of the phone in space. So I was able to sort of match the two together. So we had Quake Gear VR running with this Google ARCore as part of a sort of rudimentary positional tracking. So you could actually move around in Quake in a way that you couldn’t do with, I think pretty much any other Gear VR games. So that was, that was quite cool. And actually it kind of then fed very nicely into the original Quake port that we did for the Quest because we’ve already had some positional tracking built into it. So it was then just a case of utilizing what the Quest offered rather than sort of Google’s ARCore stuff.
UploadVR: That used the single camera on the Gear VR, the outward facing camera. Did it overheat those phones pretty fast?
DrBeef: Yeah, it did. Yeah. You couldn’t play it for that long. I mean, the Gear VR is sort of notorious for getting hot and having to shut down reasonably quick anyway. So yeah, when you’re running a fairly intensive positional tracking software, in addition to the port at the same time, it didn’t run for a great deal of time. It was novelty more than anything else.
Has Facebook Tried To Hire DrBeef?
UploadVR: So you’ve been a hobbyist developer. Do you have a day job in VR or would you like a day job in VR? Where do you see yourself in five years?
DrBeef: I am a software developer by trade. I’m not actually in VR or games. That’s part of the reason why it’s sort of such an enjoyable hobby for me. It was a bit of a busman’s holiday, but at the same time, it’s completely different to my day job. Would I like a job in VR? I don’t know. I must admit, I’m not sure who I would want to work for. I’m quite a sort of low level developer, C++ and Java, they’re kind of my, my languages of choice. I’m not really a sort of Unity or Unreal Engine type developer, so I don’t know. Maybe sometime in the future, maybe if I ever got lucky and managed to take early retirement. And, you know, looking for a job that I felt I could enjoy as more of a sort of hobby job, but at the moment I’m not really looking for the work in the VR industry. I’m quite happy doing this sort of hobbyist thing.
UploadVR: A lot of the early days of VR were debating comfort settings and whether games needed to be built from the ground up for VR, for them to be compelling.
UploadVR: I am one of these people that gets very sick, very easily with bad comfort settings. I’ve been going back and forth with you saying does it have teleport and those types of things, when you’ve been rolling out these ports. I remember going into Doom 3 and I spent maybe a good 20 minutes recording just the first 20 minutes of the game and running through all the different sections. And all I had was snap turning as well as straight forward and back with the other controller. And it felt fine more or less. I was so blown away by the quality of that world and the depths of it, all the voice acting and using the flashlight to light up various things that my brain wasn’t really too concerned about the comfort settings and it worked really well. I guess I’m surprised that there isn’t an effort at Facebook to reach out to some well-loved old games and get them ported properly to VR using great comfort settings, and getting them performant on a Quest device. Do you think that’s something Facebook would ever pursue, and have they tried to sweep you up and get you a job?
DrBeef: No, they’ve not tried to sweep me up. As for whether it’s something they’d pursue, I’m not sure it’s likely Facebook would pursue it. I think it’s possible that another studio might decide to look back at some of their old IP and think, yeah, maybe we could do something with that again, you know, it might not take too much to polish it up and make it quite enjoyable in a sort of VR setting as most of the ports already attest. They do work surprisingly well going from a flat screen into virtual reality. Particularly the likes of Doom and Quake, they’re very fast paced and there’s a lot of bouncing around and explosions and quick movement and it’s a bit of a recipe for nausea, really, for a lot of people. Some of the slower pace titles I could imagine probably getting picked up in the future and given a polish. Whether the Facebook will do it, I’m not convinced they will. I think they’d expect other studios to do that sort of thing.
UploadVR: Myst is one of those ones that just hit Quest and it was sort of built, seemed to be rebuilt from the ground up for VR. At least that’s how it felt inside there. And they’d had a lot of those best practices in place where you can fast travel up the ladder and snap turning and all those things to make it a really comfortable experience. And like you said, it’s slow. There’s no jumping. There’s a lot of titles out there that could get that treatment going back to the beginning of gaming. It seems like a low price way of bulking up some of the offerings out there, if you could really get those great comfort settings in there and bring some of those old titles. I guess I’m surprised it’s not more common than it is.
DrBeef: I think I am to some extent as well. I’m also slightly surprised that there are other developers churning out ports. It’s an odd one, really, because there’s plenty of very talented developers out there who are more than capable of picking up the SDK and wrapping these games in the VR SDK and releasing them. They’re also not happening with any sort of frequency. So I don’t know. Maybe there’s just no appetite for revisiting some of these old engines and bringing them to VR. A lot of the ports that we’ve done on the Quest, they have counterparts on PC VR anyway. So these are sort of already reasonably popular on the PC. So having a Quest variant isn’t that surprising.
How Popular Are Your Ports?
UploadVR: Do you have any sense of how many people have downloaded your ports at this point? Can you break it down in any way?
DrBeef: There’s pretty detailed stats on Sidquest. I must admit I haven’t actually looked at that recently. Doom 3 that’s at, must be, well over 30,000 downloads by this stage. I’ve not actually checked the figures recently. I know Lambda 1 VR, which is the sort of Half-Life implementation that must be over about a hundred thousand downloads by now. And then there’s QuestZDoom. I think that was very popular. You know, all in there’s probably hundreds of thousands of downloads, whether they’re unique to the number of people that have played them or not, I’m not sure. It’s got a surprisingly large reach.
Where Do You Recommend People Start With VR Development?
UploadVR: We have lots of people out there that are just getting into VR for the first time. You’re an established software developer to begin with, but I guess I’m wondering if you can provide any advice for people out there that would want to make VR games or even port their passion project, what should they do? And what routes would they take to do that?
DrBeef: Unless they’re an existing software developer, I wouldn’t recommend trying to do a sort of port of an old engine. I think that would probably be a step too far, but, you know, just downloading something like Unity and just having to play around, not being afraid to make mistakes, you know? Cause I mean I can’t count the number of times I’ve bodged something up and broken all the code and, you know, had another go in and a few attempts later, it starts working and that’s the moment you think, yes, I’ve done it. Just give it a try. It’s amazing what you can throw together in these things. I must admit I’m no Unity developer myself. You see some of the projects on Sidequest and they’re just brilliant and they’re one person, you know, in their bedroom, tinkering away on these things and, you know, just go for it. You never know, it might be a future career in the makings.
What Are You Working On Next?
UploadVR: What are you working on now with regards to your VR hobby? And what do you want to work on in the next few months?
DrBeef: Right now I’ve been very fortunate to have been sent a bHaptics, haptic vest, and armbands, and the head thing as well. So at the moment we’re looking at incorporating haptic feedback for the vest, et cetera, into Doom 3 and some of the other ports as well, very excited. I mean, it’s a great piece of kit so it’s going to be great fun once that gets up and running. So that’s currently the in progress piece of hobby work going on. After that, uh, that’s a very good question. I’m not exactly sure what the next thing’s going to be. When we finished Doom 3, I was saying, I’m going to take a bit of a break now, then, bHaptics got in touch. So looking at that, it’s kind of fun and a little bit different. After that, I don’t know. I’m inclined to wait awhile and see how things go with Facebook and Sidequest and App Lab and what direction things take. I’ve got a couple of ports in mind that I might have a tinker around with. And I know BaggyG who’s one of the members of the Team Beef, if you will, is also looking at a couple of things themselves. So, you know, there’s stuff going on in the background, but I wouldn’t want to commit to anything at this stage. You know, you don’t want to get people’s hopes up.
Are You Submitting Quake To App Lab?
UploadVR: Have you submitted Quake to App Lab or is there an immediate intention to do that?
DrBeef: No. So I got halfway through the App Lab application and then realized that we were going to have to create things like screenshots and video footage and that’s where it started to become, you know, can we really do this kind of situation? That’s when there was the, the very brief Twitter conversation with John Carmack, and at that point, put the application process on hold. So yeah, wait and see. So people can still access it through Sidequest, so it’s not like it’s gone away.
UploadVR: It makes sense. Facebook seems to respond at least indirectly in some ways to the community, they’re gonna make their decisions based on what’s in the best interests of Facebook, but I’m sure there is an appetite for App Lab, getting great ports onto the Quest without having to have a PC involved in the process. There’s gotta be an appetite out there for those. I guess the community out there watching this, is there anything they can do to support or ensure that these things happen more often?
DrBeef: That’s a good question. I must admit, I don’t really know the answer to that one. I think if, again, going back to the Oculus Quest subreddit, it does seem that a number of Oculus employees are reasonably frequent visitors and they do listen to the community. How much of a sway they then subsequently can have internally within Facebook it’s difficult to say now. So I don’t really know how much of an impact the community can make on trying to get these ports onto App Lab or even the main store.
UploadVR: That makes sense. Well, thank you so much for the time. We’ve got DrBeef in our studio. Thank you so much for joining us and hopefully we can have you on in the future. And on behalf of our viewers out there who I’m sure have loved your ports, I’ve loved it, thank you for bringing them to VR and they’re incredibly fun. So thank you.
DrBeef: Yep. Thank you very much.