Draws text with custom pixel shader effect.
Takes text (string to display, any UTF-8 text), x (X position in pixels, integer), y (Y position in pixels, integer), centre (alignment: 0=left-aligned, 1=centered on x position), font (font handle from b2dLoadFont, positive integer), shader (shader handle from b2dLoadTextShader, 0=default).
Returns nothing.
2D Overlay
Parameters & Returns
Parameters
textString
xInt
yInt
centreInt
fontInt
shaderInt
Returns
Void
Quick Summary
Draws text with custom pixel shader effect.
Takes text (string to display, any UTF-8 text), x (X position in pixels, integer), y (Y position in pixels, integer), centre (alignment: 0=left-aligned, 1=centered on x position), font (font handle from b2dLoadFont, positive integer), shader (shader handle from b2dLoadTextShader, 0=default).
Returns nothing.
Technical Exegesis...
Draws text with custom pixel shader effect. Takes text (string to display, any UTF-8 text), x (X position in pixels, integer), y (Y position in pixels, integer), centre (alignment: 0=left-aligned, 1=centered on x position), font (font handle from b2dLoadFont, positive integer), shader (shader handle from b2dLoadTextShader, 0=default). Returns nothing. Extended version of b2dDrawText with per-draw shader control, queues text draw command with custom shader to deferred rendering buffer.
Draws text with custom pixel shader effect. Takes text (string to display, any UTF-8 text), x (X position in pixels, integer), y (Y position in pixels, integer), centre (alignment: 0=left-aligned, 1=centered on x position), font (font handle from b2dLoadFont, positive integer), shader (shader handle from b2dLoadTextShader, 0=default). Returns nothing. Extended version of b2dDrawText with per-draw shader control, queues text draw command with custom shader to deferred rendering buffer.
Shader usage: shader=0 uses default text shader (standard rendering), shader>0 applies custom pixel shader (outline, glow, shadow effects), shader applies to entire text string (not per-character), shader uniforms set with b2dSetTextShaderFloat/Int functions.
Performance: custom shaders slightly slower than default (~0.03ms vs 0.02ms per string), shader complexity affects cost (simple outline fast, complex effects slower), shader compiled once and cached (no per-frame cost).
Common patterns: outlined text = outlineShader=b2dLoadTextShader("outline.cso"): b2dDrawTextEx("Player", x, y, 0, font, outlineShader); glowing text = b2dSetTextShaderFloat(glowShader, "intensity", 1.5): b2dDrawTextEx("POWER UP!", x, y, 1, font, glowShader); default rendering = b2dDrawTextEx(text, x, y, 0, font, 0).
Shader parameters: set shader uniforms before draw call using b2dSetTextShaderFloat/b2dSetTextShaderInt/b2dSetTextShaderFloat2/etc, parameters persist until changed, multiple draws can share same shader with different parameters.
Related: b2dDrawText draws text with default shader, b2dLoadTextShader loads custom text shader, b2dSetTextShaderFloat sets shader float parameter, b2dFreeTextShader releases shader resources.