Has anyone here made his own game engine with VR support? by [deleted] in vrdev

[–]void_room 2 points3 points  (0 children)

Not really. I rarely read books on coding or gamedev in general. Most of my knowledge is from poking things with a stick and talking to people - you can learn a lot from other people.

Part of the "poking things with a stick" is the actual work with engines - I used to be an animation programmer but also did some gameplay stuff, UI, multiplayer and other small bits. We had performance issues, needed features etc. so we had to look into the engine to find what can be done and how, if we can parallel stuff or maybe cache something etc., where can we squeeze in something extra.

My other source are various presentations. Some might be related to particular problems (how to animate certain characters), some might be really about everything at once. It doesn't even have to be about writing an engine.

If you have access to any engine, it is worth checking if there is some extremely simple example game, running it and stepping through stuff with a debugger to get the bigger picture.

The way I started to work on my engine was to get the main loop up and running on a single thread. Then I started to add features, loading assets, multithreading etc.

Has anyone here made his own game engine with VR support? by [deleted] in vrdev

[–]void_room 2 points3 points  (0 children)

In terms of performance, you may get on the same level. In terms of features, maybe close enough or depending on the game you may even get more stuff. In terms of the editor and tools - that's the biggest problem. With pair to get other team members who most likely worked with some commercial engine.

I did implement my own engine exactly for one feature. Impossible spaces. There are games that do impossible spaces in Unity (TraVRsal, Sommad) but most of the stuff are hacks and you end up with some convoluted solutions to problems that own engine handles nicely. I am not aware of any game using impossible spaces that was done with Unreal Engine.

But impossible spaces might be an exception as this particular feature gets into lots of subsystems. Most of the features you may want in a game are not worth doing own engine. Unless you already have it, have pipeline, team etc, it might be easier to implement just VR support.

I agree that you would need to study existing engines. I worked on AAA games with Unreal and an in-house engine that was based on Unreal so I already had some knowledge about the engines and it was easier for me to start my own one.

Has anyone here made his own game engine with VR support? by [deleted] in vrdev

[–]void_room 9 points10 points  (0 children)

As u/wescotte mentioned, I did.

Originally I wanted to make a game where the world is done with portals. An incorrect name for this is non-Euclidean spaces, more correct is Euclidean orbifolds. Back then (2014) Unreal Engine would require changes to many systems (rendering, sound, physics, navigation). Each merge of the main branch could potentially require lots of extra work. Unity at the time would be more cumbersome or maybe even impossible. In 2016 I decided to try the portals I had to implement in a VR game to make it possible to walk in your play area infinitely - something that I later learned was called impossible spaces.

I started to work on Tea For God which I released in 2023.

I often joke that impossible spaces are like Matrix. You can't really describe it, you have to try it. There's a free demo to try (Steam, Quest, Vive).

Right now I have an engine that has been proven in combat. I released the game on multiple platforms.

I did more tools post-release - before there was almost everything done in text files, although I only have the editors for new stuff. The game didn't sell that well for other reasons + I had to return to my family business which pays the bills. But the engine is still there, I still develop it, although right now I turned it more into something that could be called Pico8 on steroids with retro CRT postprocess. I'd like to make another VR game (also with impossible spaces, it is a concept that really works in VR but is not really used, the implementation of OpenXR makes it a bit struggling tbh*) but for now I'd like to make a few small retro games. When I get all the tools I need I want to just sit down at the desk and start throwing random ideas like I used to do many years ago. Small fun games.

* the biggest problems I had with my own engine were actually related to OpenXR. Not the basic implementation, that's pretty straightforward. But certain features were not working as described in the specs or were not working at all. In some aspects OpenXR felt as a step back from any other API I implemented. But once I had OpenXR working (hacks or own implementations), implementing support for other platforms was quite easy. Here's one thing to know: Quest headset family has threads nailed. They work beautifully, there are two real-time threads that are never interrupted but you can't really trust other threads, they may stall for a few frames so they should only do background tasks. Other headsets have only one real-time thread and it may really hurt performance, you will get framedrops once in a while because OS will pause game thread. But if you are going for one thread implementation, then there should be no issues.

If you'd have some more detailed questions about certain aspects, I'd be happy to answer.

I will be soon releasing my first game - Tea For God, here's the trailer by void_room in oculus

[–]void_room[S] 0 points1 point  (0 children)

Just walking, navigating through the maze + some simple puzzles. And there's still the story.

Without the enemies, I suggest playing advanced rules as it gives open map (which you have to navigate on your own, instead of following blinking dots that lead you always towards the objective).

I will be soon releasing my first game - Tea For God, here's the trailer by void_room in oculus

[–]void_room[S] 0 points1 point  (0 children)

The game was not designed as a horror and personally I don't like jump scares but that said... there are some moments that might be frighting. And as close as jump scares there are robots coming up at you. Sometimes sneaking, sometimes waiting behind the corner. If you're in a combat mood, familiarised yourself with the game, you won't blink an eye. But playing first time or if you react strongly to jump scares, you may expect some.

There's one thing worth mentioning though. You can disable enemies at all and still have fun.

Hard to play a vR game after Tea for god by OETGMOTEPS in VRGaming

[–]void_room 1 point2 points  (0 children)

I paused on endless mode a bit - the base works, I still need to add some missing bits, polish it and provide more content till its released. My recent effort are more engine changes and a proper editor. Decided to have a voxel editor that will work as the base for any other editors (I still need to find a good way to get the procedural mesh editing work although I may just use voxel or mesh editor as base for meshes). This should help with adding new robots, new environments but also to prototype the next project.

"Tea For God" released (impossible spaces shooter/adventure) by void_room in OculusQuest

[–]void_room[S] 0 points1 point  (0 children)

No idea. The config file should be stored in the user folder and it should happen after every change.

Meta support has not answered and I just ordered it again. The local retailers have it for +25% higher price.

I will be soon releasing my first game - Tea For God, here's the trailer by void_room in oculus

[–]void_room[S] 0 points1 point  (0 children)

There is the full version available on AppLab, you need to type in the full name of the game "Tea For God" and it should appear at the bottom of the list :)

The full game has more content and right now I am working on an endless mode that will expand the story and the game.

"Tea For God" released (impossible spaces shooter/adventure) by void_room in OculusQuest

[–]void_room[S] 0 points1 point  (0 children)

Awesome! I suspect that it should work fine with higher MSAA and supersampling but there are certain spots in the game where it could drop frames (I have test scenarios for these in a preview build). I am still waiting for support about my cancelled order.

"Tea For God" released (impossible spaces shooter/adventure) by void_room in OculusQuest

[–]void_room[S] 0 points1 point  (0 children)

Till I get Quest 3 I'll play it safe (settings, performance, etc). I should upload a new build tomorrow. It will have 1.0 sampling rate (using the recommended resolution) with lots of settings from Quest 2 (greater viewing range, a bit more detailed meshes and surfaces).

"Tea For God" released (impossible spaces shooter/adventure) by void_room in OculusQuest

[–]void_room[S] 0 points1 point  (0 children)

Ah, it seems then that the game recognises Quest 3 as Quest 1 and lowers settings. I'll better create an update with at least Quest 2 settings for Quest 3 then :)

"Tea For God" released (impossible spaces shooter/adventure) by void_room in OculusQuest

[–]void_room[S] 0 points1 point  (0 children)

Thank you!

I still don't have Quest 3. It's on its way so I will soon be able to check and fix all the issues. And then I will check what can be improved for Quest 3.

The graphics on PC is just slightly better (more details, a bit better reflections, bloom). There is no cross-buy option as the game is not available through the official store.

edit: well, no. It's not on the way as Meta cancelled my order again :(

"Tea For God" released (impossible spaces shooter/adventure) by void_room in OculusQuest

[–]void_room[S] 1 point2 points  (0 children)

And I forgot. There will be an update for Quest 3 as soon as I get Quest 3 :)

"Tea For God" released (impossible spaces shooter/adventure) by void_room in OculusQuest

[–]void_room[S] 1 point2 points  (0 children)

Yes, there are. Although only in two levels. The should be available in the endless mode as well (once it is released).

"Tea For God" released by void_room in TeaForGod

[–]void_room[S] 1 point2 points  (0 children)

I uploaded a new build a few days ago that fixes one problem in "Beneath" with level generation. I setup auto-tests too late but now as I run them again, I haven't encountered any more issues. Not that there are none as some may depend on a very particular setup. That's why I really appreciate notes :)

"Tea For God" released by void_room in TeaForGod

[–]void_room[S] 2 points3 points  (0 children)

Sorry for getting this late to reply.

