最近通过max的IGame接口实现了贝塞尔曲线的导出,在这里分享一下。
在max里编辑关键帧动画时,一般默认使用的贝塞尔曲线控制参数随时间的变化。
这里的参数可以指各种参数,物体的位置,欧拉角,灯光的颜色,相机fov等等。
IGame提供接口可以导出贝塞尔关键帧,但是由于max sdk的文档写的众所周知的烂,所以
还是需要我们求助于google的同时开动自己的脑筋。
max sdk烂的程度从它结构体声明的注释就可见一斑。
class IGameBezierKey: public MaxHeapOperators {
public:
//! Float based In and out tangents
/*! This would be accessed when using the IGameControlType::IGAME_FLOAT specifier
*/
float fintan, fouttan;
//! Float based value
/*! This would be accessed when using the IGameControlType::IGAME_FLOAT specifier
*/
float fval;
//! Float based tangent lengths
/*! This would be accessed when using the IGameControlType::IGAME_FLOAT specifier
*/
float finLength, foutLength;
......
};
基本等于什么都没有注释,只能想到fval等是关键帧的值,其他的intan,outtan,

本文介绍了如何通过3ds max的IGame接口导出贝塞尔曲线关键帧,详细解析了贝塞尔曲线的关键帧值、控制点计算,并提供了导出float类型贝塞尔曲线的代码示例。同时讨论了贝塞尔曲线的实时动画应用中,离散化处理的必要性和方法。

1375

被折叠的 条评论
为什么被折叠?



