使用OpenGL转换3D文本

siv*_*udh 1 opengl transformation

我目前正在学习本教程:

我完全理解如何旋转/缩放/翻译该教程中的每个字符串.

但有没有人知道以用户可配置的方式剪切/逐渐变细/扭曲每个弦的步骤是什么?

据我所知,那些不是OpenGL调用的一部分,所以通常如何在3D文本上进行这样的转换?

Mar*_*usQ 7

您可以制作自己的转换矩阵.它们甚至不必"有意义",你可以用你认为合适的任何奇怪的扭曲来填充它们.例如,剪切应该看起来像这样:

float shear[] = { 
   1, Ky, 0, 0, 
   Kx, 1, 0, 0,
    0, 0, 1, 0,
    0, 0, 0, 1 };
glMultMatrixf(shear);
Run Code Online (Sandbox Code Playgroud)