matrix 4x4 to matrix 4x3 conversion

Forums: matrix 4x4 to matrix 4x3 conversion
Forum for OctaneRender Lua scripting examples, discussion and support.

matrix 4x4 to matrix 4x3 conversion

Postby ruthenoid » Fri Nov 25, 2016 7:50 am

ruthenoid Fri Nov 25, 2016 7:50 am
How can I convert a matrix 4x4 (from Maya) to octane's 4x3 (scatter)?
Is it a matter of rotating it and stripping a row or is this somewhat more complicated ?

thank you!
OS: Win7 x64, RAM: 8Gb, GPU: GTX 460 2048 Mb
ruthenoid
Licensed Customer
Licensed Customer
 
Posts: 21
Joined: Sat Apr 17, 2010 6:51 am
Location: cologne, ger

Re: matrix 4x4 to matrix 4x3 conversion

Postby calus » Fri Nov 25, 2016 8:12 am

calus Fri Nov 25, 2016 8:12 am
here is my simple mel script to convert maya transform matrix to octane matrix, you can see how it is re-ordered

Code: Select all
{string $selection[] = `ls -sl -tr`;
int $n = 0;
string $octMatrix[] ;
for ($transform in $selection) {
    float $matrix[] = `xform -q -ws -m $transform`;
    $octMatrix[$n] = $matrix[0]+" "+$matrix[4]+" "+$matrix[8]+" "+$matrix[12]+" "+$matrix[1]+" "+$matrix[5]+" "+$matrix[9]+" "+$matrix[13]+" "+$matrix[2]+" "+$matrix[6]+" "+$matrix[10]+" "+$matrix[14]+" ";
    $n=$n+1;
    }
print $octMatrix;
}
Pascal ANDRE
--------------------
Maya 2019, Windows 7, 128 GB RAM
4x GTX 1070, driver 430.39
--------------------

--------------------
Join MAYA OCTANE USERS Skype discussion here :
https://join.skype.com/LXEQaqqfN15w
--------------------
calus
Licensed Customer
Licensed Customer
 
Posts: 1295
Joined: Sat May 22, 2010 9:31 am
Location: Paris

Re: matrix 4x4 to matrix 4x3 conversion

Postby ruthenoid » Fri Nov 25, 2016 8:20 am

ruthenoid Fri Nov 25, 2016 8:20 am
Awsome!
Thank you, calus!
OS: Win7 x64, RAM: 8Gb, GPU: GTX 460 2048 Mb
ruthenoid
Licensed Customer
Licensed Customer
 
Posts: 21
Joined: Sat Apr 17, 2010 6:51 am
Location: cologne, ger

Re: matrix 4x4 to matrix 4x3 conversion

Postby roeland » Sun Nov 27, 2016 10:17 pm

roeland Sun Nov 27, 2016 10:17 pm
Yes normally this is the case. Octane only supports affine transforms, it does not support projective transform matrices. In mathematical terms this means the last row of the matrix will be (0, 0, 0, 1). This row is not explicitly stored in Octane.
User avatar
roeland
OctaneRender Team
OctaneRender Team
 
Posts: 1741
Joined: Wed Mar 09, 2011 10:09 pm

Return to Lua Scripting


Who is online

Users browsing this forum: No registered users and 1 guest

Sat Oct 19, 2019 5:28 am [ UTC ]