[Present]
; Uncomment to enable a custom shader thats implements an Overlay
; for Presets actions.
; Copy and Paste in the first line just after [Present], this fix an
; one eye issue with the overlay using CustomShader3DVision2SBS.
run = CustomShaderOverlay

;Uncomment to enalbe a custom shader that implements a HELP Overlay
; Copy and Paste in the first line just after [Present], this fix an
; one eye issue with the overlay using CustomShaderOverlay.
run = CustomShaderHELP


; ****** CUSTOM SHADER OVERLAY ******************************************
[ResourceOverlayFont]
; Note that this font has the size of each character embedded in the unused
; space of the final character, which the geometry shader uses to render each
; character the correct width. This font was generated with gen_bm_font.py,
; then converted to DDS (because our PNG loading seems to be broken o_O):
filename = ShaderFixes\LiberationSans-Bold.dds

[CustomShaderOverlay]
; The vertex shader passes draw indexes to the geometry shader:
vs = ShaderFixes/overlay_hud.hlsl
; The geometry shader generates the text for a given draw index:
gs = ShaderFixes/overlay_hud.hlsl
; The pixel shader draws the font:
ps = ShaderFixes/overlay_hud.hlsl
cull = none
; Enable alpha blending. To change the text colour, edit the pixel shader:
blend = add one inv_src_alpha
; Use points as the primitive from the vertex shader to the geometry shader:
topology = point_list
run = CommandListUnbindAllRenderTargets
o0 = set_viewport no_view_cache bb
; Font is passed into the pixel shader (to draw it) *and* the geometry shader
; (as the character sizes are encoded in the final character of the font):
gs-t100 = ResourceOverlayFont
ps-t100 = ResourceOverlayFont
post gs-t100 = null
post ps-t100 = null
x3 = time
; Change this number to set how many lines of text may be drawn:
draw = 1, 0

[CommandListUpdateActivationTime]
y3 = time
post y3 = time

; ****** CUSTOM SHADER HELP *********************************************
[CustomShaderHELP]
; The vertex shader passes draw indexes to the geometry shader:
vs = ShaderFixes/overlay_help.hlsl
; The geometry shader generates the text for a given draw index:
gs = ShaderFixes/overlay_help.hlsl
; The pixel shader draws the font:
ps = ShaderFixes/overlay_help.hlsl
cull = none
; Enable alpha blending. To change the text colour, edit the pixel shader:
blend = add one inv_src_alpha
; Use points as the primitive from the vertex shader to the geometry shader:
topology = point_list
run = CommandListUnbindAllRenderTargets
o0 = set_viewport no_view_cache bb
; Font is passed into the pixel shader (to draw it) *and* the geometry shader
; (as the character sizes are encoded in the final character of the font):
gs-t100 = ResourceOverlayFont
ps-t100 = ResourceOverlayFont
post gs-t100 = null
post ps-t100 = null
; Change this number to set how many lines of text may be drawn:
draw = 8, 0
