To Lyra or not to Lyra

There is an unofficial Lyra dev discord here: UE/Lyra Dev Network

First, your questions and considerations are well founded. Rather than address them all, I’ll give you my perspective of Lyra, its past 6 month history and the limited amount I know about its future.

Docs are very light. I’ve been working on my own set of docs for the past 6 months. I outlined most of the things that seemed confusing to me coming from a background of C++ dev without knowing anything about games or UE:

There has been 1 released update (5.0.0 → 5.0.2) so far, and there is a 5.1 version that will be released (in December?). The upgrade from 5.0.0->5.0.2 was very easy if you follow my philosophy (outlined in the docs). The upgrade from 5.0.2->5.1 was also quite easy, there was only 1 real merge challenge, which I thoroughly documented so I bet you can
do it in an hour if it ends up affecting you.

In all honesty the upgrade to Lyra 5.1 wasn’t anything particularly spectacular. There hasn’t been a huge amount of effort put into it since it released. They fixed some bugs and they flushed out a prototype system into an actual functional system.

In order to make it easy for me to incorporate Epic’s future Lyra updates, I have put together some considerations for building on Lyra:

I do not believe that Epic is going to put any value into backwards compatibility when it comes to Lyra updates. Quite to the contrary, this seems to be a “let’s give Fortnite tech to the community” project.

Michael Noland presented Lyra as a “treat it like the engine” concept. That is really what I’ve been trying to do. I make AS FEW CHANGES AS POSSIBLE to Lyra. I maintain an official Epic branch, my modified branch and my game project branch as 3 separate but related Git branches in my repo.

Some parts of Lyra are really well done and very easy to extend via C++. Some parts of it are prototype ideas intended to set an example but clearly not expected to be built upon (Inventory/Equipment/Weapons, being one).

There is no way for community developers to get access to Lyra code except via the launcher. If you are a custom UE licensee with access to UDN, then you do get access to the official Epic P4 repository, which contains Lyra 5.1 which is currently under development. This is how I access it – I pull down updates periodically and merge them into my code. As a community member without UDN you’d pull updates far less frequently – only when there is a release – and you’d get that update from the Launcher.

Epic supposedly wants to make Lyra a public repository, either on Github or on some other tool where they can share with the community. There are both technical and legal issues they need to clear, and there is no definitive answer on whether that will happen or when. It is something they want to do though, FWIW.

My personal opinion is if you don’t have any existing UE4 project that you’re trying to migrate to UE5, then you should just start with Lyra. It’s not perfect. There are things you will dislike about it. There are things you will like about it.

Long story short Lyra uses lots of UE 5.1 techs that are not clearly documented and/or for which there are not many official examples. You can either choose to spend your time trying to figure out how to make it all work yourself, or you can choose to spend your time learning how Epic actually DID make it all work together.

If you decide to go the hacky route and just modify Lyra outright, then obviously you won’t be able to get any updates from them, but you will also have absolute and total control over any change to the Lyra foundation that you want.

So going the Lyra route doesn’t mean you’re locked in. It just means you have a really good starting point, as opposed to a zero starting point. My $0.02.

11 Likes