1micha.elok's answer is correct, and currently that's the only way to do it.
I'm using a homemade modelling tool that I wrote (thinking ...) 23 years ago. The model in micha's image (and the s3d example) was created using that tool. It supports hierarchical models. I recently wrote a program to convert from its fileformat to OBJ. So I save a model in different poses and convert these "frames" to separate OBJ files that I can load and animate in s3d. It's just as non-fun as it sounds.
(This, https://youtu.be/4M8LW6es8Gs?si=LiGOWJxQjt9Y1Loc, game only contains models created in that tool.)
But I plan to write a loader for quake 2 models, MD2 format. I've done that before, wasn't hard. Those files support frames and animation.
However, 3d modelling is boring and hard as hell. In the 3d thing I'm working on you can use sprites (as in wolfenstein and doom) instead if you want to.
I'm using a homemade modelling tool that I wrote (thinking ...) 23 years ago. The model in micha's image (and the s3d example) was created using that tool. It supports hierarchical models. I recently wrote a program to convert from its fileformat to OBJ. So I save a model in different poses and convert these "frames" to separate OBJ files that I can load and animate in s3d. It's just as non-fun as it sounds.
(This, https://youtu.be/4M8LW6es8Gs?si=LiGOWJxQjt9Y1Loc, game only contains models created in that tool.)
But I plan to write a loader for quake 2 models, MD2 format. I've done that before, wasn't hard. Those files support frames and animation.
However, 3d modelling is boring and hard as hell. In the 3d thing I'm working on you can use sprites (as in wolfenstein and doom) instead if you want to.