Skip to content

Commit

Permalink
Fix camera direction optimization
Browse files Browse the repository at this point in the history
  • Loading branch information
Tom94 committed Mar 3, 2022
1 parent 36278ee commit af9434e
Showing 1 changed file with 3 additions and 1 deletion.
4 changes: 3 additions & 1 deletion include/neural-graphics-primitives/adam_optimizer.h
Original file line number Diff line number Diff line change
Expand Up @@ -104,8 +104,10 @@ class RotationAdamOptimizer {
float rot_len = rot.norm();
float var_len = variable().norm();

static const Eigen::Vector3f Z = {0.0f, 0.0f, 1.0f};

Eigen::AngleAxisf result;
Eigen::Matrix3f mat = Eigen::AngleAxisf(rot_len, rot).toRotationMatrix() * Eigen::AngleAxisf(var_len, variable()/var_len).toRotationMatrix();
Eigen::Matrix3f mat = Eigen::AngleAxisf(-rot_len, rot_len > 0 ? rot/rot_len : Z).toRotationMatrix() * Eigen::AngleAxisf(var_len, var_len > 0 ? variable()/var_len : Z).toRotationMatrix();
result.fromRotationMatrix(mat);
m_state.variable = result.axis() * result.angle();
}
Expand Down

0 comments on commit af9434e

Please sign in to comment.