Summary

Title:new MeshFromStrandsNode error - was MeshFromStrandsNode - map channel error
Category:Crash/Critical
Status:Open
Posted By:engineeringa52 ( Kevin Bass )
Date Created:11 March 2017

Problem

Description:

I'm hoping is something our our plugin configuration but I did get simular results when the plugin was installed locally.

I'm hoping you can reproduce or provide me with a build that has more error reporting...so I can pass along.

I'm at a loss.  I really want to use this software in production but at this point we cannot.  Please help.

Here is the latest error log:

Ornatrix Info: Ornatrix 1.2.0.10425 Release initialized
Ornatrix Error: Assert failed: fnMesh.assignUVs( textureChannelAfterEditing.uvCounts, textureChannelAfterEditing.uvIds, &textureChannelAfterEditing.name ): (kInvalidParameter): No element at given index
Stack trace:
initephere_ornatrix
initephere_ornatrix
initephere_ornatrix
initephere_ornatrix
initephere_ornatrix
initephere_ornatrix
initephere_ornatrix
initephere_ornatrix
THdependNode::computePlug
TdependNode::dbEvaluate
TdependNode::mpSafeDbEvaluate
TdependNode::processEval
TfastTrack::debugMe
Tplug::evalConnectionValue
Tplug::evaluateValue
TdataBlockDG::value
TmeshShape::computeObject
TdependNode::dbEvaluate
TdagObject::dbEvaluate
TdependNode::mpSafeDbEvaluateWithSet
Tplug::processEval
Tplug::evaluateValue
TdataBlockDG::value
TmeshShape::meshGeomDataRef
TmeshShape::boundingBox
TfrustumCullTraversal::cull
TfrustumCullTraversal::traverse
TfrustumCullTraversal::traverseChildren
TdrawTraversal::processThisObject
TdrawTraversal::processObject
TfrustumCullTraversal::cull
TfrustumCullTraversal::traverse
TfrustumCullTraversal::traverseChildren
TdrawTraversal::processThisObject
TdrawTraversal::processObject
TfrustumCullTraversal::cull
TfrustumCullTraversal::traverse
TfrustumCullTraversal::traverseDag
TdrawTraversal::traverseView
TdrawProcess::mpRefresh

 

we are also loading Ornatrix from a remove location (module)  here is the contents of the mod file

+ MAYAVERSION:2017 Ornatrix 1.2.0.1045 ./
PATH +:=bin
plug-ins: 2017
scripts: scripts
MTOA_EXTENSIONS_PATH := 2017/extensions
ORNATRIX_ARNOLD_PROCEDURAL_PATH := 2017/procedurals/OrnatrixProcedural.dll
ORNATRIX_MAYA_GROOMS_DIR := Grooms

Steps to Reproduce:

create sphere

add fur preset

change map channel to 2 (error)

 

Attached Files:

>2017-03-10_16h21_17.mp4 (1995835 bytes),

Hi Kevin,

Are you trying to create two Uv sets, one with Per Strand UVs? If so, I tried and it works without any problem or warnings. After you create the second UV set you have to use the Select Map Channel field to cycle between UV sets, 0 is Uv set #1, 1 is UV set #2 and so on. Please look at the attached video.

https://ephere.com/download.aspx?message=12640&f=MFS.mp4


Attached Files:

>MFS.mp4 (310760 bytes),

Jeordanis Figuereo (Product Designer. EPHERE Inc.)

Yes, that is what I am trying to do and I undersatnd the procedure. I was illustrating that it fails for some reason and I have to do that funny swich back thing in order to get it to work, but it is not stable.

Something is different about our environment and yours which I need help figuring out what that is.  We are a very busy studio and need a good hair solution and would love to use ornatrix but we need to get past this basic problem before we use it in production.

Additionally this procedure is very black box and visualizing the setting when you swich channels is not intuitive.  There is no indication of how many channels exist or what each channels settings are as the UI doesn't update. 

Please help me track down our issue.

I just to reproduce this a few times as well without luck. Can you please let us know which Windows and Maya version you are running?

I just added the automatic update of values in UI when you change the Selected Map Channel index, so please try that in the next nightly (10447+) which should be up shortly.

Marsel Khadiyev (Software Developer, EPHERE Inc.)

Thanks Marcel,

I'll try that first thing on Monday. 

Maya 2015 ext 1 sp 6 and Maya 2017 update 3. We have a remote location for all of our 3rd party plugins and use .mod files (the above text is what we are currently using for Ornatrix).  And the plugin is extracted from the .zip archive.  the only thing that is changed from the zip structure is the .mod file

Here is my system info and i get the same result on multiple workstations.

OS Name Microsoft Windows 7 Professional
Version 6.1.7601 Service Pack 1 Build 7601
Other OS Description Not Available
OS Manufacturer Microsoft Corporation
System Manufacturer Supermicro
System Model SYS-7038A-I
System Type x64-based PC
Processor Intel(R) Xeon(R) CPU E5-2630 v4 @ 2.20GHz, 2201 Mhz, 10 Core(s), 20 Logical Processor(s)
Processor Intel(R) Xeon(R) CPU E5-2630 v4 @ 2.20GHz, 2201 Mhz, 10 Core(s), 20 Logical Processor(s)
BIOS Version/Date American Megatrends Inc. 2.0, 2/2/2016
SMBIOS Version 3.0
Windows Directory C:\windows
System Directory C:\windows\system32
Boot Device \Device\HarddiskVolume2
Locale United States
Hardware Abstraction Layer Version = "6.1.7601.17514"
Installed Physical Memory (RAM) 64.0 GB
Total Physical Memory 63.9 GB
Available Physical Memory 54.1 GB
Total Virtual Memory 115 GB
Available Virtual Memory 100 GB
Page File Space 50.7 GB

And a single Quadro M4000

Tried 1.0.2.10455

got this error

// Error: Ornatrix: Private\TriangleMeshAccess.cpp(783): Assert failed: fnMesh.assignUVs( textureChannelAfterEditing.uvCounts, textureChannelAfterEditing.uvIds, &textureChannelAfterEditing.name ): (kInvalidParameter): No element at given index

Stack trace:

initephere_ornatrix

initephere_ornatrix

initephere_ornatrix

initephere_ornatrix

