Universe or Nothing - A space sim being built in Xenko

Hi all,

I don’t see many showcases of games being built in Xenko, and I think it would be good for new users to see what others are building in Xenko.

This is my showcase, and the story of how I chose Xenko and what my experience has been with it.

In Universe or Nothing you are the Captain for a spaceship, commanding or directly controlling four roles on your bridge (Helm, Tacticals, Engineering and Science),

Universe or Nothing is planned for a late 2017 release on Steam (Windows and Linux).

First of all, some screenshots:

UNION Kite Class Frigate (WIP)

Engineering Role UI

And concept art:
"Ambush at Pentalux", an illustration by our concept artist Isaac Hannaford

I started building Universe or Nothing, then called “UNION”, in Unity. It went well for a while, but the more I pushed the engine the more unstable it became. When I began to implement a modding system, with dynamic importing of textures and models, I encountered serious crash to desktop issues. I found workarounds for these issues, but the fact that I didn’t have source code access meant I never knew exactly what was causing the crashes. This caused me to look for alternatives. I looked at a number of other engines with C# scripting and created some prototypes in them, but in the end Xenko was head and shoulders above the rest in terms of quality and features.

Porting from Unity to Xenko was a smooth experience, this was really surprising as the code base is quite large. I actually enjoyed the process, as I really liked using the Xenko API and having access to the latest C#/.NET features is brilliant. Rendering performance in Xenko is maybe a little slower than Unitys, but Xenko’s code execution speed has been much faster for me (I have a lot of simulation calculations going on, so it is noticeable).

One of my big stumbling blocks early on was that my UIs are built using Noesis GUI, a WPF based GUI framework. All of my UIs are written in XAML and heavily use SVG vector paths, so I needed Noesis GUI to work in Xenko. I have no graphics programming experience, so I needed to lean on the Xenko devs for help. Not only were they extremely helpful, providing directions and code examples, they also added MSAA to the rendering pipeline in a release because Noesis GUI relied on it. They really went above and beyond.

Thanks for reading. If you want to know more about Universe or Nothing you can find us on our website, forums or Facebook page.

12 Likes

Man, your projecto is very cool!
Congratulations!

In the lasts weeks i become study the post-effect porecessing work on the Xenko, and o star to create some effects, if you need something, just ask :wink:

1 Like

Looks great!

Glad that Neosis GUI port worked out nicely in the end :slight_smile:

Thank you for your very valuable feedbacks on the Unity to Xenko conversion. It helps us understand what went well, and what needs improvements.

Concerning performance, you’ll be happy to know that this is something under heavy work right now, as we are multithreading our full engine, mostly to take advantages of new D3D12/Vulkan API – but it will still have lot of positive effects on older API as well.

So far it scale quite nicely, allowing us to push sometimes as much as 5~10x+ more draw calls compared to before.

Ping us if you need any help!
Can’t wait for more info/footage!

3 Likes

Thank you!

I left out that the most difficult part of porting from Unity to Xenko was the lack of documentation. I managed to figure things out without too much hassle using the API docs, the Answers section (mostly from searching through it), and the source code.

The lack of documentation might have turned me off early on, if it weren’t for the fact that I had access to the source, and that the API is so well laid out. I do realise though that the lack of documentation is primarily due to the engine being in beta, and that it will come later.

I’m delighted to hear about your work on performance. It hasn’t been an issue for me yet, but I appreciate that you are working to ensure that it doesn’t become a problem.

Thanks again for all of your hard work.

2 Likes

Wow, this looks awesome. How is your experience in Xenko vs Unity? (Looking to maybe switch)

Thanks!

If you are primarily focused on programming, rather than using an editor, and you are don’t mind the lack of documentation (because you’re willing and able to dip into the API and/or source), then yes!

It’s certainly not “easier” than using Unity (in it’s current beta state), but as a programmer I have found it to be better than Unity in many ways (including stability).

1 Like

That is something pretty cool that I am seeing here. :slight_smile:
Especially considering that this is half a year old, I am really wondering how it does look now since, if I am correct, there has been a couple more updates to Xenko since that time!

I am also reading that you used NoesisGUI for your UI, which is a point I am rather interested in, since I do possess a NoesisGUI license (since their beta, so sort-of forever haha) and would be highly interested in using it in Xenko, and even more if you do have support for render-to-texture, potentially.

Did you ever consider making a repo for a NoesisGUI-to-Xenko support?
If not, how hard has it been for you to use NoesisGUI in Xenko? :slight_smile:

Thanks.

1 Like

