Using ply mesh as an emitter
Can I make any ply mesh an emitter? I am using following .arm snippet.
id lightface = PLY_MESH( "meshes/lightface.ply" );
lightface =
[lightface
apply
: LAMBERT_EMITTER( ARNGREY_100, 1.0 )
];
This leads to a crash when I run my .arm file with artist
crash dump
artist - photorealistic renderer
ART version 2.1.2, 48 cores detected
(c) 1996-2022 by the ART development team
reading scene description 0.31 sec
optimising scene graph for raycasting 0.00 sec
identifying and analysing lightsources
*** ART Fatal Error: code -1 ***
Location: /home/arpita1/projects/ART/Source/ClassLibraries/Shape/ArnTriangleMesh.m line 653
Reason : code is work in progress, and has to be completed before use
Last 20 stack frames:
/home/arpita1/projects/ART/build/lib/libAdvancedRenderingToolkit.so.2(print_trace+0x32) [0x7f784d4b1402]
/home/arpita1/projects/ART/build/lib/libAdvancedRenderingToolkit.so.2(art_error_exit+0xe) [0x7f784d4b14be]
/home/arpita1/projects/ART/build/lib/libAdvancedRenderingToolkit.so.2(+0x41492b) [0x7f784d61492b]
/home/arpita1/projects/ART/build/lib/libAdvancedRenderingToolkit.so.2(+0x3aa562) [0x7f784d5aa562]
/home/arpita1/projects/ART/build/lib/libAdvancedRenderingToolkit.so.2(+0x3aebf2) [0x7f784d5aebf2]
/home/arpita1/projects/ART/build/lib/libAdvancedRenderingToolkit.so.2(+0x3f5f08) [0x7f784d5f5f08]
/home/arpita1/projects/ART/build/lib/libAdvancedRenderingToolkit.so.2(+0x3f7565) [0x7f784d5f7565]
/home/arpita1/projects/ART/build/lib/libAdvancedRenderingToolkit.so.2(+0x3f5490) [0x7f784d5f5490]
/home/arpita1/projects/ART/build/lib/libAdvancedRenderingToolkit.so.2(+0x3fb64a) [0x7f784d5fb64a]
/home/arpita1/projects/ART/build/lib/libAdvancedRenderingToolkit.so.2(+0x3f7565) [0x7f784d5f7565]
/home/arpita1/projects/ART/build/lib/libAdvancedRenderingToolkit.so.2(+0x3f2f60) [0x7f784d5f2f60]
/home/arpita1/projects/ART/build/lib/libAdvancedRenderingToolkit.so.2(+0x3f8d4f) [0x7f784d5f8d4f]
/home/arpita1/projects/ART/build/lib/libAdvancedRenderingToolkit.so.2(+0x3f7565) [0x7f784d5f7565]
/home/arpita1/projects/ART/build/lib/libAdvancedRenderingToolkit.so.2(+0x3f2f60) [0x7f784d5f2f60]
/home/arpita1/projects/ART/build/lib/libAdvancedRenderingToolkit.so.2(+0x3f811a) [0x7f784d5f811a]
/home/arpita1/projects/ART/build/lib/libAdvancedRenderingToolkit.so.2(+0x3f7565) [0x7f784d5f7565]
/home/arpita1/projects/ART/build/lib/libAdvancedRenderingToolkit.so.2(+0x3f2f60) [0x7f784d5f2f60]
/home/arpita1/projects/ART/build/lib/libAdvancedRenderingToolkit.so.2(+0x3f4e7a) [0x7f784d5f4e7a]
/home/arpita1/projects/ART/build/lib/libAdvancedRenderingToolkit.so.2(+0x40012a) [0x7f784d60012a]
/home/arpita1/projects/ART/build/lib/libAdvancedRenderingToolkit.so.2(+0x3af336) [0x7f784d5af336]
The following snippet works fine in the .arm file
// id lightface = PLY_MESH( "meshes/lightface.ply" );
id lightface = SPHERE;
lightface =
[lightface
apply
: LAMBERT_EMITTER( ARNGREY_100, 1.0 )
];
id lightface = PLY_MESH( "meshes/lightface.ply" );