initephere_ornatrix

initephere_ornatrix

initephere_ornatrix

initephere_ornatrix

THdependNode::computePlug

TdependNode::dbEvaluate

TdependNode::mpSafeDbEvaluate

TdependNode::processEval

TfastTrack::debugMe

Tplug::evalConnectionValue

Tplug::evaluateValue

TdataBlockDG::value

TmeshShape::computeObject

TdependNode::dbEvaluate

TdagObject::dbEvaluate

TdependNode::mpSafeDbEvaluateWithSet

Tplug::processEval

Tplug::evaluateValue

TdataBlockDG::value

TmeshShape::meshGeomDataRef

TmeshShape::boundingBox

TfrustumCullTraversal::cull

TfrustumCullTraversal::traverse

TfrustumCullTraversal::traverseChildren

TdrawTraversal::processThisObject

TdrawTraversal::processObject

TfrustumCullTraversal::cull

TfrustumCullTraversal::traverse

TfrustumCullTraversal::traverseChildren

TdrawTraversal::processThisObject

TdrawTraversal::processObject

TfrustumCullTraversal::cull

TfrustumCullTraversal::traverse

TfrustumCullTraversal::traverseDag

TdrawTraversal::traverseView

TdrawProcess::mpRefresh

//

// Warning: Cycle on 'MeshFromStrandsNode1.outputMesh' may not evaluate as expected. (Use 'cycleCheck -e off' to disable this warning.) //

 


Attached Files:
Image 1

from the script editor... did the following to make it work...but its still unstable once i make other hair systems.

// Error: file: //disks/nas0/pipeline/plugins/windows/maya/2017/ornatrix/ornatrix_nightly_1_2_0_10455/scripts/AEMeshFromStrandsNodeTemplate.mel line 289: Object is not a child: //

select -r OxHairSystem1 ;

select -r MeshFromStrandsNode1 ;

// Error: file: //disks/nas0/pipeline/plugins/windows/maya/2017/ornatrix/ornatrix_nightly_1_2_0_10455/scripts/AEMeshFromStrandsNodeTemplate.mel line 289: Object is not a child: //

// Error: file: //disks/nas0/pipeline/plugins/windows/maya/2017/ornatrix/ornatrix_nightly_1_2_0_10455/scripts/AEMeshFromStrandsNodeTemplate.mel line 289: Object is not a child: //

setAttr -type Int32Array MeshFromStrandsNode1.mappingTypes 2 1 0 ;

setAttr -type Int32Array MeshFromStrandsNode1.mappingTypes 2 0 0 ;

setAttr -type Int32Array MeshFromStrandsNode1.baseChannels 2 2924 0 ;

setAttr -type Int32Array MeshFromStrandsNode1.mappingTypes 2 1 0 ;

setAttr -type Int32Array MeshFromStrandsNode1.mappingTypes 2 0 0 ;

setAttr -type Int32Array MeshFromStrandsNode1.usePerStrandMapping 2 0 0 ;

setAttr -type Int32Array MeshFromStrandsNode1.usePerStrandMapping 2 1 0 ;

 

here is i'm guessing a simular error the only difference is that this is a local install with none of our custom pipeline loaded.  Plain Maya 2017 update 3

 

Ornatrix Info: Ornatrix 1.2.0.10455 Release initialized
Ornatrix Error: Assert failed: fnMesh.assignUVs( textureChannelAfterEditing.uvCounts, textureChannelAfterEditing.uvIds, &textureChannelAfterEditing.name ): (kInvalidParameter): No element at given index
Stack trace:
initephere_ornatrix
initephere_ornatrix
initephere_ornatrix
initephere_ornatrix
initephere_ornatrix
initephere_ornatrix
initephere_ornatrix
initephere_ornatrix
THdependNode::computePlug
TdependNode::dbEvaluate
TdependNode::mpSafeDbEvaluate
TdependNode::processEval
TfastTrack::debugMe
Tplug::evalConnectionValue
Tplug::evaluateValue
TdataBlockDG::value
TmeshShape::computeObject
TdependNode::dbEvaluate
TdagObject::dbEvaluate
TdependNode::mpSafeDbEvaluateWithSet
Tplug::processEval
Tplug::evaluateValue
TdataBlockDG::value
TmeshShape::meshGeomDataRef
TmeshShape::boundingBox
OGSMayaDagObjectEvaluator::doDGBoundingBox
OGSMayaDagObjectEvaluator::PushBoundsFromDG
OGSMayaParameterMappingPtrList::iterator_impl<OGSMayaParameterMapping * __ptr64 const>::is_convertible<OGSMayaParameterMapping * __ptr64 const * __ptr64,OGSMayaParameterMapping * __ptr64 const * __ptr64>::operator=
OGSMayaParameterMappingPtrList::iterator_impl<OGSMayaParameterMapping * __ptr64 const>::is_convertible<OGSMayaParameterMapping * __ptr64 const * __ptr64,OGSMayaParameterMapping * __ptr64 const * __ptr64>::operator=
OGSMayaParameterMappingPtrList::iterator_impl<OGSMayaParameterMapping * __ptr64 const>::is_convertible<OGSMayaParameterMapping * __ptr64 const * __ptr64,OGSMayaParameterMapping * __ptr64 const * __ptr64>::operator=
OGSMayaParameterMappingPtrList::iterator_impl<OGSMayaParameterMapping * __ptr64 const>::is_convertible<OGSMayaParameterMapping * __ptr64 const * __ptr64,OGSMayaParameterMapping * __ptr64 const * __ptr64>::operator=
tbb::interface7::internal::task_arena_base::internal_initialize
tbb::task_scheduler_init::initialize
tbb::task_scheduler_init::initialize
tbb::internal::thread_sleep_v3
_TBB_machine_is_in_transaction
_TBB_machine_is_in_transaction
BaseThreadInitThunk
RtlUserThreadStart
Ornatrix Error: Assert failed (2): fnMesh.assignUVs( textureChannelAfterEditing.uvCounts, textureChannelAfterEditing.uvIds, &textureChannelAfterEditing.name ): (kInvalidParameter): No element at given index

 

also this from the script editor when i select the MeshFromStands node

