mirror of
https://github.com/TES3MP/openmw-tes3mp.git
synced 2025-01-30 22:45:34 +00:00
Merge pull request #2495 from Capostrophic/clamp
Fix non-tiling textures clamp mode (bug #5137)
This commit is contained in:
commit
043231737d
2 changed files with 7 additions and 6 deletions
|
@ -127,6 +127,7 @@
|
||||||
Bug #5112: Insufficient magicka for current spell not reflected on HUD icon
|
Bug #5112: Insufficient magicka for current spell not reflected on HUD icon
|
||||||
Bug #5123: Script won't run on respawn
|
Bug #5123: Script won't run on respawn
|
||||||
Bug #5124: Arrow remains attached to actor if pulling animation was cancelled
|
Bug #5124: Arrow remains attached to actor if pulling animation was cancelled
|
||||||
|
Bug #5137: Textures with Clamp Mode set to Clamp instead of Wrap are too dark outside the boundaries
|
||||||
Feature #1774: Handle AvoidNode
|
Feature #1774: Handle AvoidNode
|
||||||
Feature #2229: Improve pathfinding AI
|
Feature #2229: Improve pathfinding AI
|
||||||
Feature #3025: Analogue gamepad movement controls
|
Feature #3025: Analogue gamepad movement controls
|
||||||
|
|
|
@ -408,8 +408,8 @@ namespace NifOsg
|
||||||
unsigned int clamp = static_cast<unsigned int>(textureEffect->clamp);
|
unsigned int clamp = static_cast<unsigned int>(textureEffect->clamp);
|
||||||
int wrapT = (clamp) & 0x1;
|
int wrapT = (clamp) & 0x1;
|
||||||
int wrapS = (clamp >> 1) & 0x1;
|
int wrapS = (clamp >> 1) & 0x1;
|
||||||
texture2d->setWrap(osg::Texture::WRAP_S, wrapS ? osg::Texture::REPEAT : osg::Texture::CLAMP);
|
texture2d->setWrap(osg::Texture::WRAP_S, wrapS ? osg::Texture::REPEAT : osg::Texture::CLAMP_TO_EDGE);
|
||||||
texture2d->setWrap(osg::Texture::WRAP_T, wrapT ? osg::Texture::REPEAT : osg::Texture::CLAMP);
|
texture2d->setWrap(osg::Texture::WRAP_T, wrapT ? osg::Texture::REPEAT : osg::Texture::CLAMP_TO_EDGE);
|
||||||
|
|
||||||
osg::ref_ptr<osg::TexEnvCombine> texEnv = new osg::TexEnvCombine;
|
osg::ref_ptr<osg::TexEnvCombine> texEnv = new osg::TexEnvCombine;
|
||||||
texEnv->setCombine_Alpha(osg::TexEnvCombine::REPLACE);
|
texEnv->setCombine_Alpha(osg::TexEnvCombine::REPLACE);
|
||||||
|
@ -777,8 +777,8 @@ namespace NifOsg
|
||||||
|
|
||||||
// inherit wrap settings from the target slot
|
// inherit wrap settings from the target slot
|
||||||
osg::Texture2D* inherit = dynamic_cast<osg::Texture2D*>(stateset->getTextureAttribute(flipctrl->mTexSlot, osg::StateAttribute::TEXTURE));
|
osg::Texture2D* inherit = dynamic_cast<osg::Texture2D*>(stateset->getTextureAttribute(flipctrl->mTexSlot, osg::StateAttribute::TEXTURE));
|
||||||
osg::Texture2D::WrapMode wrapS = osg::Texture2D::CLAMP;
|
osg::Texture2D::WrapMode wrapS = osg::Texture2D::CLAMP_TO_EDGE;
|
||||||
osg::Texture2D::WrapMode wrapT = osg::Texture2D::CLAMP;
|
osg::Texture2D::WrapMode wrapT = osg::Texture2D::CLAMP_TO_EDGE;
|
||||||
if (inherit)
|
if (inherit)
|
||||||
{
|
{
|
||||||
wrapS = inherit->getWrap(osg::Texture2D::WRAP_S);
|
wrapS = inherit->getWrap(osg::Texture2D::WRAP_S);
|
||||||
|
@ -1392,8 +1392,8 @@ namespace NifOsg
|
||||||
int wrapT = (clamp) & 0x1;
|
int wrapT = (clamp) & 0x1;
|
||||||
int wrapS = (clamp >> 1) & 0x1;
|
int wrapS = (clamp >> 1) & 0x1;
|
||||||
|
|
||||||
texture2d->setWrap(osg::Texture::WRAP_S, wrapS ? osg::Texture::REPEAT : osg::Texture::CLAMP);
|
texture2d->setWrap(osg::Texture::WRAP_S, wrapS ? osg::Texture::REPEAT : osg::Texture::CLAMP_TO_EDGE);
|
||||||
texture2d->setWrap(osg::Texture::WRAP_T, wrapT ? osg::Texture::REPEAT : osg::Texture::CLAMP);
|
texture2d->setWrap(osg::Texture::WRAP_T, wrapT ? osg::Texture::REPEAT : osg::Texture::CLAMP_TO_EDGE);
|
||||||
|
|
||||||
int texUnit = boundTextures.size();
|
int texUnit = boundTextures.size();
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue