home.social

#aos — Public Fediverse posts

Live and recent posts from across the Fediverse tagged #aos, aggregated by home.social.

  1. ECS with Sectors (ECSS) — структура памяти в моей ECS

    Всем привет! Это продолжение статьи про мою ECS в моём движке Stellar Forge, и сегодня я хочу поднять тему архитектуры и немного более подробно раскрыть data oriented design в контексте ECS. Первую часть можно найти здесь - habr.com/ru/articles/972708/ . Итак, ECSS - Entity Component System with Sectors. В прошлой статье я описал что такое ECS и как его можно приготовить, а сегодня я расскажу вам в чем особенность моей ECS, что такое Sector, как эти секторы хранятся в памяти и что делает мою ECS такой быстрой. Ранее я показывал эволюционное появление ECS, сейчас не буду отказывать себе в удовольствии продолжить в том же духе. Надеюсь, это поможет читателю пройти весь путь вместе со мной.

    habr.com/ru/articles/974666/

    #dod #cpp #ecs #ecss #soa #aos #game_engine #entity_component_system #memory #cpu

  2. Гибкая ECS с кастомными layout-профилями: как я строил ECSS внутри своего игрового движка

    Всем привет, я делаю свой пет-проект - игровой движок, и какой пет-проект без собственноручно сваренного велосипеда, так я и пришел к идее реализации своей ECS. В этой статье я хочу рассказать простыми словами - что такое ECS, и как он эволюционно появился у меня. Что такое ECS - Entity Component System (Сущность Компонент Система) - архитектура хранения данных, где логика - системы, явно отделена от данных - компонентов, которые объединены одним общим id - сущностью. В двух словах, идея ECS заключается в том, чтобы навести порядок в игровом коде, и игровом мире - выделить все данные игровых объектов(сущностей), и желательно сделать это data-oriented (почему желательно я расскажу ниже). Предположим, у вас в игре есть объект КУБ - квадратный, все стороны равны, все углы равны, классический такой КУБ. У него есть положение в мире (Transform) у него есть его кубический меш (Mesh), он умеет быть отрендеренным (IsRenderable), и, ко всему прочему, он еще и обладает какой-то своей кубической физикой (Physic).

    habr.com/ru/articles/972708/

    #ECS #DOD #soa #aos #разработка_игр #игровой_движок #gamedev #game_engine

  3. Basics of Numerical Weather Prediction (NWP):

    1. THE HORIZONTAL MOMENTUM EQUATION:
    \[
    \frac{d\mathbf{V}}{dt} + f\hat{k} \times \mathbf{V} = -\nabla \phi + \frac{\sigma}{p_s} \frac{\partial \phi}{\partial \sigma} \nabla p_s + \mathbf{F}
    \]

    2. THE CONTINUITY EQUATION:
    \[
    \frac{\partial p_s}{\partial t} + \nabla \cdot (p_s \mathbf{V}) + \frac{\partial}{\partial \sigma}(p_s \dot{\sigma}) = 0
    \]

    3. THE THERMODYNAMIC ENERGY EQUATION:
    \[
    \frac{1}{R} \frac{d}{dt} \left[ \sigma \frac{\partial \phi}{\partial \sigma} \right] + \frac{RT}{C_p p} \left[ p_s \dot{\sigma} + \sigma\dot{p_s} \right] = -Q
    \]

    4. HYDROSTATIC EQUATION:
    \[
    \frac{\partial \phi}{\partial \sigma} = -\frac{RT_v}{\sigma}
    \]

    5. SURFACE PRESSURE TENDENCY EQUATION:
    \[\displaystyle
    \frac{\partial p_s}{\partial t} = -\int_{0}^{1} \nabla\cdot (p_s \mathbf{V}) \, d\sigma
    \]

    6. MOISTURE EQUATION:
    \[\displaystyle
    \frac{\partial}{\partial t} (p_s q) + \nabla\cdot (p_s q \mathbf{V}) + \frac{\partial}{\partial \sigma} (p_s q \dot{\sigma}) = p_s S
    \]

    The six primary unknowns are: \(\mathbf{V}\) (horizontal wind velocity), \(p_s\) (surface pressure), \(T\) (temperature), \(q\) (specific humidity or moisture), \(\phi\) (geopotential), and \(\dot{\sigma}\) (sigma velocity or vertical velocity in \(\sigma\)-coordinates).

    #NWP #Weather #NumericalWeatherPrediction #Meteorology #Climate #ClimateScience #Earth #EarthScience #ClimateChange #ClimateSciences #Science #WeatherPrediction #Humidity #Moisture #Pressure #Velocity #SurfacePressure #HydrostaticEquation #WeatherPrediction #Ocean #Atmosphere #AOS #ClimateDynamics #WeatherDynamics #Geopotential #SigmaVelocity #VerticalVelocity #MoistureEquation #Thermodynamics #Dynamics #NavierStokes

  4. Basics of Numerical Weather Prediction (NWP):

    1. THE HORIZONTAL MOMENTUM EQUATION:
    \[
    \frac{d\mathbf{V}}{dt} + f\hat{k} \times \mathbf{V} = -\nabla \phi + \frac{\sigma}{p_s} \frac{\partial \phi}{\partial \sigma} \nabla p_s + \mathbf{F}
    \]

    2. THE CONTINUITY EQUATION:
    \[
    \frac{\partial p_s}{\partial t} + \nabla \cdot (p_s \mathbf{V}) + \frac{\partial}{\partial \sigma}(p_s \dot{\sigma}) = 0
    \]

    3. THE THERMODYNAMIC ENERGY EQUATION:
    \[
    \frac{1}{R} \frac{d}{dt} \left[ \sigma \frac{\partial \phi}{\partial \sigma} \right] + \frac{RT}{C_p p} \left[ p_s \dot{\sigma} + \sigma\dot{p_s} \right] = -Q
    \]

    4. HYDROSTATIC EQUATION:
    \[
    \frac{\partial \phi}{\partial \sigma} = -\frac{RT_v}{\sigma}
    \]

    5. SURFACE PRESSURE TENDENCY EQUATION:
    \[\displaystyle
    \frac{\partial p_s}{\partial t} = -\int_{0}^{1} \nabla\cdot (p_s \mathbf{V}) \, d\sigma
    \]

    6. MOISTURE EQUATION:
    \[\displaystyle
    \frac{\partial}{\partial t} (p_s q) + \nabla\cdot (p_s q \mathbf{V}) + \frac{\partial}{\partial \sigma} (p_s q \dot{\sigma}) = p_s S
    \]

    The six primary unknowns are: \(\mathbf{V}\) (horizontal wind velocity), \(p_s\) (surface pressure), \(T\) (temperature), \(q\) (specific humidity or moisture), \(\phi\) (geopotential), and \(\dot{\sigma}\) (sigma velocity or vertical velocity in \(\sigma\)-coordinates).

    #NWP #Weather #NumericalWeatherPrediction #Meteorology #Climate #ClimateScience #Earth #EarthScience #ClimateChange #ClimateSciences #Science #WeatherPrediction #Humidity #Moisture #Pressure #Velocity #SurfacePressure #HydrostaticEquation #WeatherPrediction #Ocean #Atmosphere #AOS #ClimateDynamics #WeatherDynamics #Geopotential #SigmaVelocity #VerticalVelocity #MoistureEquation #Thermodynamics #Dynamics #NavierStokes

  5. Basics of Numerical Weather Prediction (NWP):

    1. THE HORIZONTAL MOMENTUM EQUATION:
    \[
    \frac{d\mathbf{V}}{dt} + f\hat{k} \times \mathbf{V} = -\nabla \phi + \frac{\sigma}{p_s} \frac{\partial \phi}{\partial \sigma} \nabla p_s + \mathbf{F}
    \]

    2. THE CONTINUITY EQUATION:
    \[
    \frac{\partial p_s}{\partial t} + \nabla \cdot (p_s \mathbf{V}) + \frac{\partial}{\partial \sigma}(p_s \dot{\sigma}) = 0
    \]

    3. THE THERMODYNAMIC ENERGY EQUATION:
    \[
    \frac{1}{R} \frac{d}{dt} \left[ \sigma \frac{\partial \phi}{\partial \sigma} \right] + \frac{RT}{C_p p} \left[ p_s \dot{\sigma} + \sigma\dot{p_s} \right] = -Q
    \]

    4. HYDROSTATIC EQUATION:
    \[
    \frac{\partial \phi}{\partial \sigma} = -\frac{RT_v}{\sigma}
    \]

    5. SURFACE PRESSURE TENDENCY EQUATION:
    \[\displaystyle
    \frac{\partial p_s}{\partial t} = -\int_{0}^{1} \nabla\cdot (p_s \mathbf{V}) \, d\sigma
    \]

    6. MOISTURE EQUATION:
    \[\displaystyle
    \frac{\partial}{\partial t} (p_s q) + \nabla\cdot (p_s q \mathbf{V}) + \frac{\partial}{\partial \sigma} (p_s q \dot{\sigma}) = p_s S
    \]

    The six primary unknowns are: \(\mathbf{V}\) (horizontal wind velocity), \(p_s\) (surface pressure), \(T\) (temperature), \(q\) (specific humidity or moisture), \(\phi\) (geopotential), and \(\dot{\sigma}\) (sigma velocity or vertical velocity in \(\sigma\)-coordinates).

    #NWP #Weather #NumericalWeatherPrediction #Meteorology #Climate #ClimateScience #Earth #EarthScience #ClimateChange #ClimateSciences #Science #WeatherPrediction #Humidity #Moisture #Pressure #Velocity #SurfacePressure #HydrostaticEquation #WeatherPrediction #Ocean #Atmosphere #AOS #ClimateDynamics #WeatherDynamics #Geopotential #SigmaVelocity #VerticalVelocity #MoistureEquation #Thermodynamics #Dynamics #NavierStokes

  6. Basics of Numerical Weather Prediction (NWP):

    1. THE HORIZONTAL MOMENTUM EQUATION:
    \[
    \frac{d\mathbf{V}}{dt} + f\hat{k} \times \mathbf{V} = -\nabla \phi + \frac{\sigma}{p_s} \frac{\partial \phi}{\partial \sigma} \nabla p_s + \mathbf{F}
    \]

    2. THE CONTINUITY EQUATION:
    \[
    \frac{\partial p_s}{\partial t} + \nabla \cdot (p_s \mathbf{V}) + \frac{\partial}{\partial \sigma}(p_s \dot{\sigma}) = 0
    \]

    3. THE THERMODYNAMIC ENERGY EQUATION:
    \[
    \frac{1}{R} \frac{d}{dt} \left[ \sigma \frac{\partial \phi}{\partial \sigma} \right] + \frac{RT}{C_p p} \left[ p_s \dot{\sigma} + \sigma\dot{p_s} \right] = -Q
    \]

    4. HYDROSTATIC EQUATION:
    \[
    \frac{\partial \phi}{\partial \sigma} = -\frac{RT_v}{\sigma}
    \]

    5. SURFACE PRESSURE TENDENCY EQUATION:
    \[\displaystyle
    \frac{\partial p_s}{\partial t} = -\int_{0}^{1} \nabla\cdot (p_s \mathbf{V}) \, d\sigma
    \]

    6. MOISTURE EQUATION:
    \[\displaystyle
    \frac{\partial}{\partial t} (p_s q) + \nabla\cdot (p_s q \mathbf{V}) + \frac{\partial}{\partial \sigma} (p_s q \dot{\sigma}) = p_s S
    \]

    The six primary unknowns are: \(\mathbf{V}\) (horizontal wind velocity), \(p_s\) (surface pressure), \(T\) (temperature), \(q\) (specific humidity or moisture), \(\phi\) (geopotential), and \(\dot{\sigma}\) (sigma velocity or vertical velocity in \(\sigma\)-coordinates).

    #NWP #Weather #NumericalWeatherPrediction #Meteorology #Climate #ClimateScience #Earth #EarthScience #ClimateChange #ClimateSciences #Science #WeatherPrediction #Humidity #Moisture #Pressure #Velocity #SurfacePressure #HydrostaticEquation #WeatherPrediction #Ocean #Atmosphere #AOS #ClimateDynamics #WeatherDynamics #Geopotential #SigmaVelocity #VerticalVelocity #MoistureEquation #Thermodynamics #Dynamics #NavierStokes