MCPcopy Create free account
hub / github.com/TheForceEngine/TheForceEngine / loadShaders

Function loadShaders

TheForceEngine/TFE_RenderShared/lineDraw2d.cpp:60–110  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

58 static u32 s_width, s_height;
59
60 bool loadShaders()
61 {
62 ShaderDefine defines[3] = {};
63 u32 defineCount = 0;
64 if (s_shaderSettings.bloom)
65 {
66 defines[0].name = "OPT_BLOOM";
67 defines[0].value = "1";
68 defineCount++;
69 }
70
71 if (!s_shaderParam[LINE_DRAW_SOLID].shader.load("Shaders/line2d.vert", "Shaders/line2d.frag", defineCount, defines, SHADER_VER_STD))
72 {
73 return false;
74 }
75 s_shaderParam[LINE_DRAW_SOLID].scaleOffset = s_shaderParam[LINE_DRAW_SOLID].shader.getVariableId("ScaleOffset");
76 if (s_shaderParam[LINE_DRAW_SOLID].scaleOffset < 0)
77 {
78 return false;
79 }
80
81 // Dashed lines.
82 defines[defineCount].name = "OPT_DASHED_LINE";
83 defines[defineCount].value = "1";
84 defineCount++;
85 if (!s_shaderParam[LINE_DRAW_DASHED].shader.load("Shaders/line2d.vert", "Shaders/line2d.frag", defineCount, defines, SHADER_VER_STD))
86 {
87 return false;
88 }
89 s_shaderParam[LINE_DRAW_DASHED].scaleOffset = s_shaderParam[LINE_DRAW_DASHED].shader.getVariableId("ScaleOffset");
90 if (s_shaderParam[LINE_DRAW_DASHED].scaleOffset < 0)
91 {
92 return false;
93 }
94
95 // Curve + Dashed Lines
96 defines[defineCount].name = "OPT_CURVE";
97 defines[defineCount].value = "1";
98 defineCount++;
99 if (!s_shaderParam[LINE_DRAW_CURVE_DASHED].shader.load("Shaders/line2d.vert", "Shaders/line2d.frag", defineCount, defines, SHADER_VER_STD))
100 {
101 return false;
102 }
103 s_shaderParam[LINE_DRAW_CURVE_DASHED].scaleOffset = s_shaderParam[LINE_DRAW_CURVE_DASHED].shader.getVariableId("ScaleOffset");
104 if (s_shaderParam[LINE_DRAW_CURVE_DASHED].scaleOffset < 0)
105 {
106 return false;
107 }
108
109 return true;
110 }
111
112 bool init(bool allowBloom)
113 {

Callers 2

initFunction · 0.85
lineDraw2d_drawLinesFunction · 0.85

Calls 2

getVariableIdMethod · 0.80
loadMethod · 0.45

Tested by

no test coverage detected