+void Node::SetPropertyDirty( bool value )
+{
+ mPropertyDirty = value;
+
+ const NodeIter endIter = mChildren.End();
+ for ( NodeIter iter = mChildren.Begin(); iter != endIter; ++iter )
+ {
+ Node* current = *iter;
+ current->SetPropertyDirty( value );
+ }
+}
+
+bool Node::IsPropertyDirty() const
+{
+ for( auto&& existingRenderer : mRenderer )
+ {
+ if( existingRenderer->IsDirty() )
+ {
+ return true;
+ }
+ }
+
+ return mPropertyDirty;
+}
+