Hey there,

My day job got very busy in the latter half of last year after we took on three large projects. Due to that I am not as far as I would have liked, but I am still making progress. I have been focusing on the UIs mainly:

I only just updated to Xenko beta 1.9, and the latest Noesis beta 1.3, so I haven’t had a chance to test out new graphical features yet. I am loving both though, as a developer and programmer.

The Noesis C# SDK was quite easy to integrate with Xenko, Noesis provide a C# DX11 implementation with the SDK which is targetted at MonoGame and SharpDX. The base APIs for Xenko are based on XNA/MonoGame, and it too uses SharpDX for rendering DX11.

I did have to make some modifications, and I will happily share those with you (sometime this week I will put it on GitHub). I don’t have a Xenko OpenGL renderer for Noesis yet though.

I don’t have Render to Texture implemented either, but it is something I want to do in the not too distant future.

1 Like

Hello :slight_smile:

Thank you for your answer!

Ah, it’s a bit sad that you had to slow down on it. I have to say from those two screenshots that the UI looks really good as in the fact that I don’t get to see UI this clean often! (and if people don’t agree, I stil like it. :stuck_out_tongue: )

As of Xenko 1.9. I like it so far as a programmer. I’ve been able to make simple things and some more other stress-testing tests without any problem (and test the limits of what I can do in parallel or not, such as moving thousands of objects at the same time)

I have not tested NoesisGUI 1.3 beta yet outside of the UE4 plugin.

My experience so far with Vulkan in Xenko has been pleasant, I’ve been able to have a framerate around 10fps for 1 billion tris (if the profiler is not all lies!) and/or ~25k draw calls, which is decent to me (extreme cases testing, I must admit).

Oh right, it is true that now Noesis does not provide the Graphics API implementations anymore.
I will really be looking forward an implementation using Vulkan/DX12, mostly to get at least the parallelization power out of it.
This is probably a lot of work though.
Well, we shall see. I didn’t check the forums recently, so it may even exist. :slight_smile:

Awesome, this is really kind of you to be willing to share those!
I can do without OpenGL :stuck_out_tongue_winking_eye:

That’s cool. As you will be sharing it on Github, I will be looking through it. I doubt that my knowledge will be enough to help in much way though, being rather specialized in Gameplay, more than anything else, haha. :slight_smile:

I am looking forward the continuation of your game!

How does the paying for that NoesisGUI work? Would I have to pay upfront, or when I ship my game? Because currently I’m a poverty ridden son of a hobo. :slight_smile:

I’m asking because even if I wanted to by the NoesisGUI upfront. I would require to contact the support. I never experience such a thing before, where I was required to contact support to purchase a software. Qt doesn’t have this either. So, what’s wrong with Noesis Technology?

1 Like

You need to license Noesis GUI, the page for that is here (http://noesisengine.com/noesis_gui_licensing.htm).

They offer a time limited (30 day I think) version to demo it.

It is very common for B2B (business to business) companies like Noesis Technologies to require that contact to be made for setting up an account.

They have been absolutely fantastic to deal with, responding to issues very quickly and even implementing features which I required.

1 Like

Thanks for thanks for the info. Very appreciated. :slight_smile:

For those who care. Seems it changed now to an Indie license(one of many), that allows the free use of it, if annual revenue is <100K. Also there is a sign-up now. Instead of that funky “contact support” thing.

2 Likes

Thank you very much for the useful information!

1 Like

You know I tried getting Noesis GUI but their spam question does not work. I entered variances of Noesis in there until I was blocked. I guess they don’t want any more customers. LOL
I even asked for help on their Twitter yesterday, but there was no response.
I really wanted to try it out.

What are the news of your game?

Hi @MattJack,

Thanks for checking in.

I had to take six months off from the project as my wife was very ill. Thankfully she is doing much better now, and I have been back working on Universe or Nothing for the past month.

I ended up moving away from Noesis GUI, mainly because it is closed source and I needed more flexibility than it offers at this stage. So I have been re-implementing my UIs using Xenko’s UI system.

I would be very wary of using closed source libraries/frameworks in the future.

While I was away from the project I contracted some artists to work on the spaceships for the game (making game ready assets), here is a progress shot from that (using shadow to not give too much away :slight_smile:):

I am really enjoying working with the Xenko engine, the quality of the code base across the board is fantastic.

Thanks again.

1 Like

Hi Faerdan,
Good to see you are back in the project.
3D Models are very beautiful.
What plateform(s) do you target?

Thank you.

I’m targetting Windows and Linux.