select -r MeshFromStrandsNode1 ;
// Error: file: C:/Program Files/Ephere/Ornatrix for Maya/scripts/AETemplates/AEMeshFromStrandsNodeTemplate.mel line 289: Object is not a child: //

Marcel,

maybe we're missing a .dll that you have on your dev systems.  Maybe something like Visual C++ Redistributable Packages for Visual Studio 20XX.  Our images are pretty clean and maybe that's whats going on over here?

Thoughts?

if you let me know what your compiling with I can install taht Redistribute package and see if that helps?  Just an idea.

Andy

I found one potential problem. Do you have Hypershade open? If that's the case please close it and try to reproduce the issue again. We've had some issues with having Attribute Editor displayed multiple times (such as when Hypershade is open), and this could be one of those. I will work to resolve it meanwhile.

Marsel Khadiyev (Software Developer, EPHERE Inc.)

I don't believe I did but I will close it to make sure.  Will test in the a.m.

Thanks for the continuing efforts to track this down.

Andy

Ok, thanks and no worries, we'll track it down.

Marsel Khadiyev (Software Developer, EPHERE Inc.)

still getting this error with the latest build.

 

Ornatrix Error: Assert failed: fnMesh.assignUVs( textureChannelAfterEditing.uvCounts, textureChannelAfterEditing.uvIds, &textureChannelAfterEditing.name ): (kInvalidParameter): No element at given index
Stack trace:
initephere_ornatrix
initephere_ornatrix
initephere_ornatrix
initephere_ornatrix
initephere_ornatrix
initephere_ornatrix
initephere_ornatrix
initephere_ornatrix
THdependNode::computePlug
TdependNode::dbEvaluate
TdependNode::mpSafeDbEvaluate
TdependNode::processEval
TfastTrack::debugMe
Tplug::evalConnectionValue
Tplug::evaluateValue
TdataBlockDG::value
TmeshShape::computeObject
TdependNode::dbEvaluate
TdagObject::dbEvaluate
TdependNode::mpSafeDbEvaluateWithSet
Tplug::processEval
Tplug::evaluateValue
TdataBlockDG::value
TmeshShape::meshGeomDataRef
TmeshShape::boundingBox
OGSMayaDagObjectEvaluator::doDGBoundingBox
OGSMayaDagObjectEvaluator::PushBoundsFromDG
OGSMayaParameterMappingPtrList::iterator_impl<OGSMayaParameterMapping * __ptr64 const>::is_convertible<OGSMayaParameterMapping * __ptr64 const * __ptr64,OGSMayaParameterMapping * __ptr64 const * __ptr64>::operator=
OGSMayaParameterMappingPtrList::iterator_impl<OGSMayaParameterMapping * __ptr64 const>::is_convertible<OGSMayaParameterMapping * __ptr64 const * __ptr64,OGSMayaParameterMapping * __ptr64 const * __ptr64>::operator=
OGSMayaParameterMappingPtrList::iterator_impl<OGSMayaParameterMapping * __ptr64 const>::is_convertible<OGSMayaParameterMapping * __ptr64 const * __ptr64,OGSMayaParameterMapping * __ptr64 const * __ptr64>::operator=
OGSMayaParameterMappingPtrList::iterator_impl<OGSMayaParameterMapping * __ptr64 const>::is_convertible<OGSMayaParameterMapping * __ptr64 const * __ptr64,OGSMayaParameterMapping * __ptr64 const * __ptr64>::operator=
tbb::interface7::internal::task_arena_base::internal_initialize
tbb::task_scheduler_init::initialize
tbb::task_scheduler_init::initialize
tbb::internal::thread_sleep_v3
_TBB_machine_is_in_transaction
_TBB_machine_is_in_transaction
BaseThreadInitThunk
RtlUserThreadStart
Ornatrix Error: Assert failed (2): fnMesh.assignUVs( textureChannelAfterEditing.uvCounts, textureChannelAfterEditing.uvIds, &textureChannelAfterEditing.name ): (kInvalidParameter): No element at given index
Ornatrix Error: Assert failed (3): fnMesh.assignUVs( textureChannelAfterEditing.uvCounts, textureChannelAfterEditing.uvIds, &textureChannelAfterEditing.name ): (kInvalidParameter): No element at given index
Ornatrix Error: Assert failed (4): fnMesh.assignUVs( textureChannelAfterEditing.uvCounts, textureChannelAfterEditing.uvIds, &textureChannelAfterEditing.name ): (kInvalidParameter): No element at given index
Ornatrix Error: Assert failed (5): fnMesh.assignUVs( textureChannelAfterEditing.uvCounts, textureChannelAfterEditing.uvIds, &textureChannelAfterEditing.name ): (kInvalidParameter): No element at given index

AND we got this one too in the script editor

// Error: file: //###/###/###/plugins/windows/maya/2017/ornatrix/ornatrix/scripts/AEMeshFromStrandsNodeTemplate.mel line 299: Object is not a child: //

Can you please confirm whether you have Hypershade open or closed?

Marsel Khadiyev (Software Developer, EPHERE Inc.)

One more thing to check: please make sure your graph evaluation is set to DG and not Parallel:

https://ephere.com/plugins/autodesk/maya/ornatrix/docs/1/Guides_or_Hair_Update_Problems.html

Marsel Khadiyev (Software Developer, EPHERE Inc.)

Parellel mode is off... and i'm getting this error when i try to render with 2 uv sets in maya 2017 sp3 vray 3.4

 

// Error: Ornatrix: D:\TeamCity\buildAgent\work\cdf694efa24c5eef\Ephere\Plugins\Autodesk\Maya\Ornatrix\Private\TriangleMeshAccess.cpp(783): Assert failed (2): fnMesh.assignUVs( textureChannelAfterEditing.uvCounts, textureChannelAfterEditing.uvIds, &textureChannelAfterEditing.name ): (kInvalidParameter): No element at given index //

 

is there a dependancy that isn't properly mapped... " D:\TeamCity\buildAgent\work\"??

 

also i'm trying to get another machine from engineering thinking it might be hardware related.  all our of boxes on the floor are the following. 

Win 7 pro
Supermicro SYS-7038A-I
XEON E5-2630 (dual)
64 GB ram
Quadro M4000

 

 

Hi,

I cannot reproduce this error, however, I'm using VRay 3.5. Which version of Ox are you using?

