Skip to content

Conversation

@hrydgard
Copy link
Owner

Admittedly, the Darkstalkers code from #12443 is pretty ugly and somewhat intrusive. This isolates the required code into its own file, RasterizerRectangle.cpp - the impact to Rasterizer.cpp and TransformUnit.cpp is now very minimal.

If a fully JIT-ed part is added, I'd expect us to also keep around the non-JITed path so that the SW rasterizer can still function on non-JIT-ed platforms. In such a scenario the maintenance cost for keeping this around is very very low (just don't implement this stuff in the JITed path).

I do think the idea of detecting rectangles and drawing them with a different path has merit even for a future fully JIT-ed software renderer - it can eliminate quite a bit of CPU work at no cost to accuracy.

That said, the current rectangle specialization does need a little work with regards to pixel rounding/raster position.

@hrydgard hrydgard added this to the v1.10.0 milestone Oct 28, 2019
@unknownbrackets unknownbrackets merged commit 4a757db into master Oct 30, 2019
@hrydgard hrydgard deleted the softgpu-rectangle-cleanup branch October 4, 2020 12:01
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants