In my understanding a controller is tightly bound to a view (or
partial i.e your html). You shouldn't call controller function from
the outside of its own view.
The easy way to share the same object between different views (html
sections) is to define your own $service which then holds YOUR
EDITABLE object and getObject, setObject methods.
Then you can inject this $service to your edit view (your inspector
panel). getObject inside the controller, change whatever you need to
change and then commit back to $serive via setObject.
The same $service could be used to to another view (your game html) to
get the modified object.
I'm not sure this is the correct way to do this but this is how I
would do it (IMO if it works, its correct).
There are discussions on this group regarding how to do the inter-
controller communication but to the best of my knowledge angular right
now doesn't define a STANDARDIZED way to do that.