I made many experiments (begining with translucent 3D water) and i have nearly working rendering part of 3D floors.
Yes, only rendering part - that means, renderer can create all needed fake planes and fake sides.
Problem is with sorting, new fake 3D rendering needs new sorting algorithm that will count with fake planes, fake lines, middle textures and sprites - and i have no idea about this algorithm.
I don't spend so much time on this, so releasing what i have working can allow more people work on it.
What is (semi)working?
- fake planes (flats) computing
- fake midtextures (3D floor sides) rendering
- real-time transfer light on real walls
Any problems/what needs to be done ?
- missing sorting algorithm
- fake planes does not appear when skybox is visible
- fake midtextures are not translucent
- fake midtextures don't count with backsector fake floors (= walls in water!)
- slopes are problematic, it does not matter if you have sloped fake floor, or normal sloped floor touching fake floor.
- transfer light does not color sprites correctly (i were not working on sprite coloring)
So, i hope someone will be able to continue, or finish this work. Would not be 3D floors in ZDoom's software renderer cool?
Dev info: diff file created on revision 2296 (yes, its little older), i hope all my changes are marked with // kg3D For anyone who don't want to (or can't) patch/compile i can provide only screenshots from random progress (i am running on linux):
Spoiler:More screenshots here.
Most screenshots are taken from few 3D floor supporting mods, in few of them you must "set vid_renderer 1" to play