Jeordanis Figuereo (Product Designer. EPHERE Inc.)

3.4_27034

is there a build that you can give me that has a higher level of feedback and error reporting....  the root of the problem is still the MeshFromStrands Node mulitple UV operations... is no one else having this problem???

thanks

Andy

Andy,

We still don't have a 3.4_27034 of Ox for Maya yet, Or we are talking about Ox for Max?

Jeordanis Figuereo (Product Designer. EPHERE Inc.)

maya... then what is the latest build of Vray that you support?

 

A

We support all latest version of VRay. I just wanted to know which version of Ornatrix for Maya you are using.

Jeordanis Figuereo (Product Designer. EPHERE Inc.)

the latest release

Hey Andy,}

Unfortunately I cannot reproduce this with the latest stable version of Ox for Maya. I tried Maya 2017.3 and 2016.5, both are working fine. I'll see if one of the guys here can reproduce it.

Jeordanis Figuereo (Product Designer. EPHERE Inc.)

can i get a debug build of Ox for Maya so i can give you guys somemore feedback? something that spitsout more of a detailed log?

Andy

Hi Andy, did you turn on logging to maximum level?

https://ephere.com/plugins/autodesk/maya/ornatrix/docs/1/Logging.html

Marsel Khadiyev (Software Developer, EPHERE Inc.)

no i did not see that i will do that now and post something for you!

thanks

Andy

 

i hope this helps. again we are running this though a module file remotely off the network.

script editor logs:

polySphere -r 1 -sx 20 -sy 20 -ax 0 1 0 -cuv 2 -ch 1;

// Result: pSphere1 polySphere1 //

OxAddHairToSelection;

// Ornatrix: GuidesFromMeshNode::compute [GuidesFromMeshNode1.outputGuides] //

// Ornatrix: HairFromGuidesNode::ComputeOutputHair starts //

// Ornatrix: GuidesFromMeshNode::compute [GuidesFromMeshNode1.outputGuides] //

// Ornatrix: Cleared render hair cache //

// Ornatrix: HairFromGuidesNode::ComputeOutputHair ends, vertices: 9590 //

// Ornatrix: HairFromGuidesNode::ComputeOutputHair starts //

// Ornatrix: GuidesFromMeshNode::compute [GuidesFromMeshNode1.outputGuides] //

// Ornatrix: HairFromGuidesNode::ComputeOutputHair ends, vertices: 9590 //

select -cl ;

select -r MeshFromStrandsNode1 ;

Defined: AttributeEditor_MainAttributeEditorLayout_meshMapTypeRadio

setAttr -type Int32Array MeshFromStrandsNode1.mappingTypes 1 0 ;

OxDimPerMappingChannelControls

// Error: file: //disks/nas0/pipeline/plugins/windows/maya/2017/ornatrix/ornatrix/scripts/AETemplates/AEMeshFromStrandsNodeTemplate.mel line 324: Object 'createTextureAtlas' not found. //

OxDimPerMappingChannelControls

Defined: hyperShadePanel1dockStation_propertyPanelForm_meshMapTypeRadio

setAttr -type Int32Array MeshFromStrandsNode1.mappingTypes 1 0 ;

OxDimPerMappingChannelControls

OxDimPerMappingChannelControls

setAttr -type Int32Array MeshFromStrandsNode1.usePerStrandMapping 1 1 ;

OxDimPerMappingChannelControls

setAttr "MeshFromStrandsNode1.mapChannelCount" 2;

// Error: file: //disks/nas0/pipeline/plugins/windows/maya/2017/ornatrix/ornatrix/scripts/AETemplates/AEMeshFromStrandsNodeTemplate.mel line 307: Object is not a child: //

setAttr -type Int32Array MeshFromStrandsNode1.usePerStrandMapping 2 0 0 ;

OxDimPerMappingChannelControls

select -r OxHairSystem1 ;

select -r GuidesFromMeshNode1 ;

setAttr "GuidesFromMeshNode1.length" 0.1;

select -r RenderSettingsNode1 ;

setAttr "RenderSettingsNode1.radius" 0.01;

select -r RotateNode1 ;

setAttr "RotateNode1.globalAngle" 3.141593;

select -r OxHairSystem1 ;

shadingNode -asShader VRayMtl;

// Result: VRayMtl1 //

sets -renderable true -noSurfaceShader true -empty -name VRayMtl1SG;

// Result: VRayMtl1SG //

connectAttr -f VRayMtl1.outColor VRayMtl1SG.surfaceShader;

// Result: Connected VRayMtl1.outColor to VRayMtl1SG.surfaceShader. //

assignCreatedShader "VRayMtl" "" VRayMtl1 "OxHairSystem1";

sets -e -forceElement VRayMtl1SG;

// Result: VRayMtl1SG //

// Created shader VRayMtl and assigned to the selected objects. //

shadingNode -asTexture ramp;

// Result: ramp1 //

shadingNode -asUtility place2dTexture;

// Result: place2dTexture1 //

connectAttr place2dTexture1.outUV ramp1.uv;

// Result: Connected place2dTexture1.outUV to ramp1.uvCoord. //

connectAttr place2dTexture1.outUvFilterSize ramp1.uvFilterSize;

// Result: Connected place2dTexture1.outUvFilterSize to ramp1.uvFilterSize. //

defaultNavigation -ce -source ramp1 -destination VRayMtl1.color;

connectAttr -f ramp1.outColor VRayMtl1.color;

// Result: Connected ramp1.outColor to VRayMtl1.diffuseColor. //

select -r OxHairSystem1 ;

// Ornatrix: NotifyRenderingScene: true //

// Ornatrix: NotifyRenderingScene: false //

// Ornatrix: NotifyRenderingScene: true //

// Ornatrix: MeshFromStrandsNode::computeOutputMesh starts //

// Ornatrix: HairFromGuidesNode::ComputeOutputHair starts //

// Ornatrix: Cleared render hair cache //

// Ornatrix: HairFromGuidesNode::ComputeOutputHair ends, vertices: 19080 //

// Ornatrix: MeshFromStrandsNode::computeOutputMesh end //

// Ornatrix: NotifyRenderingScene: false //

select -r RotateNode1 ;

setAttr "RotateNode1.globalAngle" 0;

