mirror of
https://github.com/overte-org/overte.git
synced 2025-04-20 11:45:36 +02:00
fix build buster
This commit is contained in:
parent
c3d1d13fa9
commit
ac3a963eca
2 changed files with 60 additions and 30 deletions
|
@ -35,6 +35,7 @@ using namespace std;
|
|||
static int modelPointerTypeId = qRegisterMetaType<QPointer<Model> >();
|
||||
static int weakNetworkGeometryPointerTypeId = qRegisterMetaType<QWeakPointer<NetworkGeometry> >();
|
||||
static int vec3VectorTypeId = qRegisterMetaType<QVector<glm::vec3> >();
|
||||
float Model::FAKE_DIMENSION_PLACEHOLDER = -1.0f;
|
||||
|
||||
Model::Model(QObject* parent) :
|
||||
QObject(parent),
|
||||
|
@ -123,35 +124,64 @@ void Model::setOffset(const glm::vec3& offset) {
|
|||
void Model::initProgram(ProgramObject& program, Model::Locations& locations, int specularTextureUnit) {
|
||||
program.bind();
|
||||
|
||||
#ifdef Q_OS_MAC
|
||||
// HACK: Assign explicitely the attribute channel to avoid a bug on Yosemite
|
||||
glBindAttribLocation(program.programId(), 4, "tangent");
|
||||
glLinkProgram(program.programId());
|
||||
#endif
|
||||
|
||||
locations.tangent = program.attributeLocation("tangent");
|
||||
locations.alphaThreshold = program.uniformLocation("alphaThreshold");
|
||||
program.setUniformValue("diffuseMap", 0);
|
||||
program.setUniformValue("normalMap", 1);
|
||||
program.setUniformValue("specularMap", specularTextureUnit);
|
||||
program.release();
|
||||
}
|
||||
|
||||
void Model::initSkinProgram(ProgramObject& program, Model::SkinLocations& locations, int specularTextureUnit) {
|
||||
initProgram(program, locations, specularTextureUnit);
|
||||
|
||||
#ifdef Q_OS_MAC
|
||||
// HACK: Assign explicitely the attribute channel to avoid a bug on Yosemite
|
||||
glBindAttribLocation(program.programId(), 5, "clusterIndices");
|
||||
glBindAttribLocation(program.programId(), 6, "clusterWeights");
|
||||
glLinkProgram(program.programId());
|
||||
#endif
|
||||
|
||||
program.bind();
|
||||
locations.clusterMatrices = program.uniformLocation("clusterMatrices");
|
||||
|
||||
locations.clusterIndices = program.attributeLocation("clusterIndices");
|
||||
locations.clusterWeights = program.attributeLocation("clusterWeights");
|
||||
#ifdef Q_OS_MAC
|
||||
|
||||
// HACK: Assign explicitely the attribute channel to avoid a bug on Yosemite
|
||||
|
||||
glBindAttribLocation(program.programId(), 4, "tangent");
|
||||
|
||||
glLinkProgram(program.programId());
|
||||
|
||||
#endif
|
||||
|
||||
|
||||
|
||||
locations.tangent = program.attributeLocation("tangent");
|
||||
|
||||
locations.alphaThreshold = program.uniformLocation("alphaThreshold");
|
||||
|
||||
program.setUniformValue("diffuseMap", 0);
|
||||
|
||||
program.setUniformValue("normalMap", 1);
|
||||
|
||||
program.setUniformValue("specularMap", specularTextureUnit);
|
||||
|
||||
program.release();
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
void Model::initSkinProgram(ProgramObject& program, Model::SkinLocations& locations, int specularTextureUnit) {
|
||||
|
||||
initProgram(program, locations, specularTextureUnit);
|
||||
|
||||
|
||||
|
||||
#ifdef Q_OS_MAC
|
||||
|
||||
// HACK: Assign explicitely the attribute channel to avoid a bug on Yosemite
|
||||
|
||||
glBindAttribLocation(program.programId(), 5, "clusterIndices");
|
||||
|
||||
glBindAttribLocation(program.programId(), 6, "clusterWeights");
|
||||
|
||||
glLinkProgram(program.programId());
|
||||
|
||||
#endif
|
||||
|
||||
|
||||
|
||||
program.bind();
|
||||
|
||||
locations.clusterMatrices = program.uniformLocation("clusterMatrices");
|
||||
|
||||
|
||||
|
||||
locations.clusterIndices = program.attributeLocation("clusterIndices");
|
||||
|
||||
locations.clusterWeights = program.attributeLocation("clusterWeights");
|
||||
|
||||
program.release();
|
||||
}
|
||||
|
||||
|
|
|
@ -199,7 +199,7 @@ protected:
|
|||
glm::vec3 _scale;
|
||||
glm::vec3 _offset;
|
||||
|
||||
const float FAKE_DIMENSION_PLACEHOLDER = -1.0f;
|
||||
static float FAKE_DIMENSION_PLACEHOLDER;
|
||||
|
||||
bool _scaleToFit; /// If you set scaleToFit, we will calculate scale based on MeshExtents
|
||||
glm::vec3 _scaleToFitDimensions; /// this is the dimensions that scale to fit will use
|
||||
|
|
Loading…
Reference in a new issue