static bool ep_compile_pass(struct effect_parser *ep, struct gs_effect_technique *tech, struct ep_technique *tech_in, size_t idx) { struct gs_effect_pass *pass; struct ep_pass *pass_in; bool success = true; pass = tech->passes.array+idx; pass_in = tech_in->passes.array+idx; pass->name = bstrdup(pass_in->name); pass->section = EFFECT_PASS; if (!ep_compile_pass_shader(ep, tech, pass, pass_in, idx, GS_SHADER_VERTEX)) { success = false; blog(LOG_ERROR, "Pass (%i) <%s> missing vertex shader!", idx, pass->name ? pass->name : ""); } if (!ep_compile_pass_shader(ep, tech, pass, pass_in, idx, GS_SHADER_PIXEL)) { success = false; blog(LOG_ERROR, "Pass (%i) <%s> missing pixel shader!", idx, pass->name ? pass->name : ""); } return success; }
static bool ep_compile_pass(struct effect_parser *ep, struct gs_effect_technique *tech, struct ep_technique *tech_in, size_t idx) { struct gs_effect_pass *pass; struct ep_pass *pass_in; bool success = true; pass = tech->passes.array+idx; pass_in = tech_in->passes.array+idx; pass->name = bstrdup(pass_in->name); pass->section = EFFECT_PASS; if (!ep_compile_pass_shader(ep, tech, pass, pass_in, idx, GS_SHADER_VERTEX)) success = false; if (!ep_compile_pass_shader(ep, tech, pass, pass_in, idx, GS_SHADER_PIXEL)) success = false; return success; }