MCPcopy Create free account
hub / github.com/OneLoneCoder/olcPixelGameEngine / SetDecalMode

Method SetDecalMode

olcPixelGameEngine.h:5456–5484  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

5454 }
5455
5456 void SetDecalMode(const olc::DecalMode& mode)
5457 {
5458 if (mode != nDecalMode)
5459 {
5460 switch (mode)
5461 {
5462 case olc::DecalMode::NORMAL:
5463 glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);
5464 break;
5465 case olc::DecalMode::ADDITIVE:
5466 glBlendFunc(GL_SRC_ALPHA, GL_ONE);
5467 break;
5468 case olc::DecalMode::MULTIPLICATIVE:
5469 glBlendFunc(GL_DST_COLOR, GL_ONE_MINUS_SRC_ALPHA);
5470 break;
5471 case olc::DecalMode::STENCIL:
5472 glBlendFunc(GL_ZERO, GL_SRC_ALPHA);
5473 break;
5474 case olc::DecalMode::ILLUMINATE:
5475 glBlendFunc(GL_ONE_MINUS_SRC_ALPHA, GL_SRC_ALPHA);
5476 break;
5477 case olc::DecalMode::WIREFRAME:
5478 glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);
5479 break;
5480 }
5481
5482 nDecalMode = mode;
5483 }
5484 }
5485
5486 void DrawLayerQuad(const olc::vf2d& offset, const olc::vf2d& scale, const olc::Pixel tint) override
5487 {

Callers

nothing calls this directly

Calls

no outgoing calls

Tested by

no test coverage detected