// Ornatrix: NotifyRenderingScene: true //

// Ornatrix: MeshFromStrandsNode::computeOutputMesh starts //

// Ornatrix: HairFromGuidesNode::ComputeOutputHair starts //

// Ornatrix: Cleared render hair cache //

// Ornatrix: HairFromGuidesNode::ComputeOutputHair ends, vertices: 19080 //

// Ornatrix: MeshFromStrandsNode::computeOutputMesh end //

// Ornatrix: NotifyRenderingScene: false //

select -r OxHairSystem1 ;

setAttr "ramp1.colorEntryList[0].color" -type double3 1 0 0 ;

setAttr "ramp1.colorEntryList[1].color" -type double3 0 1 0 ;

select -cl ;

updateRenderOverride;

// Ornatrix: NotifyRenderingScene: true //

// Ornatrix: MeshFromStrandsNode::computeOutputMesh starts //

// Ornatrix: HairFromGuidesNode::ComputeOutputHair starts //

// Ornatrix: Cleared render hair cache //

// Ornatrix: HairFromGuidesNode::ComputeOutputHair ends, vertices: 19080 //

// Ornatrix: MeshFromStrandsNode::computeOutputMesh end //

// Ornatrix: NotifyRenderingScene: false //

select -r OxHairSystem1 ;

// Ornatrix: NotifyRenderingScene: true //

// Ornatrix: MeshFromStrandsNode::computeOutputMesh starts //

// Ornatrix: HairFromGuidesNode::ComputeOutputHair starts //

// Ornatrix: Cleared render hair cache //

// Ornatrix: HairFromGuidesNode::ComputeOutputHair ends, vertices: 19080 //

// Ornatrix: MeshFromStrandsNode::computeOutputMesh end //

// Ornatrix: NotifyRenderingScene: false //

// Ornatrix: NotifyRenderingScene: true //

// Ornatrix: MeshFromStrandsNode::computeOutputMesh starts //

// Ornatrix: HairFromGuidesNode::ComputeOutputHair starts //

// Ornatrix: Cleared render hair cache //

// Ornatrix: HairFromGuidesNode::ComputeOutputHair ends, vertices: 19080 //

// Ornatrix: MeshFromStrandsNode::computeOutputMesh end //

// Ornatrix: NotifyRenderingScene: false //

 

output window logs

Ornatrix Error: Assert failed: status: (kFailure): Unexpected Internal Failure
Stack trace:
initephere_ornatrix
initephere_ornatrix
initephere_ornatrix
initephere_ornatrix
THcommandObject::doIt
TmetaCommand::doCommand
TmetaCommandPtrArray::catenate
melScanDouble
TminMelArgList::nextDigit
TminMelArgList::nextDigit
SophiaExecutable::evaluate
TcommandEngine::executeCommand
QmayaCommandScrollField::readPlatformTextFile
TcommandLine::doCommand
TcommandLine::handleReturnPressed
QMetaObject::activate
QLineEdit::qt_static_metacall
QMetaObject::activate
QWidgetLineControl::processKeyEvent
QLineEdit::keyPressEvent
QmayaField::keyPressEvent
QWidget::event
QLineEdit::event
QApplicationPrivate::notify_helper
QApplication::notify
TwindowManager::windowPreferencesAreEnabled
QCoreApplication::notifyInternal2
QSizePolicy::QSizePolicy
QSizePolicy::QSizePolicy
QApplicationPrivate::notify_helper
QApplication::notify
TwindowManager::windowPreferencesAreEnabled
QCoreApplication::notifyInternal2
QGuiApplicationPrivate::processKeyEvent
QGuiApplicationPrivate::processWindowSystemEvent
QWindowSystemInterface::sendWindowSystemEvents
QEventDispatcherWin32::processEvents
TranslateMessageEx
TranslateMessage
QEventDispatcherWin32::processEvents
Ornatrix Error: Assert failed (2): status: (kFailure): Unexpected Internal Failure
Ornatrix Error: Assert failed (3): status: (kFailure): Unexpected Internal Failure
Ornatrix Error: Assert failed (4): status: (kFailure): Unexpected Internal Failure
Ornatrix Error: Assert failed: fnMesh.assignUVs( textureChannelAfterEditing.uvCounts, textureChannelAfterEditing.uvIds, &textureChannelAfterEditing.name ): (kInvalidParameter): No element at given index
Stack trace:
initephere_ornatrix
initephere_ornatrix
initephere_ornatrix
initephere_ornatrix
initephere_ornatrix
uninitializePlugin
uninitializePlugin
initephere_ornatrix
initephere_ornatrix
THdependNode::computePlug
TdependNode::dbEvaluate
TdependNode::mpSafeDbEvaluate
TdependNode::processEval
TfastTrack::debugMe
Tplug::evalConnectionValue
Tplug::evaluateValue
TdataBlockDG::value
TmeshShape::computeObject
TdependNode::dbEvaluate
TdagObject::dbEvaluate
TdependNode::mpSafeDbEvaluateWithSet
Tplug::processEval
Tplug::evaluateValue
TdataBlockDG::value
TmeshShape::meshGeomDataRef
TmeshShape::boundingBox
OGSMayaDagObjectEvaluator::doDGBoundingBox
OGSMayaDagObjectEvaluator::PushBoundsFromDG
OGSMayaParameterMappingPtrList::iterator_impl<OGSMayaParameterMapping * __ptr64 const>::is_convertible<OGSMayaParameterMapping * __ptr64 const * __ptr64,OGSMayaParameterMapping * __ptr64 const * __ptr64>::operator=
OGSMayaParameterMappingPtrList::iterator_impl<OGSMayaParameterMapping * __ptr64 const>::is_convertible<OGSMayaParameterMapping * __ptr64 const * __ptr64,OGSMayaParameterMapping * __ptr64 const * __ptr64>::operator=
OGSMayaParameterMappingPtrList::iterator_impl<OGSMayaParameterMapping * __ptr64 const>::is_convertible<OGSMayaParameterMapping * __ptr64 const * __ptr64,OGSMayaParameterMapping * __ptr64 const * __ptr64>::operator=
OGSMayaParameterMappingPtrList::iterator_impl<OGSMayaParameterMapping * __ptr64 const>::is_convertible<OGSMayaParameterMapping * __ptr64 const * __ptr64,OGSMayaParameterMapping * __ptr64 const * __ptr64>::operator=
tbb::interface7::internal::task_arena_base::internal_initialize
tbb::task_scheduler_init::initialize
tbb::task_scheduler_init::initialize
tbb::internal::thread_sleep_v3
_TBB_machine_is_in_transaction
_TBB_machine_is_in_transaction
BaseThreadInitThunk
RtlUserThreadStart
Ornatrix Error: Assert failed (2): fnMesh.assignUVs( textureChannelAfterEditing.uvCounts, textureChannelAfterEditing.uvIds, &textureChannelAfterEditing.name ): (kInvalidParameter): No element at given index
Ornatrix Error: Assert failed (3): fnMesh.assignUVs( textureChannelAfterEditing.uvCounts, textureChannelAfterEditing.uvIds, &textureChannelAfterEditing.name ): (kInvalidParameter): No element at given index
Ornatrix Error: Assert failed (4): fnMesh.assignUVs( textureChannelAfterEditing.uvCounts, textureChannelAfterEditing.uvIds, &textureChannelAfterEditing.name ): (kInvalidParameter): No element at given index
Ornatrix Error: Assert failed (5): fnMesh.assignUVs( textureChannelAfterEditing.uvCounts, textureChannelAfterEditing.uvIds, &textureChannelAfterEditing.name ): (kInvalidParameter): No element at given index
Ornatrix Error: Assert failed (6): fnMesh.assignUVs( textureChannelAfterEditing.uvCounts, textureChannelAfterEditing.uvIds, &textureChannelAfterEditing.name ): (kInvalidParameter): No element at given index
Ornatrix Error: Assert failed (7): fnMesh.assignUVs( textureChannelAfterEditing.uvCounts, textureChannelAfterEditing.uvIds, &textureChannelAfterEditing.name ): (kInvalidParameter): No element at given index
Ornatrix Error: Assert failed (8): fnMesh.assignUVs( textureChannelAfterEditing.uvCounts, textureChannelAfterEditing.uvIds, &textureChannelAfterEditing.name ): (kInvalidParameter): No element at given index
Ornatrix Error: Assert failed (9): fnMesh.assignUVs( textureChannelAfterEditing.uvCounts, textureChannelAfterEditing.uvIds, &textureChannelAfterEditing.name ): (kInvalidParameter): No element at given index

