I am planning to design a new engine (what i am doing with my life?!) and in this new engine (which will be just actually a heavily refactored version of the current one), i will finally enable my software rendered ray tracer alongside with my current existing software rendered rasterizer.
It can be flipped on and off any time i want, by just flipping a variable, that decides which rendering path i use.
I designed the rasterizer to be backwards compatible to even 32 bit cpus and a few 100ish mhz cpus. It consumes about 20 mbyte of ram, as i use small unfiltered textures, and generating low poly count objects.
In contrast, the ray tracer requires 64 gb ram and a 24 logical core cpu. It can not be back scaled below this to produce enjoyable output. Therefore, if these machine requirements are not being met, it switches back to the rasterizer which targets your grandmothers old cyrix cpu.
Was someone already in similar situation? If yes, do you tried to create a medium graphics settings somehow? How did you communicated the big difference to the users?