Fixes for Win32 build

This commit is contained in:
Robert Osfield
2002-07-11 11:36:25 +00:00
parent eca5797ae4
commit cd3c2c0b77
2 changed files with 14 additions and 8 deletions

View File

@@ -172,6 +172,12 @@ void State::captureCurrentState(StateSet& stateset) const
}
// visual studio 6.0 doesn't appear to define std::max?!? So do our own here..
template<class T>
T mymax(const T& a,const T& b)
{
return (((a) > (b)) ? (a) : (b));
}
void State::apply(const StateSet* dstate)
{
@@ -190,9 +196,9 @@ void State::apply(const StateSet* dstate)
const StateSet::TextureAttributeList& ds_textureAttributeList = dstate->getTextureAttributeList();
unsigned int unit;
unsigned int unitMax = std::max(static_cast<unsigned int>(ds_textureModeList.size()),static_cast<unsigned int>(ds_textureAttributeList.size()));
unitMax = std::max(static_cast<unsigned int>(unitMax),static_cast<unsigned int>(_textureModeMapList.size()));
unitMax = std::max(static_cast<unsigned int>(unitMax),static_cast<unsigned int>(_textureAttributeMapList.size()));
unsigned int unitMax = mymax(static_cast<unsigned int>(ds_textureModeList.size()),static_cast<unsigned int>(ds_textureAttributeList.size()));
unitMax = mymax(static_cast<unsigned int>(unitMax),static_cast<unsigned int>(_textureModeMapList.size()));
unitMax = mymax(static_cast<unsigned int>(unitMax),static_cast<unsigned int>(_textureAttributeMapList.size()));
for(unit=0;unit<unitMax;++unit)
{
if (setActiveTextureUnit(unit))
@@ -225,7 +231,7 @@ void State::apply()
applyAttributeMap(_attributeMap);
unsigned int unit;
unsigned int unitMax = std::max(_textureModeMapList.size(),_textureAttributeMapList.size());
unsigned int unitMax = mymax(_textureModeMapList.size(),_textureAttributeMapList.size());
for(unit=0;unit<unitMax;++unit)
{
if (setActiveTextureUnit(unit))