Вы все равно должны иметь связь между графическим объектом и игровыми объектами.Потому что в противном случае вы не сможете перевести пользовательское событие, например щелчок мыши, из сцены в логику.
Поэтому я бы посоветовал установить связь между вашей моделью и видом.И, ИМХО, не путем создания идеального MVC с сокрытием одного от другого, так как это добавит слишком много хлопот на начальной стадии разработки.Простое добавление ссылки на графический объект (или, лучше, интерфейс с действиями, которые вы хотите выполнять с графикой) к игровому объекту должно работать для вас.
Это может выглядеть следующим образом:
interface UnitView {
void add(Point position);
void move(Point position);
void remove(Point position);
void setOnClick(Runnable callback);
}
class GlUnit implements UnitView extends GLSceneObjectOrWhateverItCalled {
//this class implements all drawin and animation; and handles calls from model
//through UnitView interface
}
class Unit {
void setView(UnitView view); // this method is called by manager which generated scene
// here is your implementation of unit logic
}