<div dir="ltr">Robert,<div><br></div><div>The issue was I was setting a tileLocator, but I wasn't setting a layerLocator. That was problematic in the following block of code:</div><div><div><br></div><div>                Locator* layerLocator = _volumeTile->getLayer()->getLocator();</div><div>                if (tileLocator==layerLocator)</div><div>                {</div><div>                    tileData->tileToImageUniform->set(osg::Matrixf::identity());</div><div>                }</div><div>                else</div><div>                {</div><div>                    osg::Matrixd tileToImage(tileLocator->getTransform() * osg::Matrixd::inverse(layerLocator->getTransform()));</div><div>                    tileData->tileToImageUniform->set(osg::Matrixf(tileToImage));</div><div>                }</div></div><div><br></div><div>layerLocator->getTransform() was returning a NULL.</div><div><br></div><div>Still don't have things rendering correctly, but at least things aren't crashing, so that's progress.</div><div><br></div><div>Thanks,</div><div><br></div><div>- Alex</div><div><br></div></div><br><div class="gmail_quote"><div dir="ltr">On Fri, Apr 29, 2016 at 2:58 AM Robert Osfield <<a href="mailto:robert.osfield@gmail.com">robert.osfield@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div><div><div><div><div><div>Hi Alex,<br><br></div>I haven't heard of the invert throwing a seg fault before.  The stack trace doesn't have any info about line numbers so we can't say what specifically was amiss.<br><br></div>The only code in MultipassTechnique.cpp that calls Matrixd::invert() is:</div></div></div></div></div><div dir="ltr"><div><div><div><div><br><br>               Locator* tileLocator = _volumeTile->getLocator();<br>                osg::Matrixd tileToEye = tileLocator->getTransform() * (*(cv->getModelViewMatrix()));<br>                osg::Matrixd eyeToTile;<br>                eyeToTile.invert(tileToEye);<br><br></div></div></div></div></div><div dir="ltr"><div><div><div><div></div>Both matrices are created on the stack so will exist so there won't be any direct memory issue such as trying to work against a null pointer.<br><br></div>The part that may provide somewhere to look are the tileLocator->getTransform() and cv->getModelViewMatrix() calls, if tileLocator is NULL then the Matrix the getTransform() method will get will be corrupted at best, similar with the cv->getModelViewMatrix().<br><br></div>Both these *should* be valid at this point.  My suggestion would be to check the value of tileLocator, any chance that you haven't assgned a osgVolume::Locator to the VolumeTile?  The Locator is needed to place the unit cube of the 3d texture into model coordinates.<br><br></div></div><div dir="ltr">Robert.<br><div><div><div><div><div><br></div></div></div></div></div></div><div class="gmail_extra"><br><div class="gmail_quote">On 28 April 2016 at 21:12, Alex Taylor <span dir="ltr"><<a href="mailto:alextaylor@gmail.com" target="_blank">alextaylor@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr">Robert,<div><br></div><div>Here is a better looking stack trace on Linux. (I believe this stack trace has gdb debug symbols enabled, it was a bit tricky to create and integrate a build with DEBUG symbols in my environment here, apologies if I got it wrong). </div><div><br></div><div>My guess is that the Matrixd object being inverted after the call to MultipassTechnique::cull is a NULL pointer or something like that...is there perhaps a property or something I'm failing to setup when using MultipassTechnique that might cause that to happen?</div><div><br></div><div>No, I don't know whether the example works. My use of MultipassTechnique is failing on a Mac and a Linux box within the software stack where I am, and the stack trace looks the same on Mac and Linux.  I can try to build the example. In the build harness where I work, I'd have to do a bit of work or else just build OSG from scratch to use the volume example.</div><div><br></div><div>Any thoughts at all based on this seg fault trace? Any leads would be much appreciated, feeling stuck.</div><div><br></div><div>- Alex</div><div><div style="color:rgb(0,0,0);font-family:Calibri,Arial,Helvetica,sans-serif;font-size:16px;line-height:normal"><br>Stack Trace (from fault):</div></div><div dir="ltr"><div><div style="color:rgb(0,0,0);font-family:Calibri,Arial,Helvetica,sans-serif;font-size:16px;line-height:normal">[  0] 0x00007f565ccdf968 osg::Matrixd::invert(osg::Matrixd const&) at /sandbox/ataylor/Bmlhg_task1.j377265/matlab/src/osgserver/../../../3p_mirror/glnxa64/openscenegraph/include/osg/Matrixd:235 (in /mathworks/devel/sbs/28/ataylor.Bmlhg_task1.j377265/matlab/bin/glnxa64/libmwosgserver.so)</div><div style="color:rgb(0,0,0);font-family:Calibri,Arial,Helvetica,sans-serif;font-size:16px;line-height:normal">[  1] 0x00007f565a335b04 osgVolume::MultipassTechnique::cull(osgUtil::CullVisitor*) at /mathworks/devel/sbs/28/ataylor.Bmlhg_task1.j377265/matlab/bin/glnxa64/libosgVolume.so.130+281343</div><div style="color:rgb(0,0,0);font-family:Calibri,Arial,Helvetica,sans-serif;font-size:16px;line-height:normal">[  2] 0x00007f565a3449bc osgVolume::VolumeScene::traverse(osg::NodeVisitor&) at /mathworks/devel/sbs/28/ataylor.Bmlhg_task1.j377265/matlab/bin/glnxa64/libosgVolume.so.130+342455</div><div style="color:rgb(0,0,0);font-family:Calibri,Arial,Helvetica,sans-serif;font-size:16px;line-height:normal">[  3] 0x00007f565a9491bb osgUtil::CullVisitor::apply(osg::Group&) at /mathworks/devel/sbs/28/ataylor.Bmlhg_task1.j377265/matlab/bin/glnxa64/libosgUtil.so.130+868790</div><div style="color:rgb(0,0,0);font-family:Calibri,Arial,Helvetica,sans-serif;font-size:16px;line-height:normal">[  4] 0x00007f565a348330 osgVolume::VolumeScene::accept(osg::NodeVisitor&) at /mathworks/devel/sbs/28/ataylor.Bmlhg_task1.j377265/matlab/bin/glnxa64/libosgVolume.so.130+357163</div><div style="color:rgb(0,0,0);font-family:Calibri,Arial,Helvetica,sans-serif;font-size:16px;line-height:normal">[  5] 0x00007f565c4ed503 osg::Group::traverse(osg::NodeVisitor&) at /mathworks/devel/sbs/28/ataylor.Bmlhg_task1.j377265/matlab/bin/glnxa64/libosg.so.130+1537278</div><div style="color:rgb(0,0,0);font-family:Calibri,Arial,Helvetica,sans-serif;font-size:16px;line-height:normal">[  6] 0x00007f565a94aa86 osgUtil::CullVisitor::apply(osg::Transform&) at /mathworks/devel/sbs/28/ataylor.Bmlhg_task1.j377265/matlab/bin/glnxa64/libosgUtil.so.130+875137</div><div style="color:rgb(0,0,0);font-family:Calibri,Arial,Helvetica,sans-serif;font-size:16px;line-height:normal">[  7] 0x00007f565c525a48 osg::MatrixTransform::accept(osg::NodeVisitor&) at /mathworks/devel/sbs/28/ataylor.Bmlhg_task1.j377265/matlab/bin/glnxa64/libosg.so.130+1768003</div><div style="color:rgb(0,0,0);font-family:Calibri,Arial,Helvetica,sans-serif;font-size:16px;line-height:normal">[  8] 0x00007f565c4ed503 osg::Group::traverse(osg::NodeVisitor&) at /mathworks/devel/sbs/28/ataylor.Bmlhg_task1.j377265/matlab/bin/glnxa64/libosg.so.130+1537278</div><div style="color:rgb(0,0,0);font-family:Calibri,Arial,Helvetica,sans-serif;font-size:16px;line-height:normal">[  9] 0x00007f565a9491bb osgUtil::CullVisitor::apply(osg::Group&) at /mathworks/devel/sbs/28/ataylor.Bmlhg_task1.j377265/matlab/bin/glnxa64/libosgUtil.so.130+868790</div><div style="color:rgb(0,0,0);font-family:Calibri,Arial,Helvetica,sans-serif;font-size:16px;line-height:normal">[ 10] 0x00007f565c4eecb8 osg::Group::accept(osg::NodeVisitor&) at /mathworks/devel/sbs/28/ataylor.Bmlhg_task1.j377265/matlab/bin/glnxa64/libosg.so.130+1543347</div><div style="color:rgb(0,0,0);font-family:Calibri,Arial,Helvetica,sans-serif;font-size:16px;line-height:normal">[ 11] 0x00007f565c4ed503 osg::Group::traverse(osg::NodeVisitor&) at /mathworks/devel/sbs/28/ataylor.Bmlhg_task1.j377265/matlab/bin/glnxa64/libosg.so.130+1537278</div><div style="color:rgb(0,0,0);font-family:Calibri,Arial,Helvetica,sans-serif;font-size:16px;line-height:normal">[ 12] 0x00007f565a94a278 osgUtil::CullVisitor::apply(osg::Camera&) at /mathworks/devel/sbs/28/ataylor.Bmlhg_task1.j377265/matlab/bin/glnxa64/libosgUtil.so.130+873075</div><div style="color:rgb(0,0,0);font-family:Calibri,Arial,Helvetica,sans-serif;font-size:16px;line-height:normal">[ 13] 0x00007f565c4968f8 osg::Camera::accept(osg::NodeVisitor&) at /mathworks/devel/sbs/28/ataylor.Bmlhg_task1.j377265/matlab/bin/glnxa64/libosg.so.130+1181939</div><div style="color:rgb(0,0,0);font-family:Calibri,Arial,Helvetica,sans-serif;font-size:16px;line-height:normal">[ 14] 0x00007f565c4ed503 osg::Group::traverse(osg::NodeVisitor&) at /mathworks/devel/sbs/28/ataylor.Bmlhg_task1.j377265/matlab/bin/glnxa64/libosg.so.130+1537278</div><div style="color:rgb(0,0,0);font-family:Calibri,Arial,Helvetica,sans-serif;font-size:16px;line-height:normal">[ 15] 0x00007f565a9491bb osgUtil::CullVisitor::apply(osg::Group&) at /mathworks/devel/sbs/28/ataylor.Bmlhg_task1.j377265/matlab/bin/glnxa64/libosgUtil.so.130+868790</div><div style="color:rgb(0,0,0);font-family:Calibri,Arial,Helvetica,sans-serif;font-size:16px;line-height:normal">[ 16] 0x00007f565c4eecb8 osg::Group::accept(osg::NodeVisitor&) at /mathworks/devel/sbs/28/ataylor.Bmlhg_task1.j377265/matlab/bin/glnxa64/libosg.so.130+1543347</div><div style="color:rgb(0,0,0);font-family:Calibri,Arial,Helvetica,sans-serif;font-size:16px;line-height:normal">[ 17] 0x00007f565c4ed503 osg::Group::traverse(osg::NodeVisitor&) at /mathworks/devel/sbs/28/ataylor.Bmlhg_task1.j377265/matlab/bin/glnxa64/libosg.so.130+1537278</div><div style="color:rgb(0,0,0);font-family:Calibri,Arial,Helvetica,sans-serif;font-size:16px;line-height:normal">[ 18] 0x00007f565a9f26d7 osgUtil::SceneView::cullStage(osg::Matrixd const&, osg::Matrixd const&, osgUtil::CullVisitor*, osgUtil::StateGraph*, osgUtil::RenderStage*, osg::Viewport*) at /mathworks/devel/sbs/28/ataylor.Bmlhg_task1.j377265/matlab/bin/glnxa64/libosgUtil.so.130+1562322</div><div style="color:rgb(0,0,0);font-family:Calibri,Arial,Helvetica,sans-serif;font-size:16px;line-height:normal">[ 19] 0x00007f565a9f0740 osgUtil::SceneView::cull() at /mathworks/devel/sbs/28/ataylor.Bmlhg_task1.j377265/matlab/bin/glnxa64/libosgUtil.so.130+1554235</div><div style="color:rgb(0,0,0);font-family:Calibri,Arial,Helvetica,sans-serif;font-size:16px;line-height:normal">[ 20] 0x00007f565cd2a052 SceneRendererImpl::renderScene(hg::openscenegraph::RenderTimes&, hg::openscenegraph::RenderCounts&, osgUtil::SceneView*, unsigned int) at /sandbox/ataylor/Bmlhg_task1.j377265/matlab/src/osgserver/osg_server/osgSceneServer.cpp:1447 (in /mathworks/devel/sbs/28/ataylor.Bmlhg_task1.j377265/matlab/bin/glnxa64/libmwosgserver.so)</div><div style="color:rgb(0,0,0);font-family:Calibri,Arial,Helvetica,sans-serif;font-size:16px;line-height:normal">[ 21] 0x00007f565cd2767f hg::openscenegraph::OsgSceneServer::cullAndDraw(int, bool, double, double) at /sandbox/ataylor/Bmlhg_task1.j377265/matlab/src/osgserver/osg_server/osgSceneServer.cpp:1809 (in /mathworks/devel/sbs/28/ataylor.Bmlhg_task1.j377265/matlab/bin/glnxa64/libmwosgserver.so)</div><div style="color:rgb(0,0,0);font-family:Calibri,Arial,Helvetica,sans-serif;font-size:16px;line-height:normal">[ 22] 0x00007f567465ae54 UIJ_call_OpenGLPaintFcn(gui_objects::scene_server::SceneServerProxy*, int, bool, double, double) at /mathworks/devel/bat/Bmlui_integ/build/matlab/src/uij/SceneServerPeerEvents.cpp:54 (in /mathworks/devel/sbs/28/ataylor.Bmlhg_task1.j377265/matlab/bin/glnxa64/libuij.so)</div><div style="color:rgb(0,0,0);font-family:Calibri,Arial,Helvetica,sans-serif;font-size:16px;line-height:normal">[ 23] 0x00007f56727b5dfe Java_com_mathworks_hg_peer_JavaSceneServerPeer_doDisplay at /mathworks/devel/bat/Bmlui_integ/build/matlab/java/src/nativehg/Scene.cpp:125 (in /mathworks/devel/sbs/28/ataylor.Bmlhg_task1.j377265/matlab/bin/glnxa64/libnativehg.so)</div></div></div><div><div><div class="gmail_quote"><div dir="ltr">On Wed, Apr 27, 2016 at 4:13 AM Robert Osfield <<a href="mailto:robert.osfield@gmail.com" target="_blank">robert.osfield@gmail.com</a>> wrote:<br></div></div><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div><div>Hi Alex,<br><br></div>A stack trace with debugging info would be far more useful and should be able to pinpoint the cause of the crash, or at least give some clues of where to look.<br><br></div><div>Also, does the osgvolume example crash when you use the MultiPassTechnique?<br></div><div><br></div>Robert.<br></div><div class="gmail_extra"><br><div class="gmail_quote"></div></div><div class="gmail_extra"><div class="gmail_quote">On 26 April 2016 at 21:35, Alex Taylor <span dir="ltr"><<a href="mailto:alextaylor@gmail.com" target="_blank">alextaylor@gmail.com</a>></span> wrote:<br></div></div><div class="gmail_extra"><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr">Hey all,<div><br></div><div>I'm running into a segmentation violation when I attempt to use osgVolume::MultipassTechnique more or less as a drop in replacement for RayTracedTechnique using OSG 3.4. My use of RayTracedTechnique works and renders fine.</div><div><br></div><div>Here is an partial code listing demonstrating my use of MultipassTechnique:</div><div><b><br></b></div><div><div><b>    void setVolumeProperties(osg::ref_ptr<osgVolume::Volume> volume,osg::ref_ptr<osgVolume::VolumeTile> tile,</b></div><div><b>            osg::ref_ptr<osgVolume::ImageLayer> layer, VolumePropertyManager &volumeProperties, osg::ref_ptr<osgVolume::VolumeScene> volumeScene)</b></div><div><b>    {</b></div><div><b>        </b></div><div><b>        // FixedFunctionTechnique turns on GL_LIGHTING, which breaks the color rendering.</b></div><div><b>        osg::StateSet* stateset = volume->getOrCreateStateSet();</b></div><div><b>                </b></div><div><b>        if (volumeProperties.volumeTechnique == VolumeTechnique::RayTraced){</b></div><div><b>            osg::ref_ptr<osgVolume::RayTracedTechnique> rayTraced = new osgVolume::RayTracedTechnique();</b></div><div><b>            tile->setVolumeTechnique(rayTraced.get());</b></div><div><b>            osg::ref_ptr<osg::FrontFace> frontFace(new osg::FrontFace(osg::FrontFace::CLOCKWISE));</b></div><div><b>            stateset->setAttribute(frontFace.get(), osg::StateAttribute::PROTECTED);</b></div><div><b>            layer->addProperty(new osgVolume::SampleDensityWhenMovingProperty(volumeProperties.sampleDensityWhenMoving));</b></div><div><b>            layer->addProperty(new osgVolume::SampleDensityProperty(volumeProperties.sampleDensity));</b></div><div><b>        } else if (volumeProperties.volumeTechnique == VolumeTechnique::Multipass) {</b></div><div><b>            osg::ref_ptr<osgVolume::MultipassTechnique> multipass = new osgVolume::MultipassTechnique();</b></div><div><b>            tile->setVolumeTechnique(multipass.get());</b></div><div><b>            volumeScene->addChild(volume.get());</b></div><div><b>            volume->getOrCreateStateSet();</b></div><div><b>            layer->addProperty(new osgVolume::SampleRatioProperty(1.0f));</b></div><div><b>            layer->addProperty(new osgVolume::SampleRatioWhenMovingProperty(0.5f));</b></div><div><b>            </b></div><div><b>        } else if (volumeProperties.volumeTechnique == VolumeTechnique::FixedFunction) {</b></div><div><b>            tile->setVolumeTechnique(new osgVolume::FixedFunctionTechnique());</b></div><div><b>            stateset->setMode(GL_LIGHTING,osg::StateAttribute::OFF | osg::StateAttribute::OVERRIDE);</b></div><div><b>        } else {</b></div><div><b>            throw hg::PropertyException("VolumeTechnique");</b></div><div><b>        }</b></div><div><b><br></b></div><div><b>        layer->addProperty(new osgVolume::TransferFunctionProperty(volumeProperties.transferFunction.get()));</b></div><div><b>        layer->addProperty(new osgVolume::AlphaFuncProperty(volumeProperties.alphaFunc));</b></div><div><b>        if (volumeProperties.useLighting) layer->addProperty(new osgVolume::LightingProperty);</b></div><div><b>        if (volumeProperties.useIsosurface) layer->addProperty(new osgVolume::IsoSurfaceProperty(volumeProperties.alphaFunc));</b></div><div><b>        if (volumeProperties.useMaximumIntensityProjection) layer->addProperty(new osgVolume::MaximumIntensityProjectionProperty());</b></div><div><b>    }</b></div></div><div><br></div><div>The following function returns the Node * that will be passed to the viewer. I either return a osgVolume::Volume * or osgVolume::VolumeScene * object depending on whether I'm using multipass rendering as my Node *. </div><div><b><br></b></div><div><div><b>    osg::Node* BP_createPeerHelper(Volume& v,</b></div><div><b>            hg::SceneClient& client,</b></div><div><b>            const gui_objects::Cookie& owner,</b></div><div><b>            hg::UpdateState& us) {</b></div><div><b>        </b></div><div><b>        osg::ref_ptr<osgVolume::Volume> volume = new osgVolume::Volume;</b></div><div><b>        osg::ref_ptr<osgVolume::VolumeScene> volumeScene = new osgVolume::VolumeScene;</b></div><div><b><br></b></div><div><b>        const mxArray* data = v.getData();</b></div><div><b>        VolumePropertyManager volumeProperties(v,us);</b></div><div><b><br></b></div><div><b>        if (data != NULL && mxGetNumberOfDimensions(data) == 3 && mxGetClassID(data) == mxUINT8_CLASS) {</b></div><div><b>                       </b></div><div><b>            </b></div><div><b>            osg::ref_ptr<osgVolume::VolumeTile> tile = new osgVolume::VolumeTile;</b></div><div><b>            volume->addChild(tile.get());</b></div><div><b>            </b></div><div><b>            // If we are using FixedFunctionTechnique, we need to apply the transfer function to get a new allocated RGBA memory on the CPU to pass to OSG.</b></div><div><b>            // Otherwise, we can pass the intensity data directly to the card. GPU shaders does the RGBA directly.</b></div><div><b>            osg::ref_ptr<osg::Image> intensityImage = createTexture3D(data);</b></div><div><b>            osg::ref_ptr<osg::Image> image_3d = (volumeProperties.volumeTechnique == VolumeTechnique::FixedFunction) ?</b></div><div><b>                                                    osgVolume::applyTransferFunction(intensityImage.get(),volumeProperties.transferFunction.get()) :</b></div><div><b>                                                    intensityImage.release();</b></div><div><b>            </b></div><div><b>            osg::ref_ptr<osgVolume::ImageLayer> layer = new osgVolume::ImageLayer(image_3d);</b></div><div><b>            tile->setLayer(layer.get());</b></div><div><b>            </b></div><div><b>            setVolumeProperties(volume,tile,layer,volumeProperties,volumeScene);</b></div><div><b>                        </b></div><div><b>            // Our original implementation positioned the bbox [-0.5,0.5] in each dimension.</b></div><div><b>            // FixedFunctionTechnique applies the locator matrix to the a unit cube [0 1] in each dimension.</b></div><div><b>            // To get the equivalent spatial referencing, apply a translation of -0.5 to each dimension.</b></div><div><b>            osg::ref_ptr<osg::RefMatrix> matrix = new osg::RefMatrix();</b></div><div><b>            matrix->makeTranslate(-0.5,-0.5,-0.5);</b></div><div><b>            </b></div><div><b>            tile->setLocator(new osgVolume::Locator(*matrix));</b></div><div><b>            </b></div><div><b>        }</b></div><div><b>        else {</b></div><div><b>            throw hg::PropertyException("Data");</b></div><div><b>        }</b></div><div><b>        </b></div><div><b>        std::cout << "volumeScene pointer: " << volumeScene.get() << std::endl;</b></div><div><b>        </b></div><div><b>        if (volumeProperties.volumeTechnique == VolumeTechnique::Multipass)</b></div><div><b>            return volumeScene.release();</b></div><div><b>        else</b></div><div><b>            return volume.release();</b></div><div><b>        </b></div><div><b>    }</b></div></div><div><b><br></b></div><div>When I execute my code that previously worked with RayTracedTechnique, I receive the following stack trace</div><div><br></div><div>







