Unravel Engine C++ Reference
Loading...
Searching...
No Matches
particle_gpu_schema.h File Reference
#include "particle_types.h"
#include <cstdint>

Go to the source code of this file.

Classes

struct  unravel::ps_soa::gpu_sim_particle
 Packed sim particle for compute (80 bytes / 5 x vec4). More...
 
struct  unravel::ps_soa::gpu_pack_uniforms
 Uniform vec4 packing for compute (set as float[4] arrays). More...
 

Namespaces

namespace  unravel
 
namespace  unravel::ps_soa
 

Enumerations

enum class  unravel::ps_soa::particle_sim_backend : uint8_t { unravel::ps_soa::cpu = 0 , unravel::ps_soa::gpu = 1 }
 Selects CPU vs resident-GPU simulation backend. More...
 

Functions

auto unravel::ps_soa::gpu_feature_mask (emitter_feature features) -> uint32_t
 

Variables

constexpr uint16_t unravel::ps_soa::k_gpu_instance_stride = 96
 GPU instance row matches vs_particle_instanced i_data0..i_data5 (96 bytes).
 
constexpr uint32_t unravel::ps_soa::k_gpu_instance_floats = k_gpu_instance_stride / sizeof(float)
 
constexpr uint32_t unravel::ps_soa::k_gpu_sim_floats_per_particle = 20
 
constexpr uint32_t unravel::ps_soa::k_gpu_sim_vec4s_per_particle = 5
 
constexpr uint32_t unravel::ps_soa::k_gpu_lut_size = 256
 
constexpr uint32_t unravel::ps_soa::k_gpu_cs_threads = 64