animation for chalkboard
This commit is contained in:
parent
4c65103fd6
commit
e5203bbc63
|
@ -48,7 +48,7 @@ texture ../texture/floor/Carpet.png
|
|||
obj 0
|
||||
use 1
|
||||
name myChair1_1
|
||||
rotateY -1.5
|
||||
rotateY 0.0
|
||||
scale 1.0 1.0 1.0
|
||||
|
||||
# Platz 2 #
|
||||
|
@ -1579,9 +1579,9 @@ obj 147
|
|||
name myChalkboard
|
||||
scale 1.9 1.9 1.9
|
||||
rotateX 0.0
|
||||
rotateY -1.5
|
||||
rotateY 0.0
|
||||
rotateZ 0.0
|
||||
translate 0.0 -0.5 6.5
|
||||
translate 6.4 -0.3 0.3
|
||||
|
||||
# Chalkboard 1 #
|
||||
obj 138
|
||||
|
|
29
src/main.c
29
src/main.c
|
@ -56,6 +56,7 @@ SceneNode* rootNode;
|
|||
/**
|
||||
* Input handler for camera movement.
|
||||
* */
|
||||
float chalkboardYPosition = 0.0f;
|
||||
void handleInputs(double deltaTime) {
|
||||
assert(window != NULL);
|
||||
|
||||
|
@ -93,11 +94,33 @@ void handleInputs(double deltaTime) {
|
|||
cameraPosition.y -= deltaTime * 10;
|
||||
}
|
||||
|
||||
SceneNode* chalkboard = findNodeByName("myChalkboard1", rootNode);
|
||||
if (!chalkboard) return;
|
||||
if (glfwGetKey(window, GLFW_KEY_X) == GLFW_PRESS) {
|
||||
SceneNode* chalkboard = findNodeByName("myChalkboard1", SceneNode* root);
|
||||
chalkboard->transformation[3][1] += 0.1f; // Erhöht die Y-Position
|
||||
if (chalkboardYPosition >= 1.0f) {
|
||||
chalkboardYPosition = 1.0f;
|
||||
return;
|
||||
}
|
||||
chalkboardYPosition += deltaTime * 1.0f;
|
||||
chalkboard->transformation = (mat4){1.0f, 0.0f, 0.0f, 0.0f,
|
||||
0.0f, 1.0f, 0.0f, 0.0f,
|
||||
0.0f, 0.0f, 1.0f, 0.0f,
|
||||
0.0f, chalkboardYPosition, 0.0f, 1.0f};
|
||||
updateSceneNode(chalkboard, &findNodeByName("myChalkboard", rootNode)->worldTransformation);
|
||||
}
|
||||
|
||||
if (glfwGetKey(window, GLFW_KEY_C) == GLFW_PRESS) {
|
||||
if (chalkboardYPosition <= 0.0f) {
|
||||
chalkboardYPosition = 0.0f;
|
||||
return;
|
||||
}
|
||||
chalkboardYPosition -= deltaTime * 1.0f;
|
||||
chalkboard->transformation = (mat4){1.0f, 0.0f, 0.0f, 0.0f,
|
||||
0.0f, 1.0f, 0.0f, 0.0f,
|
||||
0.0f, 0.0f, 1.0f, 0.0f,
|
||||
0.0f, chalkboardYPosition, 0.0f, 1.0f};
|
||||
updateSceneNode(chalkboard, &findNodeByName("myChalkboard", rootNode)->worldTransformation);
|
||||
}
|
||||
|
||||
if (glfwGetKey(window, GLFW_KEY_L) == GLFW_PRESS) {
|
||||
objectPosition.x += deltaTime * 10;
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue