Mergefixes

This commit is contained in:
viktorljung
2016-02-09 22:54:51 +01:00
parent c09c2f4783
commit 001e2441dd
2 changed files with 35 additions and 23 deletions
+20 -12
View File
@@ -204,9 +204,11 @@ void DrawFinalPass::DrawModelRenderQueues(std::list<std::shared_ptr<RenderJob>>&
BindExplosionUniforms(explosionSkinnedHandle, explosionEffectJob, scene); BindExplosionUniforms(explosionSkinnedHandle, explosionEffectJob, scene);
//bind textures //bind textures
BindExplosionTextures(explosionSkinnedHandle, explosionEffectJob); BindExplosionTextures(explosionSkinnedHandle, explosionEffectJob);
if (explosionEffectJob->Animation != nullptr) { std::vector<glm::mat4> frameBones;
std::vector<glm::mat4> frameBones = explosionEffectJob->Skeleton->GetFrameBones(*explosionEffectJob->Animation, explosionEffectJob->AnimationTime); if (explosionEffectJob->AnimationOffset.animation != nullptr) {
glUniformMatrix4fv(glGetUniformLocation(forwardSkinnedHandle, "Bones"), frameBones.size(), GL_FALSE, glm::value_ptr(frameBones[0])); frameBones = explosionEffectJob->Skeleton->GetFrameBones(explosionEffectJob->Animations, explosionEffectJob->AnimationOffset);
} else {
frameBones = explosionEffectJob->Skeleton->GetFrameBones(explosionEffectJob->Animations);
} }
} }
else { else {
@@ -229,9 +231,11 @@ void DrawFinalPass::DrawModelRenderQueues(std::list<std::shared_ptr<RenderJob>>&
//bind textures //bind textures
BindExplosionTextures(explosionSplatMapSkinnedHandle, explosionEffectJob); BindExplosionTextures(explosionSplatMapSkinnedHandle, explosionEffectJob);
GLERROR("asdasd"); GLERROR("asdasd");
if (explosionEffectJob->Animation != nullptr) { std::vector<glm::mat4> frameBones;
std::vector<glm::mat4> frameBones = explosionEffectJob->Skeleton->GetFrameBones(*explosionEffectJob->Animation, explosionEffectJob->AnimationTime); if (explosionEffectJob->AnimationOffset.animation != nullptr) {
glUniformMatrix4fv(glGetUniformLocation(explosionSplatMapSkinnedHandle, "Bones"), frameBones.size(), GL_FALSE, glm::value_ptr(frameBones[0])); frameBones = explosionEffectJob->Skeleton->GetFrameBones(explosionEffectJob->Animations, explosionEffectJob->AnimationOffset);
} else {
frameBones = explosionEffectJob->Skeleton->GetFrameBones(explosionEffectJob->Animations);
} }
} }
else { else {
@@ -271,9 +275,11 @@ void DrawFinalPass::DrawModelRenderQueues(std::list<std::shared_ptr<RenderJob>>&
BindModelUniforms(forwardSkinnedHandle, modelJob, scene); BindModelUniforms(forwardSkinnedHandle, modelJob, scene);
//bind textures //bind textures
BindModelTextures(forwardSkinnedHandle, modelJob); BindModelTextures(forwardSkinnedHandle, modelJob);
if (modelJob->Animation != nullptr) { std::vector<glm::mat4> frameBones;
std::vector<glm::mat4> frameBones = modelJob->Skeleton->GetFrameBones(*modelJob->Animation, modelJob->AnimationTime); if (modelJob->AnimationOffset.animation != nullptr) {
glUniformMatrix4fv(glGetUniformLocation(forwardSkinnedHandle, "Bones"), frameBones.size(), GL_FALSE, glm::value_ptr(frameBones[0])); frameBones = modelJob->Skeleton->GetFrameBones(modelJob->Animations, modelJob->AnimationOffset);
} else {
frameBones = modelJob->Skeleton->GetFrameBones(modelJob->Animations);
} }
} else { } else {
m_ForwardPlusProgram->Bind(); m_ForwardPlusProgram->Bind();
@@ -295,9 +301,11 @@ void DrawFinalPass::DrawModelRenderQueues(std::list<std::shared_ptr<RenderJob>>&
//bind textures //bind textures
BindModelTextures(forwardSplatMapSkinnedHandle, modelJob); BindModelTextures(forwardSplatMapSkinnedHandle, modelJob);
GLERROR("asdasd"); GLERROR("asdasd");
if (modelJob->Animation != nullptr) { std::vector<glm::mat4> frameBones;
std::vector<glm::mat4> frameBones = modelJob->Skeleton->GetFrameBones(*modelJob->Animation, modelJob->AnimationTime); if (modelJob->AnimationOffset.animation != nullptr) {
glUniformMatrix4fv(glGetUniformLocation(forwardSplatMapSkinnedHandle, "Bones"), frameBones.size(), GL_FALSE, glm::value_ptr(frameBones[0])); frameBones = modelJob->Skeleton->GetFrameBones(modelJob->Animations, modelJob->AnimationOffset);
} else {
frameBones = modelJob->Skeleton->GetFrameBones(modelJob->Animations);
} }
} else { } else {
m_ForwardPlusSplatMapProgram->Bind(); m_ForwardPlusSplatMapProgram->Bind();
+10 -6
View File
@@ -104,9 +104,11 @@ void PickingPass::Draw(RenderScene& scene)
if (modelJob->Model->m_RawModel->m_Skeleton != nullptr) { if (modelJob->Model->m_RawModel->m_Skeleton != nullptr) {
if (modelJob->Animation != nullptr) { std::vector<glm::mat4> frameBones;
std::vector<glm::mat4> frameBones = modelJob->Skeleton->GetFrameBones(*modelJob->Animation, modelJob->AnimationTime); if (modelJob->AnimationOffset.animation != nullptr) {
glUniformMatrix4fv(glGetUniformLocation(shaderSkinnedHandle, "Bones"), frameBones.size(), GL_FALSE, glm::value_ptr(frameBones[0])); frameBones = modelJob->Skeleton->GetFrameBones(modelJob->Animations, modelJob->AnimationOffset);
} else {
frameBones = modelJob->Skeleton->GetFrameBones(modelJob->Animations);
} }
} }
} else { } else {
@@ -182,9 +184,11 @@ void PickingPass::Draw(RenderScene& scene)
if (modelJob->Model->m_RawModel->m_Skeleton != nullptr) { if (modelJob->Model->m_RawModel->m_Skeleton != nullptr) {
if (modelJob->Animation != nullptr) { std::vector<glm::mat4> frameBones;
std::vector<glm::mat4> frameBones = modelJob->Skeleton->GetFrameBones(*modelJob->Animation, modelJob->AnimationTime); if (modelJob->AnimationOffset.animation != nullptr) {
glUniformMatrix4fv(glGetUniformLocation(shaderHandle, "Bones"), frameBones.size(), GL_FALSE, glm::value_ptr(frameBones[0])); frameBones = modelJob->Skeleton->GetFrameBones(modelJob->Animations, modelJob->AnimationOffset);
} else {
frameBones = modelJob->Skeleton->GetFrameBones(modelJob->Animations);
} }
} }