Multiplies many vectors within an object structure by a 3×3 matrix of 16.16 values.
void MulObjectVec3Mat33_F16( void *objectlist[],ObjOffset1 *offsetstruct, int32 count )
This function multiplies one or more vectors within object structures by a 3×3 matrix of 16.16 fractions also within that structure, and repeats over a number of objects. The results of the product are deposited in the destination arrays pointed to by object structures pointed to by the objectlist array.
The object structure argument defines offsets within objects to the elements to be manipulated. The object structure has a pointer to an array of points associated with the object, a pointer to an array of transformed points, a count of the number of points, and an orientation matrix. The definition for ObjOffset1 is as follows:
typedef struct ObjOffset1 {int32 oo1_DestArrayPtrOffset; int32 oo1_SrcArrayPtrOffset; int32 oo1_MatOffset; int32 oo1_CountOffset;} ObjOffset1;
SWI implemented in operamath V20.
operamath.h
MulObjectVec4Mat44_F16
()