i confirmed that the mel file is in the place its looking for... see image

 and here is what is in our mod file

 

+ MAYAVERSION:2017 Ornatrix 1.2.3.10960 ./
plug-ins: 2017
[r] scripts: scripts
PATH +:= bin
PYTHONPATH +:= bin
MTOA_EXTENSIONS_PATH := 2017/extensions
ORNATRIX_ARNOLD_PROCEDURAL_PATH := 2017/procedurals/OrnatrixProcedural.dll
ORNATRIX_MAYA_GROOMS_DIR := Grooms

 also attached is how the files exist on disk


Attached Files:
Image 1Image 2

it appears to be erroring out on "createTextureAtlas"

 OxDimPerMappingChannelControls // Error: file: //disks/nas0/pipeline/plugins/windows/maya/2017/ornatrix/ornatrix/scripts/AETemplates/AEMeshFromStrandsNodeTemplate.mel line 324: Object 'createTextureAtlas' not found. // OxDimPerMappingChannelControls

doing a whatIs on createTextureAtlas returns "unknown"


Attached Files:
Image 1

I've added additional variables to our env... hoping is a configuration issue....

MAYA_CUSTOM_TEMPLATE_PATH +:= scripts/AETemplates
MAYA_SCRIPT_PATH+:=scripts

Additionally doing a search for 'createTextureAtlas' returns the following?

Search "createTextureAtlas" (16 hits in 2 files)
O:\pipeline\plugins\windows\maya\2017\ornatrix\ornatrix\2017\Ornatrix.mll (3 hits)
Line 30561:
Line 30561:
Line 30561:
O:\pipeline\plugins\windows\maya\2017\ornatrix\ornatrix\scripts\AETemplates\AEMeshFromStrandsNodeTemplate.mel (13 hits)
Line 26: editorTemplate -callCustom "OxBuildCreateTextureAtlasCheckbox" "OxUpdateCreateTextureAtlasCheckbox" "createTextureAtlas";
Line 26: editorTemplate -callCustom "OxBuildCreateTextureAtlasCheckbox" "OxUpdateCreateTextureAtlasCheckbox" "createTextureAtlas";
Line 26: editorTemplate -callCustom "OxBuildCreateTextureAtlasCheckbox" "OxUpdateCreateTextureAtlasCheckbox" "createTextureAtlas";
Line 324: checkBoxGrp -edit -enable ( $usePerStrandMapping && $isUsingPerVertexMapping ) createTextureAtlas;
Line 345: global proc OxBuildCreateTextureAtlasCheckbox( string $attrName )
Line 347: checkBoxGrp -label1 "Create Texture Atlas" -ann "When on, each strand will have its own UV island in the texture coordinate space. This allows for having unique texture for each strand." createTextureAtlas;
Line 348: OxUpdateCreateTextureAtlasCheckbox( $attrName );
Line 351: global proc OxUpdateCreateTextureAtlasCheckbox( string $attrName )
Line 354: int $value = OxGetSelectedMapIntArrayAttribute( $nodeName, "createTextureAtlas" );
Line 355: checkBoxGrp -edit -value1 $value -onCommand ( "OxSetSelectedMapIntArrayAttribute " + $nodeName + " \"createTextureAtlas\" 1" ) -offCommand ( "OxSetSelectedMapIntArrayAttribute " + $nodeName + " \"createTextureAtlas\" 0" ) createTextureAtlas;
Line 355: checkBoxGrp -edit -value1 $value -onCommand ( "OxSetSelectedMapIntArrayAttribute " + $nodeName + " \"createTextureAtlas\" 1" ) -offCommand ( "OxSetSelectedMapIntArrayAttribute " + $nodeName + " \"createTextureAtlas\" 0" ) createTextureAtlas;
Line 355: checkBoxGrp -edit -value1 $value -onCommand ( "OxSetSelectedMapIntArrayAttribute " + $nodeName + " \"createTextureAtlas\" 1" ) -offCommand ( "OxSetSelectedMapIntArrayAttribute " + $nodeName + " \"createTextureAtlas\" 0" ) createTextureAtlas;
Line 361: OxUpdateCreateTextureAtlasCheckbox( $attrName );

