tldr:我注意到QMatrix4x4
和QVector3D
(和QVector2D
)都具有以下功能:
QVariant QMatrix4x4::operator QVariant() const
是否有方法将QVariant
的值作为QMatrix4x4
或QVector2D
来获取?
上下文:
我正在用Qt和OpenGL制作一个“游戏引擎”(这更多的是尝试学习如何这样做)。 我正在自动解析着色器来找到制服,并创建一个QObject类来使用一个信号和一个插槽来以这种方式更新制服。 由于不可能混合模板和Q_OBJECT,我认为我的统一绑定类需要使用QVariants
提前感谢您的宝贵帮助。
假设v
是从QMatrix4x4创建的QVariant,那么QMatrix4x4矩阵=v.value
就是您需要的; 使用v.value
,QVector3D也同样有效。
有关更多信息:QVariant#value