Size: a a a

🎄.NET Talks: Evergreen🎄

2020 February 04

B

Boris in 🎄.NET Talks: Evergreen🎄
Суть изначальной затеи в том чтобы использовать это в ECS. Если все компоненты сделать struct, то точно ни один долбоеб в них ничего не запишет + можно выбрать все простые одинаковые компоненты и проитерироваться через них быстрее, оптимизация 👍
источник

V

Vabka in 🎄.NET Talks: Evergreen🎄
Boris
Суть изначальной затеи в том чтобы использовать это в ECS. Если все компоненты сделать struct, то точно ни один долбоеб в них ничего не запишет + можно выбрать все простые одинаковые компоненты и проитерироваться через них быстрее, оптимизация 👍
Ну так сделай readonly struct и не мучайся
источник

V

Vabka in 🎄.NET Talks: Evergreen🎄
А вместе ссылки передавай индекс
источник

V

Vabka in 🎄.NET Talks: Evergreen🎄
Профит
источник

B

Boris in 🎄.NET Talks: Evergreen🎄
И каждый раз его перезаписывать?
источник

B

Boris in 🎄.NET Talks: Evergreen🎄
Ну в целом тоже вариант
источник

V

Vabka in 🎄.NET Talks: Evergreen🎄
Либо сделай обёртку, которая будет прятать под собой ссылку на массив / спан с индексом и возвращай её
источник

V

Vabka in 🎄.NET Talks: Evergreen🎄
Boris
И каждый раз его перезаписывать?
Ну тогда обычный стракт
источник

V

Vabka in 🎄.NET Talks: Evergreen🎄
Ты же сам сказал что не хочешь, чтобы тебе туда записывали ничего
источник

V

Vabka in 🎄.NET Talks: Evergreen🎄
Но вариант с акцессором тоже норм выглядит
источник

V

Vabka in 🎄.NET Talks: Evergreen🎄
Я где-то видел такой вариант, который специально для ECS и задумывался, чтобы все данные однородные рядом хранились
источник

B

Boris in 🎄.NET Talks: Evergreen🎄
Vabka
Ты же сам сказал что не хочешь, чтобы тебе туда записывали ничего
Хочу. Если бы не хотел, но в моем коде можно было бы просто стереть ref и радоваться
источник

Dv

Dr. Friedrich von Never in 🎄.NET Talks: Evergreen🎄
О, смарите, у меня вышло
источник

Dv

Dr. Friedrich von Never in 🎄.NET Talks: Evergreen🎄
источник

V

Vabka in 🎄.NET Talks: Evergreen🎄
Boris
Хочу. Если бы не хотел, но в моем коде можно было бы просто стереть ref и радоваться
Ожидай через 35 минут красивый вариант
источник

Dv

Dr. Friedrich von Never in 🎄.NET Talks: Evergreen🎄
Всего лишь ref Unsafe.As<object, MyStruct>(ref _objects[index])
источник

V

Vabka in 🎄.NET Talks: Evergreen🎄
Только эти ваши боксинги анбоксинги весь профит сожрут
источник

Dv

Dr. Friedrich von Never in 🎄.NET Talks: Evergreen🎄
Vabka
Только эти ваши боксинги анбоксинги весь профит сожрут
Ты щас будешь яросте
источник

Dv

Dr. Friedrich von Never in 🎄.NET Talks: Evergreen🎄
Но в этом коде ни одного анбоксинга
источник

Dv

Dr. Friedrich von Never in 🎄.NET Talks: Evergreen🎄
Ну, в смысле, там структура тупо в памяти лежит, и всё
источник