[Verse-dev] Verse specification: transformation matrix

Jiří Hnídek jiri.hnidek at vslib.cz
Sat Jul 23 11:14:28 CEST 2005


Hi,
I try to implement sending and receiving object node transformation 
matrix. Current specification of verse protocol isn't too much useful. 
Why? I will never need speed and acceleration of position/speed, but

1) I have to do crazy converting from transform matrix to pos[3] , 
rot[4] and scale[3] vectors ... send each vector separately.

2) When I receive any change of object node transformation, then I have 
to do crazy converting from pos[3], rot[4], scale[3] to transformation 
matrix (several matrix multiplication)

3) I can't transfer information about shear, etc.

4) I guess, that other clients (Maya, Max) will have to do same. They 
will have to do similar unnecessary operation (in plugins or clients 
will do it internaly)

Conclusion: verse specification offeres many unnecessary parameters, 
complicate implementation, miss some functionality.

My proposal: add these commands:

void cb_o_transform_matrix_real32(VNodeID node_id, real32 *mat);
void cb_o_transform_matrix_real64(VNodeID node_id, real64 *mat);

These commands would be used for sending transformation matrix:

real32 mat[4][4];
real64 mat[4][4];

Best regards,

Jiri


More information about the Verse-dev mailing list