This adjusts the draw callbacks api to take in the color of the full
screen overlay the client would have rendered. This is primarily used in
godwars, underwater, darkmeyer, etc. Having them rasterized on the cpu
is slow, especially with gpu on since we additionally have to compute
the alpha per-pixel.
While nothing passed to comp_unordered uses orientation, the uniform
block is not bound in this shader, and rotate() accesses sinCosTable. So
I'm not sure why this has ever worked.
Having all 3 sampling branches feed into one colorblind() call was
breaking some versions of Intel's drivers whenever the xbr sampling code
was merely present. Changing each branch to individually call
colorblind() seems to fix it.
Prior to 8c00f6da88 the interpolation of fragment
shader inputs appears to not have been accounting for perspective. This broke
texturing due to the texture ids being interpolated for perspective which was
fixed in 47e0ac8032. The hsl values similarly
require not accounting for perspective, so the noperspective interpolation
qualifier has been added. It is unclear to me why the geometry shader removal
would affect the interpolation like this since it was emitting vertices with
the correct z values.
The face sorting still requires the toScreen function to match exactly
the same order that would be computed on CPU, but for the projection for
rendering we can simplify it by replacing it with a projection matrix.
This also drops the requirement of having a geometry shader to remove
faces too close to or behind the camera. Upon closer inspection it looks
like the client can draw faces which have at least one vertex which is
>= 50 from the camera, so this now more accurately reflects the software
renderer.
Co-authored-by: Adam <Adam@sigterm.info>
Putting this if statement behind `localId < size` causes major visual
glitches with the Mesa graphics driver on AMD cards. We think this is a compiler bug as this change shouldn't be affecting anything.
This changes the font name and family for runescape.ttf to just
`RuneScape`, and the family of runescape_bold.ttf to `RuneScape`, with
the name `RuneScape Bold`. It also sets OS/2 weight and style to Bold.
This allows swing's HTML viewer to switch between these fonts naturally
with just a font-weight style, or a <strong> element