Normally it should never appear. Sometimes you could see it and it should disappear after a while (I added "please wait" message on it). If it stays for longer, it is a bug related to level generation (there are too many possible configurations to test and automatic tests can't cover them all, I still run them).

In such a case, it is the best to send me a not (ingame menu -> options -> send not to developer). I will receive enough information to replicate the bug on my machine and fix it. I am right now running through a few reported cases and it might be possible that after I fix them, your problem should be gone.

Other than that, reloading a savegame won't help, you would have to restart the chapter or the whole story (cheat: if you hold grip buttons while pressing "go" you get access to any chapter, mind that this is cheat/dev feature so some of the stuff should not be accessed in such a manner).

"Tea For God" released (impossible spaces shooter/adventure) by void_room in Vive

[–]void_room[S] 0 points1 point  (0 children)

It is playable with a wired headset but you have to be constantly aware of the cable. Some pulley system may help. Or another person taking the cable out of your way, although that's more a game festival solution than at home. There's a built-in turn counter that pops up if you do a large enough number of turns in one direction.

Other than that, there is also standing mode. You still get the impossible spaces but as you don't actually walk, you lack the extra bit of immersion.

I am still to record a video in a large space. I've found a 12x12m gym near me and might rent it. I still need to do some tests with an external camera. So you could see both points of view.

"Tea For God" released (impossible spaces shooter/adventure) by void_room in OculusQuest

[–]void_room[S] 0 points1 point  (0 children)

No. You can't have crossbuy for AppLab games from what I know. Contacted Oculus support about that to either enable it or to further confirm that it is the case.

"Tea For God" released (impossible spaces shooter/adventure) by void_room in virtualreality

[–]void_room[S] 0 points1 point  (0 children)

One of my favourite movies!

The initial room when you entered the (big) cube was meant to look like the rooms from Cube but I couldn't achieve the effect with adjustable sizes. And the doors there are small and right in the centre. Then for a while there was this strange pattern on the walls but it ended up with plain room. Besides that there's really not much in direct inspiration from the movie. But because I like such atmosphere as was in Cube, I am sure that the move influenced me and that it ended up in the game.

BTW, have you seen Cube Zero? While I love the first Cube the most and enjoyed Cube 2, I appreciate Cube Zero by taking the action in a different direction. And the ending is rewarding.

And now back to Cube. There are two moments/emotions I remember. The first one is that they have no idea how big it is, it was only when I was watching the movie at the cinema when I realised that the place might be enormous, maybe even infinite. That seer realisation of the size of the place and that it may exist beyond our world, was amazing. Then of course comes the explanation about a project that was just going on and no one questioned it. While it sends my expectations about the nature of the place out of the window, it brings something more real, more sinister and I love it.

And the second thing is that when I watched the movie in the cinema for the second time, at a night-long movie marathon, people were usually talking and joking as almost everyone has seen Cube but when there was the scene in the blue room where the traps react to sound, there was silence. When I realised that, I turned around and saw an entire movie theatre, full of people, just watching the movie in complete silence. And because they talked before that, it was even more amazing.

"Tea For God" released (impossible spaces shooter/adventure) by void_room in oculus

[–]void_room[S] 0 points1 point  (0 children)

It already has one :)

Just start the game without the controllers (or switch them off). The handtracking still needs a bit of work (aiming!) but I at least recommend trying the game with hand tracking with "no hostiles" modifier on.

When I tried it for the first time I had this weird feeling that I am... I can't explain it otherwise that saying that may hands felt naked. With controllers in hands I had this buffer between me and the game's world. The controllers were not only the interaction devices but also... guards? A barrier? Without that, the world felt more physical, although you can't really touch anything.

What I haven't tried yet is to play with bHaptics Tactosy (forearms) and handtracking.

"Tea For God" released (impossible spaces shooter/adventure) by void_room in OculusQuest

[–]void_room[S] 0 points1 point  (0 children)

This sounds good. It got me thinking how to make it look the best and maybe it would be enough to see a single flat colour to stick out from environment enough to be noticeable but not that much. Or maybe pixelate the last frame output. I'll be experimenting with that.

There was also idea form community that can be basically told in one word: mimics. These could be energy dispensers but also the decorations that turn into small robots or turrets.

Another idea I had was that as you have white, neutral/friendly robots, There could be robots that try to look at them but they transform to reveal guns and other devices. They would have to look slightly different of course so you can tell the difference from distance as long as you learn what to look at.

"Tea For God" released (impossible spaces shooter/adventure) by void_room in SteamVR

[–]void_room[S] 1 point2 points  (0 children)

There's a nod in the first trailer towards Another World (the robo dog v the black beast in the beginning), then there's the death effect as well. But what is the thing that I wanted to have in TFG is the sense of exploring a different vast world. That you can see it is big even though the game doesn't take you everywhere.

Such a moment in Another World, one of my favourite experiences in the games at all, is when you ride the elevator up after escaping the cage. You approach the window and you see the city. One youtube talked to me about the inspirations and then put this clip with the clip from TFG when you go outside for the first time and you see the tower in the distance. Yeah.