Я читал об утилизации объектов, а именно: flixel. Статья, которую я читал, - here, в случае, если вам было интересно, как и я.Является ли утилизация объектов правдоподобной для каркасов модели сущностей-компонентов
Я начал думать о том, как я мог бы интегрировать подобную систему в мою инфраструктуру на основе сущностей, EntityEngine. Я не уверен, что это обязательно правдоподобно, интегрируя его так, как это делает flixel, похоже, не влияет на частоту кадров, использование процессора/пэпа и т. Д. Я почти уверен, что это связано с фактом что каждый Entity
является HashSet<Component>
.
Путь flixel обрабатывает рециркуляцию объекта, каждый объект имеет определенный набор полей, то, что сущность не имеет, по дизайну. Когда объект «уничтожен», он не удаляется из базового массива, но сохраняется и переключается, чтобы позволить структуре знать, что этот объект может быть перезаписан и больше не должен обновляться и рисоваться. Тем не менее, я уверен, что унаследованная коллекция является проблемой здесь.
Итак, вопрос в том, могу ли я использовать рециркуляцию объектов для улучшения использования частоты кадров/процессора или, мне не повезло?
EDIT: Я использую .Net 4 с обновлением XNA 4.
В каких рамках вы работаете? Обычный или XNA? –
@ Хенк XNA, я подумал, что это не имеет значения, но, оглядываясь назад, я должен был упомянуть об этом, я отредактирую вопрос, чтобы отразить информацию. – redcodefinal
Это очень важно. XNA очень отличается от регарс к памяти. –