cancel
Showing results for 
Search instead for 
Did you mean: 

SpaceEngine

SpaceEngineer
Explorer


Hi there! I am Vladimir Romanyuk aka "SpaceEngineer", here my project called SpaceEngine. It is a 3D space simulator with procedural Universe generation. It features real-scale planets with 3D landscape, physically based generation of solar systems, real-scale generation of galaxies and entire Universe structure. All transitions are seamless, you can land on any planet and explore it, then take off and fly to another galaxy. Known astronomical objects are also here, including ultra-high resolution textures for Solar system planets and moons (20+ gigs, available as separate download).

This engine is in a form of a free space exploration planetarium, but I am going to make a game based on it. It will feature realistic physics and exploration based gameplay. More info on the forum (look for a sticky threads). Space ships are already implemented, with basic physics and controls.

Website and forum: http://en.spaceengine.org/

Main program: download (960 Mb)
Hi-res Solar system textues: coming soon

Trailer:




This version should work with Oculus Rift DK1. I have only DK1, but I tried to make DK2 support by feedback from beta testers. Here is a relatively old dev video for DK1 (warning it may make you sick iw watch in Rift):




To run in Oculus, first switch it to the extended desktop mode. Then run SpaceEngine, fly there a bit using monitor 🙂 Learn controls, they are easy: WASD + left mouse drag mouse to move, mouse wheel changes speed, click to select object, G key to fly to it (double G for faster flight), and F2 key to bring up the planets list (left and right mouse click to navigate). Advanced controls including speedup and reverse the time flow: JKL and Space keys. You always can use a toolbars, but in Oculus you probably will close them. After this, configure a joystick. Needed actions are move, rotare and chage the speed (very important!).

Then go to Display settings menu (Ctrl-F8) and choose Oculus Rift mode. Moving the window to the Rift is easy: just hit Shift-Enter. Don't forget to toggle fullscreen (Alt-Enter). To move the window back, hit Shift-Enter again. Note that mouse cursor must be in the window to allow rotation and GUI navigation.

If SE crashes on attempt to enable Oculus mode. So you are have AMD graphics card, aren't you? Try to disable mipmaps generation for the framebuffer texture. Open the config/user.cfg and change these parameters to false:
EnableMipmapsGUI false
EnableMipmapsFrame false
EnableMipmapsWarp false
The last parameter could fix crashes on approaching black holes, neutron stars and white dwarfs. Disabling mipmaps reduces quality, but at least fixes crashes.
PS: does anybody know how to implement a CRASH FREE manual shader-based mipmaps generation on ATI on OpenGL? I had a problems with it since the beginning.

There a lot of things what should be done for perfect support of the Rift. The main task is obtaining a DK2, but this is hard because I live in Russia - the country where Oculus did not ship their devices. Other issues are bad tracking latency and lack of direct mode support. I using OpenGL in SpaceEngine and can't make it work in direct mode. Lack of good OpenGL example code is also an issue. Also this release was built with 0.4.3 SDK, because I has weird glitches with the 0.4.4. Interface should be completely reworked to use in Rift, this probably will be made in the next version.

But anyway experience in Rift is just amazing. I hope a nice feedback from this community. Enjoy!
115 REPLIES 115

AGL1
Protege
@SpaceEngineer CV1 owner here, can you tell mw which version number you have released that has 1.6 Oculus runtime support please?

Anonymous
Not applicable
Really want this to work with CV1  😮

SpaceEngineer
Explorer
I haven't released it yet. It is will WIP.

Anonymous
Not applicable
Any dates? 🙂

SpaceEngineer
Explorer
Wtf, sometimes app deadlocked in ovr_Initialize(), typically at first run after system boot. How to fix that?

wooferwolf
Honored Guest
I too am waiting eagerly on the edge of my seat for space engine to be released for the CV1!!!! 

kojack
MVP
MVP


Wtf, sometimes app deadlocked in ovr_Initialize(), typically at first run after system boot. How to fix that?


That sounds odd. How long after system boot? Could windows still be starting some background stuff and the Oculus service hasn't started yet?

Also, were you wearing the HMD when it started? The first run will block the game (well, block it from being seen, I haven't tested to see if it deadlocks the init) until the safety warning is approved in VR. After that it shouldn't appear again until you've gone too long without being in VR.

Author: Oculus Monitor,  Auto Oculus Touch,  Forum Dark Mode, Phantom Touch Remover,  X-Plane Fixer
Hardware: Threadripper 1950x, MSI Gaming Trio 2080TI, Asrock X399 Taich
Headsets: Wrap 1200VR, DK1, DK2, CV1, Rift-S, GearVR, Go, Quest, Quest 2, Reverb G2

SpaceEngineer
Explorer
If launch Oculus Home before launching the game, it don't deadlock.

SpaceEngineer
Explorer
So I am focused now on better VR support. What I planning to do:

- Vive controllers support (WIP), interface toolbars appeared as "holograms" near them in VR. If some window is opened, it became fixed in space in front of user, "laser ray" emitted by controller is used to simulate mouse cursor (as it done in every game for Vive). For Oculus, look directly at the interface element (crosshair point will be rendered in center of view to help this) and press A controller button.
- Decouple move direction from view direction, as has been discussed here.
- Motion direction in Vive is pointed by "laser". Controller's touchpad to adjust speed, second touchpad to change stereobase.
- Restrict planet LOD at large stereobase (let's call it "God eye mode"). It will help to reduce load on processor and GPU. Only coarse LOD levels are needed if planet have a size of apple.
- Disable collision detection with planets in the "God eye mode". It really disturbing. [done]
- Render something inside planets. It's possible to enter inside planets in "God eye mode", so some red glow could be better than nothing.
- Make a near clipping plane changed together with stereobase. It will help to get rid of stars flying directly into eyes.
- Fade out star lens flare from larger distance in God mode. So sun will not blind when you approach it to observe.
- Orbit points must have constant size in space (don't change size when you approach them, as regular billboards). [done]
- Text labels near stars and planets must be fixed in 3D, and also have constant size.
- Don't turn view to the target when using "goto" function to avoid sickness, instant turn when using "center" function.
- Reduce distance unit in SE. Now it is 1 parsec, so smallest possible move is 1 pc / 2^64 = 3 mm - too much for VR. You can notice this if trying to explore small space ship (with time paused, to disable more large wobbling due to floating point precision issues).
- The chart mode interface should be moved to controller's "holograthic toolbars". It also should have a mode where planets are placed next to each other in order of their orbit size, ie Mercury-Venus-Earth an so on (like in the "Titans of Space").
- Solar system browser should be a variation of the chart mode. Maybe something similar to a system map in Elite Dangerous. Could be useful in non-VR mode also.
- The map mode will be wonderful in a room-scale VR. Imagine looking into a holographic sphere in center of your room, which represents a spherical slice of the Universe. Change scale with controller to zoom from a planet to a galaxy. Draw planned path for a ship using controller as 3D paint brush. Indeed, maybe some futuristic room model must be used in this mode.

Other suggestions?

Anonymous
Not applicable
Seems pretty extensive! Nice start 🙂