LuxCoreRenderを使ってみる2
simple.scnをいじりながら、何ができるかの挙動を確認した。
カメラの座標
カメラの座標を下記のようにすると、エラーがでる。
scene.camera.lookat.orig = 0.0 0.0 10.0
scene.camera.lookat.target = 0.0 0.0 1.0
scene.camera.lookat.target = 0.0 0.0 1.0
エラーの内容:
Singular matrix in MatrixInvert: -nan(ind) -nan(ind) -nan(ind) 0 -nan(ind) -nan(ind) -nan(ind) 0 0 0 -1 0 0 0 10 1
Singular matrix in MatrixInvert: -nan(ind) -nan(ind) -nan(ind) 0 -nan(ind) -nan(ind) -nan(ind) 0 0 0 -1 0 0 0 10 1
singular matrixというものが、非正則行列と呼ばれるもので、MatrixInvertというのが、逆行列の算出だとすると、逆行列を計算しようとしている行列が正則行列でないということと考える。今回の場合は、行列要素にnanが入っていて計算できないようで、nanの部分には、カメラ座標を基に算出されると考える。nanとして考えらえる値は「無限大」くらいしか思いつかないので、1/0を計算する事態になったと考える。
今のところ、origとtargetの座標が同一ベクトルの場合、上記エラーが出ることが分かっている。たとえば、下記なら問題ない。
scene.camera.lookat.orig = 0.0 -10.0 2.0
scene.camera.lookat.target = 0.0 0.0 2.0
マテリアル
scene.materials.redmatte.type = glossytranslucent
scene.materials.redmatte.kd = 0.5 0.0 0.0
scene.materials.redmatte.kt = 0.5 0.0 0.0
scene.materials.redmatte.ks = 0.5 0.0 0.0
scene.materials.redmatte.ks_bf = 0.5 0.0 0.0
scene.materials.greenmatte.type = metal2
変形
平行移動はできないことが分かっている。
![]() |
scene.objects.box2.transformation = 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 |
![]() |
| scene.objects.box2.transformation = 2 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 |
![]() |
| scene.objects.box2.transformation = 1 0 0 0 0 1 0 0 0 0 2 0 0 0 0 1 |






コメント
コメントを投稿