hey guys i'm really at a loss... this is with build 1.2.4.11100

here is a debug log and an image from the UV process.  These error is clearly looking for something on D:\TeamCity\buildAgent\work\cdf694efa24c5eef\Ephere\Plugins\Autodesk\Maya\Ornatrix\Private\TriangleMeshAccess.cpp(808):

obvisusly this is not on my machine and feels like some sort of compile error.  I can't imagaine other people not having this problem?  anyone?

 

setAttr "MeshFromStrandsNode1.mapChannelCount" 2;

// Ornatrix: MeshFromStrandsNode::computeOutputMesh starts //

// Error: Ornatrix: D:\TeamCity\buildAgent\work\cdf694efa24c5eef\Ephere\Plugins\Autodesk\Maya\Ornatrix\Private\TriangleMeshAccess.cpp(808): Assert failed: fnMesh.assignUVs( textureChannelAfterEditing.uvCounts, textureChannelAfterEditing.uvIds, &textureChannelAfterEditing.name ): (kInvalidParameter): No element at given index

Stack trace:

initephere_ornatrix

initephere_ornatrix

initephere_ornatrix

initephere_ornatrix

initephere_ornatrix

uninitializePlugin

uninitializePlugin

initephere_ornatrix

initephere_ornatrix

THdependNode::computePlug

TdependNode::dbEvaluate

TdependNode::mpSafeDbEvaluate

TdependNode::processEval

TfastTrack::debugMe

Tplug::evalConnectionValue

Tplug::evaluateValue

TdataBlockDG::value

TmeshShape::computeObject

TdependNode::dbEvaluate

TdagObject::dbEvaluate

TdependNode::mpSafeDbEvaluateWithSet

Tplug::processEval

Tplug::evaluateValue

TdataBlockDG::value

TmeshShape::meshGeomDataRef

TmeshShape::boundingBox

TfrustumCullTraversal::cull

TfrustumCullTraversal::traverse

TfrustumCullTraversal::traverseChildren

TdrawTraversal::processThisObject

TdrawTraversal::processObject

TfrustumCullTraversal::cull

TfrustumCullTraversal::traverse

TfrustumCullTraversal::traverseChildren

TdrawTraversal::processThisObject

TdrawTraversal::processObject

TfrustumCullTraversal::cull

TfrustumCullTraversal::traverse

TfrustumCullTraversal::traverseDag

TdrawTraversal::traverseView

//

// Ornatrix: MeshFromStrandsNode::computeOutputMesh end //

// Error: file: //disks/nas0/pipeline/plugins/windows/maya/2017/ornatrix/ornatrix/scripts/AETemplates/AEMeshFromStrandsNodeTemplate.mel line 307: Object is not a child: //

setAttr "MeshFromStrandsNode1.mapChannelCount" 1;

// Ornatrix: MeshFromStrandsNode::computeOutputMesh starts //

// Error: Ornatrix: D:\TeamCity\buildAgent\work\cdf694efa24c5eef\Ephere\Plugins\Autodesk\Maya\Ornatrix\Private\TriangleMeshAccess.cpp(808): Assert failed (2): fnMesh.assignUVs( textureChannelAfterEditing.uvCounts, textureChannelAfterEditing.uvIds, &textureChannelAfterEditing.name ): (kInvalidParameter): No element at given index //

// Ornatrix: MeshFromStrandsNode::computeOutputMesh end //

setAttr "MeshFromStrandsNode1.mapChannelCount" 2;

// Ornatrix: MeshFromStrandsNode::computeOutputMesh starts //

// Error: Ornatrix: D:\TeamCity\buildAgent\work\cdf694efa24c5eef\Ephere\Plugins\Autodesk\Maya\Ornatrix\Private\TriangleMeshAccess.cpp(808): Assert failed (3): fnMesh.assignUVs( textureChannelAfterEditing.uvCounts, textureChannelAfterEditing.uvIds, &textureChannelAfterEditing.name ): (kInvalidParameter): No element at given index //

// Ornatrix: MeshFromStrandsNode::computeOutputMesh end //

setAttr -type Int32Array MeshFromStrandsNode1.usePerStrandMapping 2 0 0 ;

OxDimPerMappingChannelControls

// Ornatrix: MeshFromStrandsNode::computeOutputMesh starts //

// Error: Ornatrix: D:\TeamCity\buildAgent\work\cdf694efa24c5eef\Ephere\Plugins\Autodesk\Maya\Ornatrix\Private\TriangleMeshAccess.cpp(808): Assert failed (4): fnMesh.assignUVs( textureChannelAfterEditing.uvCounts, textureChannelAfterEditing.uvIds, &textureChannelAfterEditing.name ): (kInvalidParameter): No element at given index //

// Ornatrix: MeshFromStrandsNode::computeOutputMesh end //

setAttr -type Int32Array MeshFromStrandsNode1.createTextureAtlas 2 0 0 ;

// Ornatrix: MeshFromStrandsNode::computeOutputMesh starts //

// Error: Ornatrix: D:\TeamCity\buildAgent\work\cdf694efa24c5eef\Ephere\Plugins\Autodesk\Maya\Ornatrix\Private\TriangleMeshAccess.cpp(808): Assert failed (5): fnMesh.assignUVs( textureChannelAfterEditing.uvCounts, textureChannelAfterEditing.uvIds, &textureChannelAfterEditing.name ): (kInvalidParameter): No element at given index //

// Ornatrix: MeshFromStrandsNode::computeOutputMesh end //

setAttr -type Int32Array MeshFromStrandsNode1.oneTextureIslandPerStrandGroup 2 0 0 ;

// Ornatrix: MeshFromStrandsNode::computeOutputMesh starts //

// Error: Ornatrix: D:\TeamCity\buildAgent\work\cdf694efa24c5eef\Ephere\Plugins\Autodesk\Maya\Ornatrix\Private\TriangleMeshAccess.cpp(808): Assert failed (6): fnMesh.assignUVs( textureChannelAfterEditing.uvCounts, textureChannelAfterEditing.uvIds, &textureChannelAfterEditing.name ): (kInvalidParameter): No element at given index //

