icecoldduke, on 12 September 2015 - 07:38 AM, said:
I don't know what the last part means but I'm assuming your renderer is something like this(I hope your not rendering lights at random stages during the frame :/):
For Each Light Render Shadow Pass Render Light Pass
This is wrong because in order for the light pass to start doing work the shadow pass has to get done first and you would be waiting for those draw calls to get submitted to the card, and then you have to wait for it complete.
You should do something like this.
For Each Light in view
Render Shadow Pass into LOD'd Render Targets
For Each Light in view
Render the Light
This allows the graphics card to render all of the shadows at once, then render all the lights. All the draw calls will get submitted to the card and probably even completed by the time you render all your lights. The shadow draw calls will get submitted and then the next light will do the same, without having to wait for the previous shadow pass to complete. You need to ensure your renderer isn't stalling waiting for a previous pass to complete.
For your sky light(sun or moon) you should be using cascaded shadow mapping it will give you the quality you need.
The lighting and shadows work nothing like that. Not even close. You're making assumptions about a codebase you have never seen, and questioning my ability based on those assumptions.
Also Console Development is a hell of a lot different than PC development in a lot of respects. You're developing on one piece of hardware in that case so you know exactly what to expect. When developing for PC, you have to consider many different video card and CPU manufacturers. I've already run into this situation, where a particular vendor and their drivers don't act how they should. The stalling? Not my fault, I need to find a workaround.
Quote
Ok, I'm losing my patience now. You have no fucking idea what you're going on about in this case. I'm not "Salvaging" shit. How in the mother FUCK do you expect me to be able to see half of the shit in-game and other information until I you know.... actually implement it in OpenGL? The whole purpose for having the software renderer still there is so I can compare between OpenGL and Software side-by-side, and also to see information that hasn't been migrated over to OpenGL! Without that, there'd be no point of reference... nothing to tell if something has been done right or not. This isn't like building a game from the ground up, there's a lot to code needing to be re-written/re-implemented.

Help
Duke4.net
DNF #1
Duke 3D #1






