void kore_program_linkwithstructures2(BKore_Program* p, BKore_Shader* vs, BKore_Shader* fs, BKore_VertexStructure* s0, BKore_VertexStructure* s1, BKore_VertexStructure* s2, BKore_VertexStructure* s3, int size) { Kore::Program* program = reinterpret_cast<Kore::Program*>(p); Kore::Shader* vertexShader = reinterpret_cast<Kore::Shader*>(vs); Kore::Shader* fragmentShader = reinterpret_cast<Kore::Shader*>(fs); program->setVertexShader(vertexShader); program->setFragmentShader(fragmentShader); Kore::VertexStructure* structures2[4] = { reinterpret_cast<Kore::VertexStructure*>(s0), reinterpret_cast<Kore::VertexStructure*>(s1), reinterpret_cast<Kore::VertexStructure*>(s2), reinterpret_cast<Kore::VertexStructure*>(s3) }; program->link(structures2, size); }
extern "C" vbyte *hl_kore_program_get_textureunit(vbyte *program, vbyte *name) { Kore::Program* prog = (Kore::Program*)program; return (vbyte*)new Kore::TextureUnit(prog->getTextureUnit((char*)name)); }
extern "C" vbyte *hl_kore_program_get_constantlocation(vbyte *program, vbyte *name) { Kore::Program* prog = (Kore::Program*)program; return (vbyte*)new Kore::ConstantLocation(prog->getConstantLocation((char*)name)); }
extern "C" void hl_kore_program_set(vbyte *program) { Kore::Program* prog = (Kore::Program*)program; prog->set(); }
extern "C" void hl_kore_program_link(vbyte *program, vbyte *structure) { Kore::Program* prog = (Kore::Program*)program; Kore::VertexStructure* struc = (Kore::VertexStructure*)structure; prog->link(*struc); }
extern "C" void hl_kore_program_set_fragment_shader(vbyte *program, vbyte *shader) { Kore::Program* prog = (Kore::Program*)program; Kore::Shader* sh = (Kore::Shader*)shader; prog->setFragmentShader(sh); }
extern "C" void hl_kore_program_set_vertex_shader(vbyte *program, vbyte *shader) { Kore::Program* prog = (Kore::Program*)program; Kore::Shader* sh = (Kore::Shader*)shader; prog->setVertexShader(sh); }