1
0
mirror of https://github.com/godotengine/godot.git synced 2025-11-04 12:00:25 +00:00

Core: Add dedicated BitField template

This commit is contained in:
Thaddeus Crews
2024-08-20 09:50:44 -05:00
parent 7b9c5122fa
commit 0d267e7b1e
46 changed files with 188 additions and 155 deletions

View File

@@ -170,7 +170,7 @@ private:
int current = 0;
uint32_t block_size = 0;
uint64_t max_size = 0;
BitField<RDD::BufferUsageBits> usage_bits;
BitField<RDD::BufferUsageBits> usage_bits = {};
bool used = false;
};
@@ -184,7 +184,7 @@ private:
struct Buffer {
RDD::BufferID driver_id;
uint32_t size = 0;
BitField<RDD::BufferUsageBits> usage;
BitField<RDD::BufferUsageBits> usage = {};
RDG::ResourceTracker *draw_tracker = nullptr;
int32_t transfer_worker_index = -1;
uint64_t transfer_worker_operation = 0;
@@ -315,8 +315,8 @@ public:
bool is_discardable = false;
bool has_initial_data = false;
BitField<RDD::TextureAspectBits> read_aspect_flags;
BitField<RDD::TextureAspectBits> barrier_aspect_flags;
BitField<RDD::TextureAspectBits> read_aspect_flags = {};
BitField<RDD::TextureAspectBits> barrier_aspect_flags = {};
bool bound = false; // Bound to framebuffer.
RID owner;
@@ -872,7 +872,7 @@ private:
String name; // Used for debug.
RDD::ShaderID driver_id;
uint32_t layout_hash = 0;
BitField<RDD::PipelineStageBits> stage_bits;
BitField<RDD::PipelineStageBits> stage_bits = {};
Vector<uint32_t> set_formats;
};
@@ -1149,7 +1149,7 @@ private:
uint32_t shader_layout_hash = 0;
Vector<uint32_t> set_formats;
RDD::PipelineID driver_id;
BitField<RDD::PipelineStageBits> stage_bits;
BitField<RDD::PipelineStageBits> stage_bits = {};
uint32_t push_constant_size = 0;
};