Greetings! I have a project with 100+ layers of various types in a 3D scene, and am running into several-second delays when the API performs a hit test (ex. when I want to click on a Feature and view the Popup). It eventually succeeds, but it is much too slow to be of any use. Upon inspection via Chrome Performance panel in Dev Tools, it looks like the call to "e._populateLayerViewsOwners" sets one or more properties on each layer, which in turn throws Accessor's "propertyCommitted, and in turn propertyInvalidated. This is done for each layerView at least, possibly multiple times, and results in a deep call tree and lots of array splicing. I'm not sure what this is doing, or if it is necessary, but it certainly is slow!
I have attached the Chrome performance profile, in case that might help.
For reference, the machine I'm testing on has the following specs:
Intel Core i7-8700K (6 cores @ 3.7Ghz base speed)
32GB 2400 MHz RAM
NVIDIA GeForce GTX 1080 Ti
Steve,
If your scene has that many layer it makes sense that it would take a little while. Each layer would have to be queried to see if the click location intersects a feature in that layer either client side or serverside.