Help me come up with a path to being able to make VR music games
December 3, 2019 9:53 AM   Subscribe

I'm an experienced professional programmer who knows very little about how to make video games. I have a long term goal of making music games, preferable one day in VR. Help me get there!

I realize this is an ambitious, long-term goal. Still, I think it's achievable. I'm a an experienced programmer, but I know I will need to learn a lot of new domain specific stuff, tools, and various math and whatnot specific to video games. Then on top of that, the specifics of making games work well with music. Not easy stuff! But I'm a #nokids milennial waiting for the climate apocalypse, so why not?

I'm looking for any resources that would be helpful on that journey. Books, websites, engine recommendations, anything really.

I was imagining something like...
- learn C# (I'm a java/scala/python guy, I don't think this will be hard)
- choose an engine/toolchain that can "get me there" and learn it
- make a shitty game
- make a music game
- make a shitty vr something
- make a shitty vr game
- make a vr music game

But again, I'm very new to this space and am sort of figuring out how to attack it. For example, how deep should I go into like...understanding the writing of ray tracers, for example? I imagine that it can be black boxed as a tool provided by the engine I choose, but I'm asking!

Engine wise, a number of people I know generally play around with unity, but I noticed that the only two VR music games I've played (rez: infinite and tetris effect) both were done with the unreal engine (with a "Synesthesia Engine" I guess built on top of that). I dunno!
posted by wooh to Technology (6 answers total) 5 users marked this as a favorite
 
Hi!! Love the idea. I'm highly involved with the VR community and I have a few non-technical tips.

1. I would post on the various subreddits, and private message any VR devs that seem friendly, and post in the big discords and message the moderators asking for People to ask the above advice to. Specifically, I know someone made a web-vr version of beat saber, you could ask them!

2. There is a large modding community for audica and beat saber - check in with those communities and see what tools they are using, try making a mod for yourself! Also make some custom songs and stuff!

3. Follow basic "how to make VR games" guides on Reddit and other blogs. A lot of people post little prototypes they are working on and get great feedback.

Hope these ideas help!
posted by bbqturtle at 10:05 AM on December 3, 2019


Your initial path looks pretty spot-on. I would absolutely recommend starting with the rhythm game aspect and then worry about making a VR title. If you haven't decided on the VR hardware platform, that should wait until you're at the point where you want to transition to VR to take the plunge. By then there may be a better idea of which platform suits your game, and hardware may be less expensive.

Unity or Unreal will get you there for VR. If you're already comfortable with programming traditionally, I'd recommend Unity (Beat Saber was made in Unity). Unreal's blueprint scripting system is fairly powerful, but it would be an additional thing to learn on top of the coding you'd need to do to get a game together.

For VR, a large part of your focus should be on optimization. Writing cool shaders and whatnot are fun, but high frame rate is far more valuable than flashy graphics in VR, and making a game that can render twice at around 90FPS can be difficult.

Lastly, I assume you're doing this for your own experience and the joy of making something cool, but if your goal is to bring something profitable to market, I would caution you against making a VR game. VR development is a lot more expensive than traditional game development, and the market is much smaller. You may consider licensing a music VR game for VR arcades, but I don't know if those generate much revenue.
posted by subocoyne at 10:24 AM on December 3, 2019 [1 favorite]


Unity is a great starting point. I'm a long-time web and mobile developer with an interest in making games and I started playing with Unity a few months ago. Their tutorials are pretty simplistic and are going to be a little frustrating in that they're almost all for new developers too, but there are a lot of them and they cover a lot of great topics.

Coming from Java, you'll pick up C# pretty easily.
posted by cCranium at 1:25 PM on December 3, 2019


Unity is a great starting point. You could make a shitty VR music game in Unity that runs at 90 FPS no problem without going very deep on graphics programming -- the time when you will want to learn that is if you want to make it look really cool visually.

Music and VR are a great mix. You should make sure to check out Audioshield and Wave for further inspiration :-)
posted by value of information at 4:37 PM on December 3, 2019


Woah my old cyberpunk coworker does this and I know he uses Unity and C#. I’ll ask him tomorrow about his specific process and memail you. I know he has a mountain of expensive Moogs as well.
posted by Young Kullervo at 5:17 PM on December 3, 2019


I'm a games programmer who's done a lot of audio work - we're just moving from Unity/C# to Unreal. Both are great options!

Games programming, even VR is super accessible these days, so I think your goal is very reasonable.

Unreal just switched to a new audio engine, one with a thing called TimeSynth for generating musically quantized events, and FFT nodes for analyzing audio spectra - I'd be tempted to start messing with that were I to make a music game.
posted by Jon Mitchell at 6:11 AM on December 4, 2019


« Older Chicago nursery for native plants   |   Fifty years of music. 1969 - 1994 - 2019 Newer »
This thread is closed to new comments.