I've tested the code. It yields the same result because
view.DXScene.RootNode ?? view.DXScene.MasterDXScene.RootNode
and
var dxScene = view.DXScene.RootNode != null ? view.DXScene : view.DXScene.MasterDXScene;
SceneNode rootNode = dxScene.RootNode;
are equivalent.
To provide more information, I use multiple scene views that share rendering steps. That results in only one scene (the master scene) having a root node which implies that the nodes are there only once. If I check the rootNode, the children are there (even those that I want to check). When I swap to single view (and only one scene) the result is the same. The object is not tested (or is rejected for some reason).
Just to be sure I've checked if the root node belongs to the scene and it does.
view.DXScene.RootNode ?? view.DXScene.MasterDXScene.RootNode
and
var dxScene = view.DXScene.RootNode != null ? view.DXScene : view.DXScene.MasterDXScene;
SceneNode rootNode = dxScene.RootNode;
are equivalent.
To provide more information, I use multiple scene views that share rendering steps. That results in only one scene (the master scene) having a root node which implies that the nodes are there only once. If I check the rootNode, the children are there (even those that I want to check). When I swap to single view (and only one scene) the result is the same. The object is not tested (or is rejected for some reason).
Just to be sure I've checked if the root node belongs to the scene and it does.