// Ornatrix: MeshFromStrandsNode::computeOutputMesh end //

// Ornatrix: NotifyRenderingScene: true //

// Ornatrix: MeshFromStrandsNode::computeOutputMesh starts //

// Ornatrix: HairFromGuidesNode::ComputeOutputHair starts //

// Ornatrix: Cleared render hair cache //

// Ornatrix: HairFromGuidesNode::ComputeOutputHair ends, vertices: 19080 //

// Error: Ornatrix: D:\TeamCity\buildAgent\work\cdf694efa24c5eef\Ephere\Plugins\Autodesk\Maya\Ornatrix\Private\TriangleMeshAccess.cpp(808): Assert failed (7): fnMesh.assignUVs( textureChannelAfterEditing.uvCounts, textureChannelAfterEditing.uvIds, &textureChannelAfterEditing.name ): (kInvalidParameter): No element at given index //

// Ornatrix: MeshFromStrandsNode::computeOutputMesh end //

// Ornatrix: NotifyRenderingScene: false //

// Ornatrix: MeshFromStrandsNode::computeOutputMesh starts //

// Ornatrix: HairFromGuidesNode::ComputeOutputHair starts //

// Ornatrix: Cleared render hair cache //

// Ornatrix: HairFromGuidesNode::ComputeOutputHair ends, vertices: 9590 //

// Error: Ornatrix: D:\TeamCity\buildAgent\work\cdf694efa24c5eef\Ephere\Plugins\Autodesk\Maya\Ornatrix\Private\TriangleMeshAccess.cpp(808): Assert failed (8): fnMesh.assignUVs( textureChannelAfterEditing.uvCounts, textureChannelAfterEditing.uvIds, &textureChannelAfterEditing.name ): (kInvalidParameter): No element at given index //

// Ornatrix: MeshFromStrandsNode::computeOutputMesh end //

select -r OxHairSystem1 ;

// Ornatrix: NotifyRenderingScene: true //

// Ornatrix: MeshFromStrandsNode::computeOutputMesh starts //

// Ornatrix: HairFromGuidesNode::ComputeOutputHair starts //

// Ornatrix: Cleared render hair cache //

// Ornatrix: HairFromGuidesNode::ComputeOutputHair ends, vertices: 19080 //

// Error: Ornatrix: D:\TeamCity\buildAgent\work\cdf694efa24c5eef\Ephere\Plugins\Autodesk\Maya\Ornatrix\Private\TriangleMeshAccess.cpp(808): Assert failed (9): fnMesh.assignUVs( textureChannelAfterEditing.uvCounts, textureChannelAfterEditing.uvIds, &textureChannelAfterEditing.name ): (kInvalidParameter): No element at given index //

// Ornatrix: MeshFromStrandsNode::computeOutputMesh end //

// Ornatrix: NotifyRenderingScene: false //

// Ornatrix: MeshFromStrandsNode::computeOutputMesh starts //

// Ornatrix: HairFromGuidesNode::ComputeOutputHair starts //

// Ornatrix: Cleared render hair cache //

// Ornatrix: HairFromGuidesNode::ComputeOutputHair ends, vertices: 9590 //

// Ornatrix: MeshFromStrandsNode::computeOutputMesh end //

// Ornatrix: NotifyRenderingScene: true //

// Ornatrix: MeshFromStrandsNode::computeOutputMesh starts //

// Ornatrix: HairFromGuidesNode::ComputeOutputHair starts //

// Ornatrix: Cleared render hair cache //

// Ornatrix: HairFromGuidesNode::ComputeOutputHair ends, vertices: 19080 //

// Ornatrix: MeshFromStrandsNode::computeOutputMesh end //

// Ornatrix: NotifyRenderingScene: false //

// Ornatrix: MeshFromStrandsNode::computeOutputMesh starts //

// Ornatrix: HairFromGuidesNode::ComputeOutputHair starts //

// Ornatrix: Cleared render hair cache //

// Ornatrix: HairFromGuidesNode::ComputeOutputHair ends, vertices: 9590 //

// Ornatrix: MeshFromStrandsNode::computeOutputMesh end //

 


Attached Files:
Image 1

Hey Andy,

Has been difficult for me to reproduce the issue you are having with the UVs, I even tried with different VRay versions just in case. Would be possible for you to provide us the scene where you are having this issue? We can help you better if we can work in the same environment. You can send the scene to: Jeordanis.f@ephere.com

Jeordanis Figuereo (Product Designer. EPHERE Inc.)

Our system configuration, vray version, and module configuration are all included in this thread. We run the plugin off the network vs a local installation. Additionally we are using maya 2017 update 3 and the file is literally a clean scene with a default sphere.

if you like maybe I can talk to engineering to see if there is a secure way to access and troubleshoot but we will have to take that conversation offline.

thanks for your continued efforts.

Andy

Hi Andy,

I tried to playback the script you posted in #13154. I fixed the "createTextureAtlas" error, I attach the fixed script which you can replace (until you install build 11139 or later). But this is most likely not related to the other problem.

Your script seems to be missing some commands, or maybe they didn't get recorded properly. You have added MeshFromStrands and Rotate nodes, but these commands are not found in the script, and I don't know where in the stack did they go. Also, seems like you rendered several times and changed a few parameters until you got the error.

In any case, getting your scene, as simple as it is, will make it easier for us to track.

We could just disable that assert so it doesn't crash, but most likely the hair will get wrong UVs.


Attached Files:

>AEMeshFromStrandsNodeTemplate.mel (25927 bytes),

Ivan Kolev (Software Developer, EPHERE Inc.)

E-mail: ivan.kolev at ephere dot com

Discord: ikolev

Thanks, I'll send you a script and send a more simple log.  I am using the feather preset and thats it.  The render test was checking to see if the texture cooridnates worked or not. 

ill sendyou guys more info on Monday. Enjoy your Sunday 

thanks Andy

Marcel,  I am emailing you directly the logs and the maya file.

thanks

Andy

the fix you mentioned last nigh works! thank you a million!

whew.... :)

 

Andy

Glad it worked :)

Marsel Khadiyev (Software Developer, EPHERE Inc.)