Публикации по теме 'english-articles'


[Unity ECS] Обеспечение большего параллелизма и производительности с помощью BarrierSystem и EntityCommandBuffer
Вы можете думать о EntityCommandBuffer / EntityCommandBuffer.Concurrent как об инструменте, позволяющем избежать ограничений на то, что вы можете делать на работе. В основном, в работе вы не можете использовать EntityManager , потому что это вызывает структурные изменения, поэтому вы откладываете действие на потом, которое произойдет в BarrierSystem . Но я только что открыл с ними крутые трюки. Представьте, что у вас есть 6 * почти * не связанных заданий в одной системе, и все..

[Unity ECS] Проблемы с EndFrameBarrier
В ECS вы не должны жестко указывать позицию обновления системы, но вы должны настроить систему таким образом, чтобы она «оказалась» на 100% в правильном месте, независимо от окончательного порядка. Предположим, что вы разрабатываете DestroyPacketSystem . Намерение состоит в том, чтобы очистить все куски, которые содержат Packet компонент в каждом кадре, чтобы в следующем кадре никто не мог использовать его второй раз. Дизайн может быть DestroyPacketSystem поставили команды..

[Unity ECS] Unity.Mathematics против Mathf.
Unity Mathf не на 100% заменяет его дружественный к взрыву Unity.Mathematics . Также Unity.Mathematics постоянно развивается. К настоящему моменту, когда вы читаете это, что-то могло измениться. Quaternion доступен для использования в рабочих местах quaternion введите его маленькими q вот так. Это в Unity.Mathematics Отличие LookRotation Это результат того же ввода: Quaternion.LookRotation (с Vector3) Look (-1.6, 61.3, 162.4) Up (0.5, -0.9, 0.0) QuatWXYZ..

[Unity Addressables] Общие сведения об «объектах инициализации»
Новое в 0.4.0, «Объекты инициализации» Addressables заключается не в том, что вы можете получить объект при запуске, это не в том, что вы можете загрузить какой-либо адрес актива сразу при запуске. Смысл в том, что при инициализации необходимо что-то сделать на основе содержимого вашего ScriptableObject «объекта инициализации», который вы можете сериализовать в проекте и настроить для изменения поведения во время выполнения. Ключевой момент здесь, при инициализации. Существует..

[Unity ECS] Создайте абстрактный класс с дженериками, которые влияют на объявление структуры вставки.
Из предыдущей темы группа должна быть прочитана только в том случае, если я хочу организовать свой код вокруг struct + interface и у меня не может быть никаких записываемых данных внутри моей группы ввода. Но не все надежды потеряны, мы все еще можем сделать абстрактный класс вместо интерфейсов с хорошими функциями… начнем с текущего дизайна. Как обобщить этот JobComponentSystem , чтобы его можно было повторно использовать позже? Я сделал 2 абстрактных класса, которые..

[Unity ECS] Проблемы модульного тестирования с ECS
Концепция ECS очень хорошо подходит для модульного тестирования, поскольку вы можете буквально «создать экземпляр логики», передать какие-то данные в мир и заставить его работать. Но это когда уже работает. На этом пути есть проблемы. В модульном тесте нет активного мира по умолчанию. World.Active будет исключением нулевой ссылки. Мне нужно создать подкласс, чтобы позволить [SetUp] и [TearDown] пройти все тесты. Обратите внимание, что [TearDown] и dispose на [SetUp]..

[Unity ECS] Структура данных Chunk
Недавно я занялся сериализацией ECS, которая сериализует структуру Chunk очень простым способом. По пути я узнал об этом, что я хотел бы резюмировать здесь. В настоящее время все основано на предварительной версии 21. Приближается возможность выбора размера фрагмента, и это изменит ситуацию. Структура фрагмента Обратите внимание на комментарий X | Y . Это смещение до конца этого поля в зависимости от архитектуры. (64 | 32 бит) UnsafeLinkedListNode Каждый из них..