Computer Graphics/HumanGL

HumanGL - 2. Scale 적용 해보기

surkim 2024. 10. 17. 10:55

사람을 그리기 전에 먼저 해야 할 일이 있다. 바로 상자를 늘리고 줄이는 작업이다! 이를 위해 sglmscale 함수를 추가하고, 이를 적용해 보았다.

sglm::mat4 scale(const sglm::mat4& m, const sglm::vec3& v) {
    sglm::mat4 result(1.0f);
    result[0][0] = v.x;
    result[1][1] = v.y;
    result[2][2] = v.z;
    return result * m;
}

위와 같은 방식으로 scale 함수를 구현했고, 이를 적용해 모델의 크기를 조정했다.

model = sglm::scale(model, sglm::vec3(1.0f, 1.2f, 0.5f));

 

 

 

아주 잘 동작한다. 이 상자는 이제 바디가 될 것이다.