▲ 52 r/StarVeil4x+2 crossposts

Relativistic Black Hole

I wanted something physically grounded that still runs fast on a single quad billboard and looks cool.

How the effect works: Ray bending, the shader imitates the path of light rays bent by gravity (Schwarzschild metric) directly in the orbital plane of each ray. Then accretion disk. Instead of marching through dense 3D volumes, disk intersections are calculated as angular plane crossings.

"Relativistic" here means mostly Doppler beaming, when matter orbiting towards the observer appears significantly brighter and shifted towards blue, while receding matter looks dimmer and redder. Neil Tyson's nyoo-o-om, but for light. Usually it's not that visible, but I like it a bit exaggerated, and my implementation got this disco ball feel, but real black holes are way more achromatic, and yes, it turns out that famous orange photo shows a false color used by scientists to represent radio waves and heat. ..Come to think of it, that makes sense.

So, also, there's this shadow & photon ring, that's ISCO boundary(innermost stable circular orbit) and the thin photon ring formed by light that loops around the horizon before reaching the camera.

Background lensing here is actually handled with the sky shader rather than screen texture distortion, yes, meaning ships, planets and any foreground objects actually never get distortion, sliced, I tried to distort all stuff, but it feels like such visual doesn't really suit my game. However, I'm still thinking about black holes in the game and what can -or should- be done with them.

Anyway, thanks for reading. Built with Godot and Rust via gdext. Happy to answer any technical questions.

u/SiriusRU — 13 days ago

Simulating Hundreds of Thousands of Spacecraft in Real-Time | StarVeil 4X Showcase

A technical showcase and engine stress test for StarVeil 4X, an upcoming indie space 4X strategy game developed by me.

In this video, I test the core architecture and graphics engine capabilities:
• Interactive planetary systems: real-time terrain brush editing and fire / vegetation spread simulated via 2D cellular automata.
• Galaxy map navigation featuring hyperlane networks, localized sectors, and dynamic territorial borders.
• Massive fleet simulation stress test: rendering and updating 270,000+ individual spacecraft engaging in orbital swarms, combat and gate jumps, running smoothly on a i5 10400 and budget GTX 1650 via Vulkan Forward+ rendering consuming ~1.6gb of RAM, ~1gb of VRAM.

youtube.com
u/SiriusRU — 23 days ago
▲ 71 r/rust_gamedev+2 crossposts

Godot + Rust + ECS, Procedural Star Map

Project I'm currently working on. The star systems are generated procedurally and interconnected. In the video I focus on just the visuals, however the game already has various decently optimized and scaleable systems(pathfinding etc), modding (JitLua) and a number of other features.
Godot is used as a low-level rendering solution here(I really love it). The scene itself contains almost no nodes, and almost all business logic is on the Rust side, however I must say Godot is a surprisingly capable engine for my needs and a lot of what I do in rust can be done using GDScript or better yet C#, actually I've prototyped a lot of things in C# before writing clean. A lot of MultiMeshInstance3D usage, I still haven't found how instancing is done in a more direct way. Maybe I'll figure it out later, I have some experience with the graphics API, but RenderingDevice is still an enigma to me.

The entire map is mostly simulated at the same time all together and there is a large number of entities at times(up to 200k-400k).
The very fact that you can use whatever is convenient or more suitable for you is a very beautiful feature of this engine thanks to GDExtension and gdext, of course.

youtube.com
u/SiriusRU — 3 months ago