bool LightsHolder::init(std::vector<LightEffect *> effectsArray, Sprite *image) { if (initGLProgramState("Assets/image/makkajai/Shaders3D/pointlight.frag")) { _effectsArray = effectsArray; int idx = 0; sprite = image; for (auto &ef : _effectsArray) { if (ef != nullptr) { v3Color[idx] = Vec3(ef->getLightColor().r, ef->getLightColor().g, ef->getLightColor().b) / 255; lightCutoffRadius[idx] = ef->getLightCutoffRadius(); lightHalfRadius[idx] = ef->getLightHalfRadius(); Point posRelToSprite = PointApplyAffineTransform(Point(ef->getLightPos().x, ef->getLightPos().y), sprite->getWorldToNodeAffineTransform()); _lightPos[idx] = Vec3(posRelToSprite.x, posRelToSprite.y, ef->getLightPos().z); brightness[idx] = ef->getBrightness(); } idx++; } _lightsNumber = idx; setLightColor(); setAmbientLightColor(cocos2d::Color3B(55, 55, 55)); setLightCutoffRadius(); setLightHalfRadius(); // setBrightness(); return true; } return false; }
bool EffectBlur::init(float blurRadius, float sampleNum) { initGLProgramState("Shaders/example_Blur.fsh"); _blurRadius = blurRadius; _blurSampleNum = sampleNum; return true; }
bool LightEffect::init() { if (initGLProgramState("pointlight.frag")) { setLightColor(cocos2d::Color3B::WHITE); setAmbientLightColor(cocos2d::Color3B(127,127,127)); setLightCutoffRadius(500.0f); setLightHalfRadius(0.5f); return true; } return false; }
bool init() { initGLProgramState("Shaders/example_outline.fsh"); Vec3 color(1.0, 0.2, 0.3); GLfloat radius = 0.01; GLfloat threshold = 1.75; _glprogramstate->setUniformVec3("u_outlineColor", color); _glprogramstate->setUniformFloat("u_radius", radius); _glprogramstate->setUniformFloat("u_threshold", threshold); return true; }
bool EffectOutline::init() { initGLProgramState("Shaders/outline.fsh"); return true; }
bool init() { initGLProgramState("Shaders/example_lensFlare.fsh"); return true; }
bool init() { initGLProgramState("Shaders/example_celShading.fsh"); return true; }
bool init() { initGLProgramState("Shaders/example_bloom.fsh"); return true; }
bool init() { initGLProgramState("Shaders/example_greyScale.fsh"); return true; }
bool init() { initGLProgramState("Shaders/example_edgeDetection.fsh"); return true; }
bool EffectNormalMapped::init() { initGLProgramState("Shaders3D/Normal.frag"); _kBump = 2; return true; }
bool EffectNormalMapped::init() { initGLProgramState("mainmenuscene/example_normal.fsh"); _kBump = 2; return true; }