It imports the 3D position, color, and brightness from star catalogs such as Hipparcos:
https://www.cosmos.esa.int/web/hipparcos/catalogues [www.cosmos.esa.int]
Currently, I have two passes, a core pass, and a sprite pass.
The core pass uses points with pscale based on brightness and distance from camera. The core pass renders relatively quickly.
The sprite pass uses a small image for the star glow with varying opacity.
The challenge is the sprite pass render is taking significantly longer. e.g. ~20 minutes for a 2K square render.
Our target resolution is 4K square, which will take a prohibitively long time to render.
My understanding is the challenge is that Mantra has to ray-march through each sprite for pixels that are not fully opaque.
When we have thousands of overlapping partially transparent sprites, the number of marches can climb into the 1000s.
Ideally, what we need is a custom renderer that just accumulates the brightness of overlapping sprites.
Over the years, I have seen Houdini posts of custom renderers written in VEX and VOPs.
Does anyone have any suggestions on how one would go about writing a custom sprite brightness accumulation ray-marcher?
Keeping in mind it would need to be compatible with the custom fisheye lens shader that Matt Blackwell developed (see earlier post).
Please find attached examples:
- star glow sprite
- 2K square polar/fisheye render of star sprites. ~17 minute render.
Any suggestions would be much appreciated.
Thanks