<p><span>Stack Trace (from fault):</span></p>
<p><span><b>[  0] 0x0000000104879d04 fl::diag::stacktrace_base::capture(fl::diag::thread_context const&, unsigned long) at stacktrace.cpp:175 (in /mathworks/devel/sbs/28/ataylor.Bmlhg_task1.j377265/matlab/bin/maci64/libmwfl.dylib)</b></span></p>
<p><span><b>[  1] 0x000000010487cf9a void (anonymous namespace)::terminate_impl::log<char const*>(char const* const&, fl::diag::thread_context const&, char const*, int, char const*, bool) at terminate.cpp:238 (in /mathworks/devel/sbs/28/ataylor.Bmlhg_task1.j377265/matlab/bin/maci64/libmwfl.dylib)</b></span></p>
<p><span><b>[  2] 0x000000010487ca09 fl::diag::terminate_log(char const*, __darwin_ucontext const*) at lock_types.hpp:362 (in /mathworks/devel/sbs/28/ataylor.Bmlhg_task1.j377265/matlab/bin/maci64/libmwfl.dylib)</b></span></p>
<p><span><b>[  3] 0x00000001081cf0a8 (anonymous namespace)::crash_context::generate_crash_report_(std::__1::basic_ostream<char, std::__1::char_traits<char> >&) const at sighndl.cpp:1149 (in /mathworks/devel/sbs/28/ataylor.Bmlhg_task1.j377265/matlab/bin/maci64/libmwmcr.dylib)</b></span></p>
<p><span><b>[  4] 0x00000001081cea00 (anonymous namespace)::crash_context::ctor_() at sighndl.cpp:1025 (in /mathworks/devel/sbs/28/ataylor.Bmlhg_task1.j377265/matlab/bin/maci64/libmwmcr.dylib)</b></span></p>
<p><span><b>[  5] 0x00000001081cd62a mnFatalSignalHandler at sighndl.cpp:729 (in /mathworks/devel/sbs/28/ataylor.Bmlhg_task1.j377265/matlab/bin/maci64/libmwmcr.dylib)</b></span></p>
<p><span><b>[  6] 0x00007fff90c31f1a _sigtramp+00000026 at /usr/lib/system/libsystem_platform.dylib+20250 (no debugging symbols found)</b></span></p>
<p><span><b>[  7] 0x0000000000000005 [unknown function] at [unknown module] (no module specified)</b></span></p>
<p><span><b>[  8] 0x00000001204c4e56 osgVolume::MultipassTechnique::traverse(osg::NodeVisitor&)+00000086 at /mathworks/devel/sbs/28/ataylor.Bmlhg_task1.j377265/matlab/bin/maci64/libosgVolume.130.dylib+106070 (no debugging symbols found)</b></span></p>
<p><span><b>[  9] 0x00000001204dcbf6 osgVolume::VolumeTile::traverse(osg::NodeVisitor&)+00000438 at /mathworks/devel/sbs/28/ataylor.Bmlhg_task1.j377265/matlab/bin/maci64/libosgVolume.130.dylib+203766 (no debugging symbols found)</b></span></p>
<p><span><b>[ 10] 0x00000001204d7c0b osgVolume::VolumeScene::traverse(osg::NodeVisitor&)+00008827 at /mathworks/devel/sbs/28/ataylor.Bmlhg_task1.j377265/matlab/bin/maci64/libosgVolume.130.dylib+183307 (no debugging symbols found)</b></span></p>
<p><span><b>[ 11] 0x0000000143a8daf2 osgUtil::CullVisitor::apply(osg::Group&)+00000642 at /mathworks/devel/sbs/28/ataylor.Bmlhg_task1.j377265/matlab/bin/maci64/libosgUtil.130.dylib+39666 (no debugging symbols found)</b></span></p>
<p><span><b>[ 12] 0x00000001204d8a79 osgVolume::VolumeScene::accept(osg::NodeVisitor&)+00000121 at /mathworks/devel/sbs/28/ataylor.Bmlhg_task1.j377265/matlab/bin/maci64/libosgVolume.130.dylib+187001 (no debugging symbols found)</b></span></p>
<p><span><b>[ 13] 0x00000001438749ef osg::Group::traverse(osg::NodeVisitor&)+00000047 at /mathworks/devel/sbs/28/ataylor.Bmlhg_task1.j377265/matlab/bin/maci64/libosg.130.dylib+522735 (no debugging symbols found)</b></span></p>
<p><span><b>[ 14] 0x0000000143a8dbf0 osgUtil::CullVisitor::apply(osg::Transform&)+00000240 at /mathworks/devel/sbs/28/ataylor.Bmlhg_task1.j377265/matlab/bin/maci64/libosgUtil.130.dylib+39920 (no debugging symbols found)</b></span></p>
<p><span><b>[ 15] 0x00000001438b9499 osg::MatrixTransform::accept(osg::NodeVisitor&)+00000121 at /mathworks/devel/sbs/28/ataylor.Bmlhg_task1.j377265/matlab/bin/maci64/libosg.130.dylib+803993 (no debugging symbols found)</b></span></p>
<p><span><b>[ 16] 0x00000001438749ef osg::Group::traverse(osg::NodeVisitor&)+00000047 at /mathworks/devel/sbs/28/ataylor.Bmlhg_task1.j377265/matlab/bin/maci64/libosg.130.dylib+522735 (no debugging symbols found)</b></span></p>
<p><span><b>[ 17] 0x0000000143a8daf2 osgUtil::CullVisitor::apply(osg::Group&)+00000642 at /mathworks/devel/sbs/28/ataylor.Bmlhg_task1.j377265/matlab/bin/maci64/libosgUtil.130.dylib+39666 (no debugging symbols found)</b></span></p>
<p><span><b>[ 18] 0x0000000143876049 osg::Group::accept(osg::NodeVisitor&)+00000121 at /mathworks/devel/sbs/28/ataylor.Bmlhg_task1.j377265/matlab/bin/maci64/libosg.130.dylib+528457 (no debugging symbols found)</b></span></p>
<p><span><b>[ 19] 0x00000001438749ef osg::Group::traverse(osg::NodeVisitor&)+00000047 at /mathworks/devel/sbs/28/ataylor.Bmlhg_task1.j377265/matlab/bin/maci64/libosg.130.dylib+522735 (no debugging symbols found)</b></span></p>
<p><span><b>[ 20] 0x0000000143a8f29d osgUtil::CullVisitor::apply(osg::Camera&)+00003021 at /mathworks/devel/sbs/28/ataylor.Bmlhg_task1.j377265/matlab/bin/maci64/libosgUtil.130.dylib+45725 (no debugging symbols found)</b></span></p>
<p><span><b>[ 21] 0x000000014381c209 osg::Camera::accept(osg::NodeVisitor&)+00000121 at /mathworks/devel/sbs/28/ataylor.Bmlhg_task1.j377265/matlab/bin/maci64/libosg.130.dylib+160265 (no debugging symbols found)</b></span></p>
<p><span><b>[ 22] 0x00000001438749ef osg::Group::traverse(osg::NodeVisitor&)+00000047 at /mathworks/devel/sbs/28/ataylor.Bmlhg_task1.j377265/matlab/bin/maci64/libosg.130.dylib+522735 (no debugging symbols found)</b></span></p>
<p><span><b>[ 23] 0x0000000143a8daf2 osgUtil::CullVisitor::apply(osg::Group&)+00000642 at /mathworks/devel/sbs/28/ataylor.Bmlhg_task1.j377265/matlab/bin/maci64/libosgUtil.130.dylib+39666 (no debugging symbols found)</b></span></p>
<p><span><b>[ 24] 0x0000000143876049 osg::Group::accept(osg::NodeVisitor&)+00000121 at /mathworks/devel/sbs/28/ataylor.Bmlhg_task1.j377265/matlab/bin/maci64/libosg.130.dylib+528457 (no debugging symbols found)</b></span></p>
<p><span><b>[ 25] 0x00000001438749ef osg::Group::traverse(osg::NodeVisitor&)+00000047 at /mathworks/devel/sbs/28/ataylor.Bmlhg_task1.j377265/matlab/bin/maci64/libosg.130.dylib+522735 (no debugging symbols found)</b></span></p>
<p><span><b>[ 26] 0x0000000143b486bb osgUtil::SceneView::cullStage(osg::Matrixd const&, osg::Matrixd const&, osgUtil::CullVisitor*, osgUtil::StateGraph*, osgUtil::RenderStage*, osg::Viewport*)+00002875 at /mathworks/devel/sbs/28/ataylor.Bmlhg_task1.j377265/matlab/bin/maci64/libosgUtil.130.dylib+804539 (no debugging symbols found)</b></span></p>
<p><span><b>[ 27] 0x0000000143b47117 osgUtil::SceneView::cull()+00001399 at /mathworks/devel/sbs/28/ataylor.Bmlhg_task1.j377265/matlab/bin/maci64/libosgUtil.130.dylib+798999 (no debugging symbols found)</b></span></p>
<p><span><b>[ 28] 0x00000001372607da SceneRendererImpl::renderScene(hg::openscenegraph::RenderTimes&, hg::openscenegraph::RenderCounts&, osgUtil::SceneView*, unsigned int) at osgSceneServer.cpp:1448 (in /mathworks/devel/sbs/28/ataylor.Bmlhg_task1.j377265/matlab/bin/maci64/libmwosgserver.dylib)</b></span></p>
<p><span><b>[ 29] 0x000000013725922e hg::openscenegraph::OsgSceneServer::cullAndDraw(int, bool, double, double) at osgSceneServer.cpp:1809 (in /mathworks/devel/sbs/28/ataylor.Bmlhg_task1.j377265/matlab/bin/maci64/libmwosgserver.dylib)</b></span></p>
<p><span><b>[ 30] 0x000000011f298082 UIJ_call_OpenGLPaintFcn(gui_objects::scene_server::SceneServerProxy*, int, bool, double, double) at SceneServerPeerEvents.cpp:56 (in /mathworks/devel/sbs/28/ataylor.Bmlhg_task1.j377265/matlab/bin/maci64/libuij.dylib)</b></span></p>
<p><span><b>[ 31] 0x000000011e589414 Java_com_mathworks_hg_peer_JavaSceneServerPeer_doDisplay at Scene.cpp:129 (in /mathworks/devel/sbs/28/ataylor.Bmlhg_task1.j377265/matlab/bin/maci64/libnativehg.dylib)</b></span></p></div><div>I was wondering if either from the stack trace or my code segments if there is an obvious culprit in terms of my use of MultipassTechnique. I feel like my use is consistent with the pattern established in the shipping example, but I'm a bit stuck at the moment as far as next directions to debug my problem...</div><div><br></div><div>Thanks as always for any help,</div><div><br></div><div>Alex</div><div><br></div><div><br></div><div><br></div><div><br></div></div>
<br></blockquote></div></div><div class="gmail_extra"><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">_______________________________________________<br>
osg-users mailing list<br>
<a href="mailto:osg-users@lists.openscenegraph.org" target="_blank">osg-users@lists.openscenegraph.org</a><br>
<a href="http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org" rel="noreferrer" target="_blank">http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org</a><br>
<br></blockquote></div><br></div>
_______________________________________________<br>
osg-users mailing list<br>
<a href="mailto:osg-users@lists.openscenegraph.org" target="_blank">osg-users@lists.openscenegraph.org</a><br>
<a href="http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org" rel="noreferrer" target="_blank">http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org</a><br>
</blockquote></div></div></div></div>
<br>_______________________________________________<br>
osg-users mailing list<br>
<a href="mailto:osg-users@lists.openscenegraph.org" target="_blank">osg-users@lists.openscenegraph.org</a><br>
<a href="http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org" rel="noreferrer" target="_blank">http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org</a><br>
<br></blockquote></div><br></div>
_______________________________________________<br>
osg-users mailing list<br>
<a href="mailto:osg-users@lists.openscenegraph.org" target="_blank">osg-users@lists.openscenegraph.org</a><br>
<a href="http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org" rel="noreferrer" target="_blank">http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org</a><br>
</blockquote></div>