ebook irregularities :\

RipX

Newcomer
I am currently studying the following section from an ebook:

http://www.geometrictools.com/Books/GameEngineArchitecture/BookSample.pdf


On page 174, it says:

The composition of two transformations is performed by the member function Product. The name refers to a product of matrices when the transformations are viewed as 4 × 4 homogeneous matrices. For example,
Code:
Transformation kA = <some transformation>;
Transformation kB = <some transformation>;
Transformation kC;
// compute C = A*B
kC.Product(kA,kB);
// compute C = B*A, generally not the same as A*B
kC.Product(kB,kA);

OK, I'm neither great with math and I don't program in C++ but I have ported a decent portion of this code, but I'm particularly stumped on this part as it feels so ambiguous(And I haven't a clue about the math style explainations). I understand that this should be a matrix multiplication here of some kind but I'm not sure how this is supposed to be in regards to the Transformation class definition states that it is to store a 3x3 rotation matrix, a 3x1 scale vector and a 3x1 translation vector, all seperatly, this seems a little strange to do this rather than a 4x4 matrix, but I go on...Then suddenly it states that the multiply/product should be done as if viewed as a 4x4 homogeneous matrix. Does this mean that I need to convert my 3x3 matrix into a 4x4 matrix, concat the scale and translation data into that 4x4 matrix, do the multiplication and then do something with that?? Not only that, it then doesn't say how it becomes applied to something, it just suddenly spews some math at me :z

Even more confusing on page 173, the method Product() is defined with a void return type and the usage exampled shows the storage of a returned Transformation object to be set as the World property ( page 192 ).

Any help about clarifying what I'm meant to be doing at this point would be great. (layman terms please,Im an idiot) I'm begging lol

Many many thanks to anyone that is kind enough to help.

RipX
 
Hi, did you read his stuff about scene graph hierarchy? There is also discussion on factoring/breaking up the product of transformations so that the new transformation is represented as pure rotation matrix + scale vector + translation vector. Just from looking over the few pages above, the key is having uniform scale transformations, that is, having just one number for scale factor for most nodes except for the last one. You can read it again starting with the lower part of page 168.

If you say you're just beginning and putting together some kind of 3D rendering library, there are better introductory books that aren't as heavy into optimization like this one.
 
Back
Top