RealityKit использует класс и структуру для компонента в ECS (Entity-Component-System)IOS

Программируем под IOS
Anonymous
RealityKit использует класс и структуру для компонента в ECS (Entity-Component-System)

Сообщение Anonymous »

Я заметил, что компоненты Apple обычно представляют собой структуры, а не классы. Иногда, даже если ему нужны ссылки на большие общие ресурсы, он все равно использует структуру для хранения ссылки на класс.
Например, ModelComponent — это структура, и она содержит MeshResource, который представляет собой класс, содержащий данные сетки (например, вершины, нормали, текстуры).
Я создаю систему действий, которая перемещает объект каждый кадр (аналогично Действия SceneKit/SpriteKit). Моя текущая реализация использует такую ​​структуру:

Код: Выделить всё

struct RLActionComponent: Component {

private var states: [RLActionState] = []

@MainActor
mutating func step(delta: TimeInterval, entity: Entity, result: inout RLActionStepResult) {

var states = self.states
.sorted { $0.creationID < $1.creationID }

var indicesToRemove = [Int]()
for i in 0..

Подробнее здесь: [url]https://stackoverflow.com/questions/79790793/realitykit-use-class-vs-struct-for-the-component-in-ecs-entity-component-system[/url]

Вернуться в «IOS»