Fix some issues found by cppcheck.
This commit is contained in:
parent
72407a9cfb
commit
f851c4aa33
163 changed files with 776 additions and 767 deletions
|
|
@ -54,7 +54,7 @@ Error AudioDriverDummy::init() {
|
|||
};
|
||||
|
||||
void AudioDriverDummy::thread_func(void *p_udata) {
|
||||
AudioDriverDummy *ad = (AudioDriverDummy *)p_udata;
|
||||
AudioDriverDummy *ad = static_cast<AudioDriverDummy *>(p_udata);
|
||||
|
||||
uint64_t usdelay = (ad->buffer_frames / float(ad->mix_rate)) * 1000000;
|
||||
|
||||
|
|
|
|||
|
|
@ -62,7 +62,7 @@ void AudioEffectRecordInstance::_update_buffer() {
|
|||
}
|
||||
|
||||
void AudioEffectRecordInstance::_update(void *userdata) {
|
||||
AudioEffectRecordInstance *ins = (AudioEffectRecordInstance *)userdata;
|
||||
AudioEffectRecordInstance *ins = static_cast<AudioEffectRecordInstance *>(userdata);
|
||||
ins->_update_buffer();
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -96,7 +96,7 @@ class GodotArea2D : public GodotCollisionObject2D {
|
|||
|
||||
Set<GodotConstraint2D *> constraints;
|
||||
|
||||
virtual void _shapes_changed();
|
||||
virtual void _shapes_changed() override;
|
||||
void _queue_monitor_update();
|
||||
|
||||
void _set_space_override_mode(PhysicsServer2D::AreaSpaceOverrideMode &r_mode, PhysicsServer2D::AreaSpaceOverrideMode p_new_mode);
|
||||
|
|
@ -151,7 +151,7 @@ public:
|
|||
|
||||
void set_transform(const Transform2D &p_transform);
|
||||
|
||||
void set_space(GodotSpace2D *p_space);
|
||||
void set_space(GodotSpace2D *p_space) override;
|
||||
|
||||
void call_queries();
|
||||
|
||||
|
|
|
|||
|
|
@ -103,7 +103,7 @@ class GodotBody2D : public GodotCollisionObject2D {
|
|||
bool can_sleep = true;
|
||||
bool first_time_kinematic = false;
|
||||
void _mass_properties_changed();
|
||||
virtual void _shapes_changed();
|
||||
virtual void _shapes_changed() override;
|
||||
Transform2D new_transform;
|
||||
|
||||
List<Pair<GodotConstraint2D *, int>> constraint_list;
|
||||
|
|
@ -302,7 +302,7 @@ public:
|
|||
_FORCE_INLINE_ void set_continuous_collision_detection_mode(PhysicsServer2D::CCDMode p_mode) { continuous_cd_mode = p_mode; }
|
||||
_FORCE_INLINE_ PhysicsServer2D::CCDMode get_continuous_collision_detection_mode() const { return continuous_cd_mode; }
|
||||
|
||||
void set_space(GodotSpace2D *p_space);
|
||||
void set_space(GodotSpace2D *p_space) override;
|
||||
|
||||
void update_mass_properties();
|
||||
void reset_mass_properties();
|
||||
|
|
|
|||
|
|
@ -39,7 +39,7 @@
|
|||
#define MAX_BIAS_ROTATION (Math_PI / 8)
|
||||
|
||||
void GodotBodyPair2D::_add_contact(const Vector2 &p_point_A, const Vector2 &p_point_B, void *p_self) {
|
||||
GodotBodyPair2D *self = (GodotBodyPair2D *)p_self;
|
||||
GodotBodyPair2D *self = static_cast<GodotBodyPair2D *>(p_self);
|
||||
|
||||
self->_contact_added_callback(p_point_A, p_point_B);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -82,7 +82,7 @@ int GodotBroadPhase2DBVH::cull_aabb(const Rect2 &p_aabb, GodotCollisionObject2D
|
|||
}
|
||||
|
||||
void *GodotBroadPhase2DBVH::_pair_callback(void *self, uint32_t p_A, GodotCollisionObject2D *p_object_A, int subindex_A, uint32_t p_B, GodotCollisionObject2D *p_object_B, int subindex_B) {
|
||||
GodotBroadPhase2DBVH *bpo = (GodotBroadPhase2DBVH *)(self);
|
||||
GodotBroadPhase2DBVH *bpo = static_cast<GodotBroadPhase2DBVH *>(self);
|
||||
if (!bpo->pair_callback) {
|
||||
return nullptr;
|
||||
}
|
||||
|
|
@ -91,7 +91,7 @@ void *GodotBroadPhase2DBVH::_pair_callback(void *self, uint32_t p_A, GodotCollis
|
|||
}
|
||||
|
||||
void GodotBroadPhase2DBVH::_unpair_callback(void *self, uint32_t p_A, GodotCollisionObject2D *p_object_A, int subindex_A, uint32_t p_B, GodotCollisionObject2D *p_object_B, int subindex_B, void *pairdata) {
|
||||
GodotBroadPhase2DBVH *bpo = (GodotBroadPhase2DBVH *)(self);
|
||||
GodotBroadPhase2DBVH *bpo = static_cast<GodotBroadPhase2DBVH *>(self);
|
||||
if (!bpo->unpair_callback) {
|
||||
return;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -77,22 +77,22 @@ class GodotBroadPhase2DBVH : public GodotBroadPhase2D {
|
|||
|
||||
public:
|
||||
// 0 is an invalid ID
|
||||
virtual ID create(GodotCollisionObject2D *p_object, int p_subindex = 0, const Rect2 &p_aabb = Rect2(), bool p_static = false);
|
||||
virtual void move(ID p_id, const Rect2 &p_aabb);
|
||||
virtual void set_static(ID p_id, bool p_static);
|
||||
virtual void remove(ID p_id);
|
||||
virtual ID create(GodotCollisionObject2D *p_object, int p_subindex = 0, const Rect2 &p_aabb = Rect2(), bool p_static = false) override;
|
||||
virtual void move(ID p_id, const Rect2 &p_aabb) override;
|
||||
virtual void set_static(ID p_id, bool p_static) override;
|
||||
virtual void remove(ID p_id) override;
|
||||
|
||||
virtual GodotCollisionObject2D *get_object(ID p_id) const;
|
||||
virtual bool is_static(ID p_id) const;
|
||||
virtual int get_subindex(ID p_id) const;
|
||||
virtual GodotCollisionObject2D *get_object(ID p_id) const override;
|
||||
virtual bool is_static(ID p_id) const override;
|
||||
virtual int get_subindex(ID p_id) const override;
|
||||
|
||||
virtual int cull_segment(const Vector2 &p_from, const Vector2 &p_to, GodotCollisionObject2D **p_results, int p_max_results, int *p_result_indices = nullptr);
|
||||
virtual int cull_aabb(const Rect2 &p_aabb, GodotCollisionObject2D **p_results, int p_max_results, int *p_result_indices = nullptr);
|
||||
virtual int cull_segment(const Vector2 &p_from, const Vector2 &p_to, GodotCollisionObject2D **p_results, int p_max_results, int *p_result_indices = nullptr) override;
|
||||
virtual int cull_aabb(const Rect2 &p_aabb, GodotCollisionObject2D **p_results, int p_max_results, int *p_result_indices = nullptr) override;
|
||||
|
||||
virtual void set_pair_callback(PairCallback p_pair_callback, void *p_userdata);
|
||||
virtual void set_unpair_callback(UnpairCallback p_unpair_callback, void *p_userdata);
|
||||
virtual void set_pair_callback(PairCallback p_pair_callback, void *p_userdata) override;
|
||||
virtual void set_unpair_callback(UnpairCallback p_unpair_callback, void *p_userdata) override;
|
||||
|
||||
virtual void update();
|
||||
virtual void update() override;
|
||||
|
||||
static GodotBroadPhase2D *_create();
|
||||
GodotBroadPhase2DBVH();
|
||||
|
|
|
|||
|
|
@ -104,7 +104,7 @@ public:
|
|||
_FORCE_INLINE_ void set_canvas_instance_id(const ObjectID &p_canvas_instance_id) { canvas_instance_id = p_canvas_instance_id; }
|
||||
_FORCE_INLINE_ ObjectID get_canvas_instance_id() const { return canvas_instance_id; }
|
||||
|
||||
void _shape_changed();
|
||||
void _shape_changed() override;
|
||||
|
||||
_FORCE_INLINE_ Type get_type() const { return type; }
|
||||
void add_shape(GodotShape2D *p_shape, const Transform2D &p_transform = Transform2D(), bool p_disabled = false);
|
||||
|
|
@ -166,7 +166,7 @@ public:
|
|||
}
|
||||
_FORCE_INLINE_ uint32_t get_collision_layer() const { return collision_layer; }
|
||||
|
||||
void remove_shape(GodotShape2D *p_shape);
|
||||
void remove_shape(GodotShape2D *p_shape) override;
|
||||
void remove_shape(int p_index);
|
||||
|
||||
virtual void set_space(GodotSpace2D *p_space) = 0;
|
||||
|
|
|
|||
|
|
@ -150,7 +150,7 @@ struct _ConcaveCollisionInfo2D {
|
|||
};
|
||||
|
||||
bool GodotCollisionSolver2D::concave_callback(void *p_userdata, GodotShape2D *p_convex) {
|
||||
_ConcaveCollisionInfo2D &cinfo = *(_ConcaveCollisionInfo2D *)(p_userdata);
|
||||
_ConcaveCollisionInfo2D &cinfo = *(static_cast<_ConcaveCollisionInfo2D *>(p_userdata));
|
||||
cinfo.aabb_tests++;
|
||||
|
||||
bool collided = collision_solver(cinfo.shape_A, *cinfo.transform_A, cinfo.motion_A, p_convex, *cinfo.transform_B, cinfo.motion_B, cinfo.result_callback, cinfo.userdata, cinfo.swap_result, cinfo.sep_axis, cinfo.margin_A, cinfo.margin_B);
|
||||
|
|
|
|||
|
|
@ -144,7 +144,7 @@ real_t GodotPhysicsServer2D::shape_get_custom_solver_bias(RID p_shape) const {
|
|||
}
|
||||
|
||||
void GodotPhysicsServer2D::_shape_col_cbk(const Vector2 &p_point_A, const Vector2 &p_point_B, void *p_userdata) {
|
||||
CollCbkData *cbk = (CollCbkData *)p_userdata;
|
||||
CollCbkData *cbk = static_cast<CollCbkData *>(p_userdata);
|
||||
|
||||
if (cbk->max == 0) {
|
||||
return;
|
||||
|
|
@ -1212,7 +1212,7 @@ void GodotPhysicsServer2D::free(RID p_rid) {
|
|||
GodotSpace2D *space = space_owner.get_or_null(p_rid);
|
||||
|
||||
while (space->get_objects().size()) {
|
||||
GodotCollisionObject2D *co = (GodotCollisionObject2D *)space->get_objects().front()->get();
|
||||
GodotCollisionObject2D *co = static_cast<GodotCollisionObject2D *>(space->get_objects().front()->get());
|
||||
co->set_space(nullptr);
|
||||
}
|
||||
|
||||
|
|
@ -1251,7 +1251,7 @@ void GodotPhysicsServer2D::step(real_t p_step) {
|
|||
active_objects = 0;
|
||||
collision_pairs = 0;
|
||||
for (Set<const GodotSpace2D *>::Element *E = active_spaces.front(); E; E = E->next()) {
|
||||
stepper->step((GodotSpace2D *)E->get(), p_step);
|
||||
stepper->step(const_cast<GodotSpace2D *>(E->get()), p_step);
|
||||
island_count += E->get()->get_island_count();
|
||||
active_objects += E->get()->get_active_objects();
|
||||
collision_pairs += E->get()->get_collision_pairs();
|
||||
|
|
@ -1272,7 +1272,7 @@ void GodotPhysicsServer2D::flush_queries() {
|
|||
uint64_t time_beg = OS::get_singleton()->get_ticks_usec();
|
||||
|
||||
for (Set<const GodotSpace2D *>::Element *E = active_spaces.front(); E; E = E->next()) {
|
||||
GodotSpace2D *space = (GodotSpace2D *)E->get();
|
||||
GodotSpace2D *space = const_cast<GodotSpace2D *>(E->get());
|
||||
space->call_queries();
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -37,7 +37,7 @@ void GodotShape2D::configure(const Rect2 &p_aabb) {
|
|||
aabb = p_aabb;
|
||||
configured = true;
|
||||
for (const KeyValue<GodotShapeOwner2D *, int> &E : owners) {
|
||||
GodotShapeOwner2D *co = (GodotShapeOwner2D *)E.key;
|
||||
GodotShapeOwner2D *co = const_cast<GodotShapeOwner2D *>(E.key);
|
||||
co->_shape_changed();
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -403,7 +403,7 @@ struct _RestCallbackData2D {
|
|||
};
|
||||
|
||||
static void _rest_cbk_result(const Vector2 &p_point_A, const Vector2 &p_point_B, void *p_userdata) {
|
||||
_RestCallbackData2D *rd = (_RestCallbackData2D *)p_userdata;
|
||||
_RestCallbackData2D *rd = static_cast<_RestCallbackData2D *>(p_userdata);
|
||||
|
||||
Vector2 contact_rel = p_point_B - p_point_A;
|
||||
real_t len = contact_rel.length();
|
||||
|
|
@ -1005,7 +1005,7 @@ void *GodotSpace2D::_broadphase_pair(GodotCollisionObject2D *A, int p_subindex_A
|
|||
SWAP(type_A, type_B);
|
||||
}
|
||||
|
||||
GodotSpace2D *self = (GodotSpace2D *)p_self;
|
||||
GodotSpace2D *self = static_cast<GodotSpace2D *>(p_self);
|
||||
self->collision_pairs++;
|
||||
|
||||
if (type_A == GodotCollisionObject2D::TYPE_AREA) {
|
||||
|
|
@ -1021,7 +1021,7 @@ void *GodotSpace2D::_broadphase_pair(GodotCollisionObject2D *A, int p_subindex_A
|
|||
}
|
||||
|
||||
} else {
|
||||
GodotBodyPair2D *b = memnew(GodotBodyPair2D((GodotBody2D *)A, p_subindex_A, (GodotBody2D *)B, p_subindex_B));
|
||||
GodotBodyPair2D *b = memnew(GodotBodyPair2D(static_cast<GodotBody2D *>(A), p_subindex_A, static_cast<GodotBody2D *>(B), p_subindex_B));
|
||||
return b;
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -47,7 +47,7 @@ void GodotStep2D::_populate_island(GodotBody2D *p_body, LocalVector<GodotBody2D
|
|||
}
|
||||
|
||||
for (const Pair<GodotConstraint2D *, int> &E : p_body->get_constraint_list()) {
|
||||
GodotConstraint2D *constraint = (GodotConstraint2D *)E.first;
|
||||
GodotConstraint2D *constraint = const_cast<GodotConstraint2D *>(E.first);
|
||||
if (constraint->get_island_step() == _step) {
|
||||
continue; // Already processed.
|
||||
}
|
||||
|
|
|
|||
|
|
@ -102,7 +102,7 @@ class GodotArea3D : public GodotCollisionObject3D {
|
|||
|
||||
Set<GodotConstraint3D *> constraints;
|
||||
|
||||
virtual void _shapes_changed();
|
||||
virtual void _shapes_changed() override;
|
||||
void _queue_monitor_update();
|
||||
|
||||
void _set_space_override_mode(PhysicsServer3D::AreaSpaceOverrideMode &r_mode, PhysicsServer3D::AreaSpaceOverrideMode p_new_mode);
|
||||
|
|
@ -172,7 +172,7 @@ public:
|
|||
|
||||
void set_transform(const Transform3D &p_transform);
|
||||
|
||||
void set_space(GodotSpace3D *p_space);
|
||||
void set_space(GodotSpace3D *p_space) override;
|
||||
|
||||
void call_queries();
|
||||
|
||||
|
|
|
|||
|
|
@ -109,7 +109,7 @@ class GodotBody3D : public GodotCollisionObject3D {
|
|||
bool first_time_kinematic = false;
|
||||
|
||||
void _mass_properties_changed();
|
||||
virtual void _shapes_changed();
|
||||
virtual void _shapes_changed() override;
|
||||
Transform3D new_transform;
|
||||
|
||||
Map<GodotConstraint3D *, int> constraint_map;
|
||||
|
|
@ -301,7 +301,7 @@ public:
|
|||
_FORCE_INLINE_ void set_continuous_collision_detection(bool p_enable) { continuous_cd = p_enable; }
|
||||
_FORCE_INLINE_ bool is_continuous_collision_detection_enabled() const { return continuous_cd; }
|
||||
|
||||
void set_space(GodotSpace3D *p_space);
|
||||
void set_space(GodotSpace3D *p_space) override;
|
||||
|
||||
void update_mass_properties();
|
||||
void reset_mass_properties();
|
||||
|
|
|
|||
|
|
@ -39,7 +39,7 @@
|
|||
#define MAX_BIAS_ROTATION (Math_PI / 8)
|
||||
|
||||
void GodotBodyPair3D::_contact_added_callback(const Vector3 &p_point_A, int p_index_A, const Vector3 &p_point_B, int p_index_B, void *p_userdata) {
|
||||
GodotBodyPair3D *pair = (GodotBodyPair3D *)p_userdata;
|
||||
GodotBodyPair3D *pair = static_cast<GodotBodyPair3D *>(p_userdata);
|
||||
pair->contact_added_callback(p_point_A, p_index_A, p_point_B, p_index_B);
|
||||
}
|
||||
|
||||
|
|
@ -562,7 +562,7 @@ GodotBodyPair3D::~GodotBodyPair3D() {
|
|||
}
|
||||
|
||||
void GodotBodySoftBodyPair3D::_contact_added_callback(const Vector3 &p_point_A, int p_index_A, const Vector3 &p_point_B, int p_index_B, void *p_userdata) {
|
||||
GodotBodySoftBodyPair3D *pair = (GodotBodySoftBodyPair3D *)p_userdata;
|
||||
GodotBodySoftBodyPair3D *pair = static_cast<GodotBodySoftBodyPair3D *>(p_userdata);
|
||||
pair->contact_added_callback(p_point_A, p_index_A, p_point_B, p_index_B);
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -87,7 +87,7 @@ int GodotBroadPhase3DBVH::cull_aabb(const AABB &p_aabb, GodotCollisionObject3D *
|
|||
}
|
||||
|
||||
void *GodotBroadPhase3DBVH::_pair_callback(void *self, uint32_t p_A, GodotCollisionObject3D *p_object_A, int subindex_A, uint32_t p_B, GodotCollisionObject3D *p_object_B, int subindex_B) {
|
||||
GodotBroadPhase3DBVH *bpo = (GodotBroadPhase3DBVH *)(self);
|
||||
GodotBroadPhase3DBVH *bpo = static_cast<GodotBroadPhase3DBVH *>(self);
|
||||
if (!bpo->pair_callback) {
|
||||
return nullptr;
|
||||
}
|
||||
|
|
@ -96,7 +96,7 @@ void *GodotBroadPhase3DBVH::_pair_callback(void *self, uint32_t p_A, GodotCollis
|
|||
}
|
||||
|
||||
void GodotBroadPhase3DBVH::_unpair_callback(void *self, uint32_t p_A, GodotCollisionObject3D *p_object_A, int subindex_A, uint32_t p_B, GodotCollisionObject3D *p_object_B, int subindex_B, void *pairdata) {
|
||||
GodotBroadPhase3DBVH *bpo = (GodotBroadPhase3DBVH *)(self);
|
||||
GodotBroadPhase3DBVH *bpo = static_cast<GodotBroadPhase3DBVH *>(self);
|
||||
if (!bpo->unpair_callback) {
|
||||
return;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -75,23 +75,23 @@ class GodotBroadPhase3DBVH : public GodotBroadPhase3D {
|
|||
|
||||
public:
|
||||
// 0 is an invalid ID
|
||||
virtual ID create(GodotCollisionObject3D *p_object, int p_subindex = 0, const AABB &p_aabb = AABB(), bool p_static = false);
|
||||
virtual void move(ID p_id, const AABB &p_aabb);
|
||||
virtual void set_static(ID p_id, bool p_static);
|
||||
virtual void remove(ID p_id);
|
||||
virtual ID create(GodotCollisionObject3D *p_object, int p_subindex = 0, const AABB &p_aabb = AABB(), bool p_static = false) override;
|
||||
virtual void move(ID p_id, const AABB &p_aabb) override;
|
||||
virtual void set_static(ID p_id, bool p_static) override;
|
||||
virtual void remove(ID p_id) override;
|
||||
|
||||
virtual GodotCollisionObject3D *get_object(ID p_id) const;
|
||||
virtual bool is_static(ID p_id) const;
|
||||
virtual int get_subindex(ID p_id) const;
|
||||
virtual GodotCollisionObject3D *get_object(ID p_id) const override;
|
||||
virtual bool is_static(ID p_id) const override;
|
||||
virtual int get_subindex(ID p_id) const override;
|
||||
|
||||
virtual int cull_point(const Vector3 &p_point, GodotCollisionObject3D **p_results, int p_max_results, int *p_result_indices = nullptr);
|
||||
virtual int cull_segment(const Vector3 &p_from, const Vector3 &p_to, GodotCollisionObject3D **p_results, int p_max_results, int *p_result_indices = nullptr);
|
||||
virtual int cull_aabb(const AABB &p_aabb, GodotCollisionObject3D **p_results, int p_max_results, int *p_result_indices = nullptr);
|
||||
virtual int cull_point(const Vector3 &p_point, GodotCollisionObject3D **p_results, int p_max_results, int *p_result_indices = nullptr) override;
|
||||
virtual int cull_segment(const Vector3 &p_from, const Vector3 &p_to, GodotCollisionObject3D **p_results, int p_max_results, int *p_result_indices = nullptr) override;
|
||||
virtual int cull_aabb(const AABB &p_aabb, GodotCollisionObject3D **p_results, int p_max_results, int *p_result_indices = nullptr) override;
|
||||
|
||||
virtual void set_pair_callback(PairCallback p_pair_callback, void *p_userdata);
|
||||
virtual void set_unpair_callback(UnpairCallback p_unpair_callback, void *p_userdata);
|
||||
virtual void set_pair_callback(PairCallback p_pair_callback, void *p_userdata) override;
|
||||
virtual void set_unpair_callback(UnpairCallback p_unpair_callback, void *p_userdata) override;
|
||||
|
||||
virtual void update();
|
||||
virtual void update() override;
|
||||
|
||||
static GodotBroadPhase3D *_create();
|
||||
GodotBroadPhase3DBVH();
|
||||
|
|
|
|||
|
|
@ -112,7 +112,7 @@ public:
|
|||
_FORCE_INLINE_ void set_instance_id(const ObjectID &p_instance_id) { instance_id = p_instance_id; }
|
||||
_FORCE_INLINE_ ObjectID get_instance_id() const { return instance_id; }
|
||||
|
||||
void _shape_changed();
|
||||
void _shape_changed() override;
|
||||
|
||||
_FORCE_INLINE_ Type get_type() const { return type; }
|
||||
void add_shape(GodotShape3D *p_shape, const Transform3D &p_transform = Transform3D(), bool p_disabled = false);
|
||||
|
|
@ -173,7 +173,7 @@ public:
|
|||
return collision_layer & p_other->collision_mask || p_other->collision_layer & collision_mask;
|
||||
}
|
||||
|
||||
void remove_shape(GodotShape3D *p_shape);
|
||||
void remove_shape(GodotShape3D *p_shape) override;
|
||||
void remove_shape(int p_index);
|
||||
|
||||
virtual void set_space(GodotSpace3D *p_space) = 0;
|
||||
|
|
|
|||
|
|
@ -141,7 +141,7 @@ struct _SoftBodyContactCollisionInfo {
|
|||
};
|
||||
|
||||
void GodotCollisionSolver3D::soft_body_contact_callback(const Vector3 &p_point_A, int p_index_A, const Vector3 &p_point_B, int p_index_B, void *p_userdata) {
|
||||
_SoftBodyContactCollisionInfo &cinfo = *(_SoftBodyContactCollisionInfo *)(p_userdata);
|
||||
_SoftBodyContactCollisionInfo &cinfo = *(static_cast<_SoftBodyContactCollisionInfo *>(p_userdata));
|
||||
|
||||
++cinfo.contact_count;
|
||||
|
||||
|
|
@ -170,7 +170,7 @@ struct _SoftBodyQueryInfo {
|
|||
};
|
||||
|
||||
bool GodotCollisionSolver3D::soft_body_query_callback(uint32_t p_node_index, void *p_userdata) {
|
||||
_SoftBodyQueryInfo &query_cinfo = *(_SoftBodyQueryInfo *)(p_userdata);
|
||||
_SoftBodyQueryInfo &query_cinfo = *(static_cast<_SoftBodyQueryInfo *>(p_userdata));
|
||||
|
||||
Vector3 node_position = query_cinfo.soft_body->get_node_position(p_node_index);
|
||||
|
||||
|
|
@ -189,7 +189,7 @@ bool GodotCollisionSolver3D::soft_body_query_callback(uint32_t p_node_index, voi
|
|||
}
|
||||
|
||||
bool GodotCollisionSolver3D::soft_body_concave_callback(void *p_userdata, GodotShape3D *p_convex) {
|
||||
_SoftBodyQueryInfo &query_cinfo = *(_SoftBodyQueryInfo *)(p_userdata);
|
||||
_SoftBodyQueryInfo &query_cinfo = *(static_cast<_SoftBodyQueryInfo *>(p_userdata));
|
||||
|
||||
query_cinfo.shape_A = p_convex;
|
||||
|
||||
|
|
@ -292,7 +292,7 @@ struct _ConcaveCollisionInfo {
|
|||
};
|
||||
|
||||
bool GodotCollisionSolver3D::concave_callback(void *p_userdata, GodotShape3D *p_convex) {
|
||||
_ConcaveCollisionInfo &cinfo = *(_ConcaveCollisionInfo *)(p_userdata);
|
||||
_ConcaveCollisionInfo &cinfo = *(static_cast<_ConcaveCollisionInfo *>(p_userdata));
|
||||
cinfo.aabb_tests++;
|
||||
|
||||
bool collided = collision_solver(cinfo.shape_A, *cinfo.transform_A, p_convex, *cinfo.transform_B, cinfo.result_callback, cinfo.userdata, cinfo.swap_result, nullptr, cinfo.margin_A, cinfo.margin_B);
|
||||
|
|
@ -422,7 +422,7 @@ bool GodotCollisionSolver3D::solve_static(const GodotShape3D *p_shape_A, const T
|
|||
}
|
||||
|
||||
bool GodotCollisionSolver3D::concave_distance_callback(void *p_userdata, GodotShape3D *p_convex) {
|
||||
_ConcaveCollisionInfo &cinfo = *(_ConcaveCollisionInfo *)(p_userdata);
|
||||
_ConcaveCollisionInfo &cinfo = *(static_cast<_ConcaveCollisionInfo *>(p_userdata));
|
||||
cinfo.aabb_tests++;
|
||||
|
||||
Vector3 close_A, close_B;
|
||||
|
|
|
|||
|
|
@ -1570,7 +1570,7 @@ void GodotPhysicsServer3D::free(RID p_rid) {
|
|||
GodotSpace3D *space = space_owner.get_or_null(p_rid);
|
||||
|
||||
while (space->get_objects().size()) {
|
||||
GodotCollisionObject3D *co = (GodotCollisionObject3D *)space->get_objects().front()->get();
|
||||
GodotCollisionObject3D *co = static_cast<GodotCollisionObject3D *>(space->get_objects().front()->get());
|
||||
co->set_space(nullptr);
|
||||
}
|
||||
|
||||
|
|
@ -1612,7 +1612,7 @@ void GodotPhysicsServer3D::step(real_t p_step) {
|
|||
active_objects = 0;
|
||||
collision_pairs = 0;
|
||||
for (Set<const GodotSpace3D *>::Element *E = active_spaces.front(); E; E = E->next()) {
|
||||
stepper->step((GodotSpace3D *)E->get(), p_step);
|
||||
stepper->step(const_cast<GodotSpace3D *>(E->get()), p_step);
|
||||
island_count += E->get()->get_island_count();
|
||||
active_objects += E->get()->get_active_objects();
|
||||
collision_pairs += E->get()->get_collision_pairs();
|
||||
|
|
@ -1636,7 +1636,7 @@ void GodotPhysicsServer3D::flush_queries() {
|
|||
uint64_t time_beg = OS::get_singleton()->get_ticks_usec();
|
||||
|
||||
for (Set<const GodotSpace3D *>::Element *E = active_spaces.front(); E; E = E->next()) {
|
||||
GodotSpace3D *space = (GodotSpace3D *)E->get();
|
||||
GodotSpace3D *space = const_cast<GodotSpace3D *>(E->get());
|
||||
space->call_queries();
|
||||
}
|
||||
|
||||
|
|
@ -1709,7 +1709,7 @@ void GodotPhysicsServer3D::_update_shapes() {
|
|||
}
|
||||
|
||||
void GodotPhysicsServer3D::_shape_col_cbk(const Vector3 &p_point_A, int p_index_A, const Vector3 &p_point_B, int p_index_B, void *p_userdata) {
|
||||
CollCbkData *cbk = (CollCbkData *)p_userdata;
|
||||
CollCbkData *cbk = static_cast<CollCbkData *>(p_userdata);
|
||||
|
||||
if (cbk->max == 0) {
|
||||
return;
|
||||
|
|
|
|||
|
|
@ -62,7 +62,7 @@ void GodotShape3D::configure(const AABB &p_aabb) {
|
|||
aabb = p_aabb;
|
||||
configured = true;
|
||||
for (const KeyValue<GodotShapeOwner3D *, int> &E : owners) {
|
||||
GodotShapeOwner3D *co = (GodotShapeOwner3D *)E.key;
|
||||
GodotShapeOwner3D *co = const_cast<GodotShapeOwner3D *>(E.key);
|
||||
co->_shape_changed();
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1272,7 +1272,7 @@ struct _SoftBodyIntersectSegmentInfo {
|
|||
real_t hit_dist_sq = INFINITY;
|
||||
|
||||
static bool process_hit(uint32_t p_face_index, void *p_userdata) {
|
||||
_SoftBodyIntersectSegmentInfo &query_info = *(_SoftBodyIntersectSegmentInfo *)(p_userdata);
|
||||
_SoftBodyIntersectSegmentInfo &query_info = *(static_cast<_SoftBodyIntersectSegmentInfo *>(p_userdata));
|
||||
|
||||
Vector3 points[3];
|
||||
query_info.soft_body->get_face_points(p_face_index, points[0], points[1], points[2]);
|
||||
|
|
|
|||
|
|
@ -153,7 +153,7 @@ public:
|
|||
}
|
||||
}
|
||||
|
||||
virtual void set_space(GodotSpace3D *p_space);
|
||||
virtual void set_space(GodotSpace3D *p_space) override;
|
||||
|
||||
void set_mesh(RID p_mesh);
|
||||
|
||||
|
|
@ -204,8 +204,8 @@ public:
|
|||
void predict_motion(real_t p_delta);
|
||||
void solve_constraints(real_t p_delta);
|
||||
|
||||
_FORCE_INLINE_ uint32_t get_node_index(void *p_node) const { return ((Node *)p_node)->index; }
|
||||
_FORCE_INLINE_ uint32_t get_face_index(void *p_face) const { return ((Face *)p_face)->index; }
|
||||
_FORCE_INLINE_ uint32_t get_node_index(void *p_node) const { return static_cast<Node *>(p_node)->index; }
|
||||
_FORCE_INLINE_ uint32_t get_face_index(void *p_face) const { return static_cast<Face *>(p_face)->index; }
|
||||
|
||||
// Return true to stop the query.
|
||||
// p_index is the node index for AABB query, face index for Ray query.
|
||||
|
|
@ -215,7 +215,7 @@ public:
|
|||
void query_ray(const Vector3 &p_from, const Vector3 &p_to, QueryResultCallback p_result_callback, void *p_userdata);
|
||||
|
||||
protected:
|
||||
virtual void _shapes_changed();
|
||||
virtual void _shapes_changed() override;
|
||||
|
||||
private:
|
||||
void update_normals_and_centroids();
|
||||
|
|
|
|||
|
|
@ -445,7 +445,7 @@ struct _RestCallbackData {
|
|||
};
|
||||
|
||||
static void _rest_cbk_result(const Vector3 &p_point_A, int p_index_A, const Vector3 &p_point_B, int p_index_B, void *p_userdata) {
|
||||
_RestCallbackData *rd = (_RestCallbackData *)p_userdata;
|
||||
_RestCallbackData *rd = static_cast<_RestCallbackData *>(p_userdata);
|
||||
|
||||
Vector3 contact_rel = p_point_B - p_point_A;
|
||||
real_t len = contact_rel.length();
|
||||
|
|
@ -1017,7 +1017,7 @@ void *GodotSpace3D::_broadphase_pair(GodotCollisionObject3D *A, int p_subindex_A
|
|||
SWAP(type_A, type_B);
|
||||
}
|
||||
|
||||
GodotSpace3D *self = (GodotSpace3D *)p_self;
|
||||
GodotSpace3D *self = static_cast<GodotSpace3D *>(p_self);
|
||||
|
||||
self->collision_pairs++;
|
||||
|
||||
|
|
@ -1038,10 +1038,10 @@ void *GodotSpace3D::_broadphase_pair(GodotCollisionObject3D *A, int p_subindex_A
|
|||
}
|
||||
} else if (type_A == GodotCollisionObject3D::TYPE_BODY) {
|
||||
if (type_B == GodotCollisionObject3D::TYPE_SOFT_BODY) {
|
||||
GodotBodySoftBodyPair3D *soft_pair = memnew(GodotBodySoftBodyPair3D((GodotBody3D *)A, p_subindex_A, (GodotSoftBody3D *)B));
|
||||
GodotBodySoftBodyPair3D *soft_pair = memnew(GodotBodySoftBodyPair3D(static_cast<GodotBody3D *>(A), p_subindex_A, static_cast<GodotSoftBody3D *>(B)));
|
||||
return soft_pair;
|
||||
} else {
|
||||
GodotBodyPair3D *b = memnew(GodotBodyPair3D((GodotBody3D *)A, p_subindex_A, (GodotBody3D *)B, p_subindex_B));
|
||||
GodotBodyPair3D *b = memnew(GodotBodyPair3D(static_cast<GodotBody3D *>(A), p_subindex_A, static_cast<GodotBody3D *>(B), p_subindex_B));
|
||||
return b;
|
||||
}
|
||||
} else {
|
||||
|
|
@ -1056,9 +1056,9 @@ void GodotSpace3D::_broadphase_unpair(GodotCollisionObject3D *A, int p_subindex_
|
|||
return;
|
||||
}
|
||||
|
||||
GodotSpace3D *self = (GodotSpace3D *)p_self;
|
||||
GodotSpace3D *self = static_cast<GodotSpace3D *>(p_self);
|
||||
self->collision_pairs--;
|
||||
GodotConstraint3D *c = (GodotConstraint3D *)p_data;
|
||||
GodotConstraint3D *c = static_cast<GodotConstraint3D *>(p_data);
|
||||
memdelete(c);
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -49,7 +49,7 @@ void GodotStep3D::_populate_island(GodotBody3D *p_body, LocalVector<GodotBody3D
|
|||
}
|
||||
|
||||
for (const KeyValue<GodotConstraint3D *, int> &E : p_body->get_constraint_map()) {
|
||||
GodotConstraint3D *constraint = (GodotConstraint3D *)E.key;
|
||||
GodotConstraint3D *constraint = const_cast<GodotConstraint3D *>(E.key);
|
||||
if (constraint->get_island_step() == _step) {
|
||||
continue; // Already processed.
|
||||
}
|
||||
|
|
@ -88,7 +88,7 @@ void GodotStep3D::_populate_island_soft_body(GodotSoftBody3D *p_soft_body, Local
|
|||
p_soft_body->set_island_step(_step);
|
||||
|
||||
for (Set<GodotConstraint3D *>::Element *E = p_soft_body->get_constraints().front(); E; E = E->next()) {
|
||||
GodotConstraint3D *constraint = (GodotConstraint3D *)E->get();
|
||||
GodotConstraint3D *constraint = const_cast<GodotConstraint3D *>(E->get());
|
||||
if (constraint->get_island_step() == _step) {
|
||||
continue; // Already processed.
|
||||
}
|
||||
|
|
|
|||
|
|
@ -269,7 +269,7 @@ void ClusterBuilderRD::setup(Size2i p_screen_size, uint32_t p_max_elements, RID
|
|||
cluster_render_buffer = RD::get_singleton()->storage_buffer_create(cluster_render_buffer_size);
|
||||
cluster_buffer = RD::get_singleton()->storage_buffer_create(cluster_buffer_size);
|
||||
|
||||
render_elements = (RenderElementData *)memalloc(sizeof(RenderElementData *) * render_element_max);
|
||||
render_elements = static_cast<RenderElementData *>(memalloc(sizeof(RenderElementData *) * render_element_max));
|
||||
render_element_count = 0;
|
||||
|
||||
element_buffer = RD::get_singleton()->storage_buffer_create(sizeof(RenderElementData) * render_element_max);
|
||||
|
|
|
|||
|
|
@ -684,7 +684,7 @@ void RenderForwardClustered::_setup_environment(const RenderDataRD *p_render_dat
|
|||
scene_state.ubo.fog_enabled = false;
|
||||
|
||||
if (p_render_data->render_buffers.is_valid()) {
|
||||
RenderBufferDataForwardClustered *render_buffers = (RenderBufferDataForwardClustered *)render_buffers_get_data(p_render_data->render_buffers);
|
||||
RenderBufferDataForwardClustered *render_buffers = static_cast<RenderBufferDataForwardClustered *>(render_buffers_get_data(p_render_data->render_buffers));
|
||||
if (render_buffers->msaa != RS::VIEWPORT_MSAA_DISABLED) {
|
||||
scene_state.ubo.gi_upscale_for_msaa = true;
|
||||
}
|
||||
|
|
@ -1242,7 +1242,7 @@ void RenderForwardClustered::_setup_lightmaps(const PagedArray<RID> &p_lightmaps
|
|||
void RenderForwardClustered::_render_scene(RenderDataRD *p_render_data, const Color &p_default_bg_color) {
|
||||
RenderBufferDataForwardClustered *render_buffer = nullptr;
|
||||
if (p_render_data->render_buffers.is_valid()) {
|
||||
render_buffer = (RenderBufferDataForwardClustered *)render_buffers_get_data(p_render_data->render_buffers);
|
||||
render_buffer = static_cast<RenderBufferDataForwardClustered *>(render_buffers_get_data(p_render_data->render_buffers));
|
||||
}
|
||||
RendererSceneEnvironmentRD *env = get_environment(p_render_data->environment);
|
||||
static const int texture_multisamples[RS::VIEWPORT_MSAA_MAX] = { 1, 2, 4, 8 };
|
||||
|
|
@ -1944,7 +1944,7 @@ void RenderForwardClustered::_render_sdfgi(RID p_render_buffers, const Vector3i
|
|||
|
||||
_update_render_base_uniform_set();
|
||||
|
||||
RenderBufferDataForwardClustered *render_buffer = (RenderBufferDataForwardClustered *)render_buffers_get_data(p_render_buffers);
|
||||
RenderBufferDataForwardClustered *render_buffer = static_cast<RenderBufferDataForwardClustered *>(render_buffers_get_data(p_render_buffers));
|
||||
ERR_FAIL_COND(!render_buffer);
|
||||
|
||||
PassMode pass_mode = PASS_MODE_SDF;
|
||||
|
|
@ -2212,7 +2212,7 @@ RID RenderForwardClustered::_setup_render_pass_uniform_set(RenderListType p_rend
|
|||
|
||||
RenderBufferDataForwardClustered *rb = nullptr;
|
||||
if (p_render_data && p_render_data->render_buffers.is_valid()) {
|
||||
rb = (RenderBufferDataForwardClustered *)render_buffers_get_data(p_render_data->render_buffers);
|
||||
rb = static_cast<RenderBufferDataForwardClustered *>(render_buffers_get_data(p_render_data->render_buffers));
|
||||
}
|
||||
|
||||
//default render buffer and scene state uniform set
|
||||
|
|
@ -2586,7 +2586,7 @@ RID RenderForwardClustered::_setup_sdfgi_render_pass_uniform_set(RID p_albedo_te
|
|||
}
|
||||
|
||||
RID RenderForwardClustered::_render_buffers_get_normal_texture(RID p_render_buffers) {
|
||||
RenderBufferDataForwardClustered *rb = (RenderBufferDataForwardClustered *)render_buffers_get_data(p_render_buffers);
|
||||
RenderBufferDataForwardClustered *rb = static_cast<RenderBufferDataForwardClustered *>(render_buffers_get_data(p_render_buffers));
|
||||
|
||||
return rb->normal_roughness_buffer;
|
||||
}
|
||||
|
|
@ -2664,7 +2664,7 @@ void RenderForwardClustered::_geometry_instance_add_surface_with_material(Geomet
|
|||
void *surface_shadow = nullptr;
|
||||
if (!p_material->shader_data->uses_particle_trails && !p_material->shader_data->writes_modelview_or_projection && !p_material->shader_data->uses_vertex && !p_material->shader_data->uses_position && !p_material->shader_data->uses_discard && !p_material->shader_data->uses_depth_pre_pass && !p_material->shader_data->uses_alpha_clip) {
|
||||
flags |= GeometryInstanceSurfaceDataCache::FLAG_USES_SHARED_SHADOW_MATERIAL;
|
||||
material_shadow = (SceneShaderForwardClustered::MaterialData *)RendererRD::MaterialStorage::get_singleton()->material_get_data(scene_shader.default_material, RendererRD::SHADER_TYPE_3D);
|
||||
material_shadow = static_cast<SceneShaderForwardClustered::MaterialData *>(RendererRD::MaterialStorage::get_singleton()->material_get_data(scene_shader.default_material, RendererRD::SHADER_TYPE_3D));
|
||||
|
||||
RID shadow_mesh = mesh_storage->mesh_get_shadow_mesh(p_mesh);
|
||||
|
||||
|
|
@ -2725,7 +2725,7 @@ void RenderForwardClustered::_geometry_instance_add_surface_with_material_chain(
|
|||
|
||||
while (material->next_pass.is_valid()) {
|
||||
RID next_pass = material->next_pass;
|
||||
material = (SceneShaderForwardClustered::MaterialData *)material_storage->material_get_data(next_pass, RendererRD::SHADER_TYPE_3D);
|
||||
material = static_cast<SceneShaderForwardClustered::MaterialData *>(material_storage->material_get_data(next_pass, RendererRD::SHADER_TYPE_3D));
|
||||
if (!material || !material->shader_data->valid) {
|
||||
break;
|
||||
}
|
||||
|
|
@ -2745,7 +2745,7 @@ void RenderForwardClustered::_geometry_instance_add_surface(GeometryInstanceForw
|
|||
SceneShaderForwardClustered::MaterialData *material = nullptr;
|
||||
|
||||
if (m_src.is_valid()) {
|
||||
material = (SceneShaderForwardClustered::MaterialData *)material_storage->material_get_data(m_src, RendererRD::SHADER_TYPE_3D);
|
||||
material = static_cast<SceneShaderForwardClustered::MaterialData *>(material_storage->material_get_data(m_src, RendererRD::SHADER_TYPE_3D));
|
||||
if (!material || !material->shader_data->valid) {
|
||||
material = nullptr;
|
||||
}
|
||||
|
|
@ -2756,7 +2756,7 @@ void RenderForwardClustered::_geometry_instance_add_surface(GeometryInstanceForw
|
|||
material_storage->material_update_dependency(m_src, &ginstance->data->dependency_tracker);
|
||||
}
|
||||
} else {
|
||||
material = (SceneShaderForwardClustered::MaterialData *)material_storage->material_get_data(scene_shader.default_material, RendererRD::SHADER_TYPE_3D);
|
||||
material = static_cast<SceneShaderForwardClustered::MaterialData *>(material_storage->material_get_data(scene_shader.default_material, RendererRD::SHADER_TYPE_3D));
|
||||
m_src = scene_shader.default_material;
|
||||
}
|
||||
|
||||
|
|
@ -2767,7 +2767,7 @@ void RenderForwardClustered::_geometry_instance_add_surface(GeometryInstanceForw
|
|||
if (ginstance->data->material_overlay.is_valid()) {
|
||||
m_src = ginstance->data->material_overlay;
|
||||
|
||||
material = (SceneShaderForwardClustered::MaterialData *)material_storage->material_get_data(m_src, RendererRD::SHADER_TYPE_3D);
|
||||
material = static_cast<SceneShaderForwardClustered::MaterialData *>(material_storage->material_get_data(m_src, RendererRD::SHADER_TYPE_3D));
|
||||
if (material && material->shader_data->valid) {
|
||||
if (ginstance->data->dirty_dependencies) {
|
||||
material_storage->material_update_dependency(m_src, &ginstance->data->dependency_tracker);
|
||||
|
|
|
|||
|
|
@ -762,7 +762,7 @@ void fragment() {
|
|||
material_storage->material_initialize(default_material);
|
||||
material_storage->material_set_shader(default_material, default_shader);
|
||||
|
||||
MaterialData *md = (MaterialData *)material_storage->material_get_data(default_material, RendererRD::SHADER_TYPE_3D);
|
||||
MaterialData *md = static_cast<MaterialData *>(material_storage->material_get_data(default_material, RendererRD::SHADER_TYPE_3D));
|
||||
default_shader_rd = shader.version_get_shader(md->shader_data->version, SHADER_VERSION_COLOR_PASS);
|
||||
default_shader_sdfgi_rd = shader.version_get_shader(md->shader_data->version, SHADER_VERSION_DEPTH_PASS_WITH_SDF);
|
||||
|
||||
|
|
@ -790,7 +790,7 @@ void fragment() {
|
|||
material_storage->material_initialize(overdraw_material);
|
||||
material_storage->material_set_shader(overdraw_material, overdraw_material_shader);
|
||||
|
||||
MaterialData *md = (MaterialData *)material_storage->material_get_data(overdraw_material, RendererRD::SHADER_TYPE_3D);
|
||||
MaterialData *md = static_cast<MaterialData *>(material_storage->material_get_data(overdraw_material, RendererRD::SHADER_TYPE_3D));
|
||||
overdraw_material_shader_ptr = md->shader_data;
|
||||
overdraw_material_uniform_set = md->uniform_set;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -298,7 +298,7 @@ RID RenderForwardMobile::_setup_render_pass_uniform_set(RenderListType p_render_
|
|||
|
||||
RenderBufferDataForwardMobile *rb = nullptr;
|
||||
if (p_render_data && p_render_data->render_buffers.is_valid()) {
|
||||
rb = (RenderBufferDataForwardMobile *)render_buffers_get_data(p_render_data->render_buffers);
|
||||
rb = static_cast<RenderBufferDataForwardMobile *>(render_buffers_get_data(p_render_data->render_buffers));
|
||||
}
|
||||
|
||||
// default render buffer and scene state uniform set
|
||||
|
|
@ -477,7 +477,7 @@ void RenderForwardMobile::_setup_lightmaps(const PagedArray<RID> &p_lightmaps, c
|
|||
void RenderForwardMobile::_render_scene(RenderDataRD *p_render_data, const Color &p_default_bg_color) {
|
||||
RenderBufferDataForwardMobile *render_buffer = nullptr;
|
||||
if (p_render_data->render_buffers.is_valid()) {
|
||||
render_buffer = (RenderBufferDataForwardMobile *)render_buffers_get_data(p_render_data->render_buffers);
|
||||
render_buffer = static_cast<RenderBufferDataForwardMobile *>(render_buffers_get_data(p_render_data->render_buffers));
|
||||
}
|
||||
RendererSceneEnvironmentRD *env = get_environment(p_render_data->environment);
|
||||
|
||||
|
|
@ -1569,7 +1569,7 @@ void RenderForwardMobile::_setup_environment(const RenderDataRD *p_render_data,
|
|||
scene_state.ubo.fog_enabled = false;
|
||||
|
||||
if (p_render_data->render_buffers.is_valid()) {
|
||||
RenderBufferDataForwardMobile *render_buffers = (RenderBufferDataForwardMobile *)render_buffers_get_data(p_render_data->render_buffers);
|
||||
RenderBufferDataForwardMobile *render_buffers = static_cast<RenderBufferDataForwardMobile *>(render_buffers_get_data(p_render_data->render_buffers));
|
||||
if (render_buffers->msaa != RS::VIEWPORT_MSAA_DISABLED) {
|
||||
scene_state.ubo.gi_upscale_for_msaa = true;
|
||||
}
|
||||
|
|
@ -2335,7 +2335,7 @@ void RenderForwardMobile::_geometry_instance_add_surface_with_material(GeometryI
|
|||
void *surface_shadow = nullptr;
|
||||
if (!p_material->shader_data->uses_particle_trails && !p_material->shader_data->writes_modelview_or_projection && !p_material->shader_data->uses_vertex && !p_material->shader_data->uses_discard && !p_material->shader_data->uses_depth_pre_pass && !p_material->shader_data->uses_alpha_clip) {
|
||||
flags |= GeometryInstanceSurfaceDataCache::FLAG_USES_SHARED_SHADOW_MATERIAL;
|
||||
material_shadow = (SceneShaderForwardMobile::MaterialData *)RendererRD::MaterialStorage::get_singleton()->material_get_data(scene_shader.default_material, RendererRD::SHADER_TYPE_3D);
|
||||
material_shadow = static_cast<SceneShaderForwardMobile::MaterialData *>(RendererRD::MaterialStorage::get_singleton()->material_get_data(scene_shader.default_material, RendererRD::SHADER_TYPE_3D));
|
||||
|
||||
RID shadow_mesh = mesh_storage->mesh_get_shadow_mesh(p_mesh);
|
||||
|
||||
|
|
@ -2394,7 +2394,7 @@ void RenderForwardMobile::_geometry_instance_add_surface_with_material_chain(Geo
|
|||
|
||||
while (material->next_pass.is_valid()) {
|
||||
RID next_pass = material->next_pass;
|
||||
material = (SceneShaderForwardMobile::MaterialData *)material_storage->material_get_data(next_pass, RendererRD::SHADER_TYPE_3D);
|
||||
material = static_cast<SceneShaderForwardMobile::MaterialData *>(material_storage->material_get_data(next_pass, RendererRD::SHADER_TYPE_3D));
|
||||
if (!material || !material->shader_data->valid) {
|
||||
break;
|
||||
}
|
||||
|
|
@ -2414,7 +2414,7 @@ void RenderForwardMobile::_geometry_instance_add_surface(GeometryInstanceForward
|
|||
SceneShaderForwardMobile::MaterialData *material = nullptr;
|
||||
|
||||
if (m_src.is_valid()) {
|
||||
material = (SceneShaderForwardMobile::MaterialData *)material_storage->material_get_data(m_src, RendererRD::SHADER_TYPE_3D);
|
||||
material = static_cast<SceneShaderForwardMobile::MaterialData *>(material_storage->material_get_data(m_src, RendererRD::SHADER_TYPE_3D));
|
||||
if (!material || !material->shader_data->valid) {
|
||||
material = nullptr;
|
||||
}
|
||||
|
|
@ -2425,7 +2425,7 @@ void RenderForwardMobile::_geometry_instance_add_surface(GeometryInstanceForward
|
|||
material_storage->material_update_dependency(m_src, &ginstance->data->dependency_tracker);
|
||||
}
|
||||
} else {
|
||||
material = (SceneShaderForwardMobile::MaterialData *)material_storage->material_get_data(scene_shader.default_material, RendererRD::SHADER_TYPE_3D);
|
||||
material = static_cast<SceneShaderForwardMobile::MaterialData *>(material_storage->material_get_data(scene_shader.default_material, RendererRD::SHADER_TYPE_3D));
|
||||
m_src = scene_shader.default_material;
|
||||
}
|
||||
|
||||
|
|
@ -2436,7 +2436,7 @@ void RenderForwardMobile::_geometry_instance_add_surface(GeometryInstanceForward
|
|||
if (ginstance->data->material_overlay.is_valid()) {
|
||||
m_src = ginstance->data->material_overlay;
|
||||
|
||||
material = (SceneShaderForwardMobile::MaterialData *)material_storage->material_get_data(m_src, RendererRD::SHADER_TYPE_3D);
|
||||
material = static_cast<SceneShaderForwardMobile::MaterialData *>(material_storage->material_get_data(m_src, RendererRD::SHADER_TYPE_3D));
|
||||
if (material && material->shader_data->valid) {
|
||||
if (ginstance->data->dirty_dependencies) {
|
||||
material_storage->material_update_dependency(m_src, &ginstance->data->dependency_tracker);
|
||||
|
|
|
|||
|
|
@ -700,7 +700,7 @@ void fragment() {
|
|||
material_storage->material_initialize(default_material);
|
||||
material_storage->material_set_shader(default_material, default_shader);
|
||||
|
||||
MaterialData *md = (MaterialData *)material_storage->material_get_data(default_material, RendererRD::SHADER_TYPE_3D);
|
||||
MaterialData *md = static_cast<MaterialData *>(material_storage->material_get_data(default_material, RendererRD::SHADER_TYPE_3D));
|
||||
default_shader_rd = shader.version_get_shader(md->shader_data->version, SHADER_VERSION_COLOR_PASS);
|
||||
|
||||
default_material_shader_ptr = md->shader_data;
|
||||
|
|
@ -727,7 +727,7 @@ void fragment() {
|
|||
material_storage->material_initialize(overdraw_material);
|
||||
material_storage->material_set_shader(overdraw_material, overdraw_material_shader);
|
||||
|
||||
MaterialData *md = (MaterialData *)material_storage->material_get_data(overdraw_material, RendererRD::SHADER_TYPE_3D);
|
||||
MaterialData *md = static_cast<MaterialData *>(material_storage->material_get_data(overdraw_material, RendererRD::SHADER_TYPE_3D));
|
||||
overdraw_material_shader_ptr = md->shader_data;
|
||||
overdraw_material_uniform_set = md->uniform_set;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -58,7 +58,7 @@ RID PipelineCacheRD::_generate_version(RD::VertexFormatID p_vertex_format_id, RD
|
|||
|
||||
RID pipeline = RD::get_singleton()->render_pipeline_create(shader, p_framebuffer_format_id, p_vertex_format_id, render_primitive, raster_state_version, multisample_state_version, depth_stencil_state, blend_state, dynamic_state_flags, p_render_pass, specialization_constants);
|
||||
ERR_FAIL_COND_V(pipeline.is_null(), RID());
|
||||
versions = (Version *)memrealloc(versions, sizeof(Version) * (version_count + 1));
|
||||
versions = static_cast<Version *>(memrealloc(versions, sizeof(Version) * (version_count + 1)));
|
||||
versions[version_count].framebuffer_id = p_framebuffer_format_id;
|
||||
versions[version_count].vertex_id = p_vertex_format_id;
|
||||
versions[version_count].wireframe = wireframe;
|
||||
|
|
|
|||
|
|
@ -1109,7 +1109,7 @@ void RendererCanvasRenderRD::_render_items(RID p_to_render_target, int p_item_co
|
|||
if (material != prev_material) {
|
||||
CanvasMaterialData *material_data = nullptr;
|
||||
if (material.is_valid()) {
|
||||
material_data = (CanvasMaterialData *)material_storage->material_get_data(material, RendererRD::SHADER_TYPE_2D);
|
||||
material_data = static_cast<CanvasMaterialData *>(material_storage->material_get_data(material, RendererRD::SHADER_TYPE_2D));
|
||||
}
|
||||
|
||||
if (material_data) {
|
||||
|
|
@ -1374,7 +1374,7 @@ void RendererCanvasRenderRD::canvas_render_items(RID p_to_render_target, Item *p
|
|||
RID material = ci->material_owner == nullptr ? ci->material : ci->material_owner->material;
|
||||
|
||||
if (material.is_valid()) {
|
||||
CanvasMaterialData *md = (CanvasMaterialData *)material_storage->material_get_data(material, RendererRD::SHADER_TYPE_2D);
|
||||
CanvasMaterialData *md = static_cast<CanvasMaterialData *>(material_storage->material_get_data(material, RendererRD::SHADER_TYPE_2D));
|
||||
if (md && md->shader_data->valid) {
|
||||
if (md->shader_data->uses_screen_texture && canvas_group_owner == nullptr) {
|
||||
if (!material_screen_texture_found) {
|
||||
|
|
@ -1986,7 +1986,7 @@ void RendererCanvasRenderRD::CanvasShaderData::set_code(const String &p_code) {
|
|||
|
||||
actions.uniforms = &uniforms;
|
||||
|
||||
RendererCanvasRenderRD *canvas_singleton = (RendererCanvasRenderRD *)RendererCanvasRender::singleton;
|
||||
RendererCanvasRenderRD *canvas_singleton = static_cast<RendererCanvasRenderRD *>(RendererCanvasRender::singleton);
|
||||
|
||||
Error err = canvas_singleton->shader.compiler.compile(RS::SHADER_CANVAS_ITEM, code, &actions, path, gen_code);
|
||||
ERR_FAIL_COND_MSG(err != OK, "Shader compilation failed.");
|
||||
|
|
@ -2209,7 +2209,7 @@ Variant RendererCanvasRenderRD::CanvasShaderData::get_default_parameter(const St
|
|||
}
|
||||
|
||||
RS::ShaderNativeSourceCode RendererCanvasRenderRD::CanvasShaderData::get_native_source_code() const {
|
||||
RendererCanvasRenderRD *canvas_singleton = (RendererCanvasRenderRD *)RendererCanvasRender::singleton;
|
||||
RendererCanvasRenderRD *canvas_singleton = static_cast<RendererCanvasRenderRD *>(RendererCanvasRender::singleton);
|
||||
return canvas_singleton->shader.canvas_shader.version_get_native_source_code(version);
|
||||
}
|
||||
|
||||
|
|
@ -2220,7 +2220,7 @@ RendererCanvasRenderRD::CanvasShaderData::CanvasShaderData() {
|
|||
}
|
||||
|
||||
RendererCanvasRenderRD::CanvasShaderData::~CanvasShaderData() {
|
||||
RendererCanvasRenderRD *canvas_singleton = (RendererCanvasRenderRD *)RendererCanvasRender::singleton;
|
||||
RendererCanvasRenderRD *canvas_singleton = static_cast<RendererCanvasRenderRD *>(RendererCanvasRender::singleton);
|
||||
ERR_FAIL_COND(!canvas_singleton);
|
||||
//pipeline variants will clear themselves if shader is gone
|
||||
if (version.is_valid()) {
|
||||
|
|
@ -2234,7 +2234,7 @@ RendererRD::ShaderData *RendererCanvasRenderRD::_create_shader_func() {
|
|||
}
|
||||
|
||||
bool RendererCanvasRenderRD::CanvasMaterialData::update_parameters(const Map<StringName, Variant> &p_parameters, bool p_uniform_dirty, bool p_textures_dirty) {
|
||||
RendererCanvasRenderRD *canvas_singleton = (RendererCanvasRenderRD *)RendererCanvasRender::singleton;
|
||||
RendererCanvasRenderRD *canvas_singleton = static_cast<RendererCanvasRenderRD *>(RendererCanvasRender::singleton);
|
||||
|
||||
return update_parameters_uniform_set(p_parameters, p_uniform_dirty, p_textures_dirty, shader_data->uniforms, shader_data->ubo_offsets.ptr(), shader_data->texture_uniforms, shader_data->default_texture_params, shader_data->ubo_size, uniform_set, canvas_singleton->shader.canvas_shader.version_get_shader(shader_data->version, 0), MATERIAL_UNIFORM_SET);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -3865,7 +3865,7 @@ void RendererSceneRenderRD::FogShaderData::set_code(const String &p_code) {
|
|||
|
||||
actions.uniforms = &uniforms;
|
||||
|
||||
RendererSceneRenderRD *scene_singleton = (RendererSceneRenderRD *)RendererSceneRenderRD::singleton;
|
||||
RendererSceneRenderRD *scene_singleton = static_cast<RendererSceneRenderRD *>(RendererSceneRenderRD::singleton);
|
||||
|
||||
Error err = scene_singleton->volumetric_fog.compiler.compile(RS::SHADER_FOG, code, &actions, path, gen_code);
|
||||
ERR_FAIL_COND_MSG(err != OK, "Fog shader compilation failed.");
|
||||
|
|
@ -3966,7 +3966,7 @@ Variant RendererSceneRenderRD::FogShaderData::get_default_parameter(const String
|
|||
}
|
||||
|
||||
RS::ShaderNativeSourceCode RendererSceneRenderRD::FogShaderData::get_native_source_code() const {
|
||||
RendererSceneRenderRD *scene_singleton = (RendererSceneRenderRD *)RendererSceneRenderRD::singleton;
|
||||
RendererSceneRenderRD *scene_singleton = static_cast<RendererSceneRenderRD *>(RendererSceneRenderRD::singleton);
|
||||
|
||||
return scene_singleton->volumetric_fog.shader.version_get_native_source_code(version);
|
||||
}
|
||||
|
|
@ -3976,7 +3976,7 @@ RendererSceneRenderRD::FogShaderData::FogShaderData() {
|
|||
}
|
||||
|
||||
RendererSceneRenderRD::FogShaderData::~FogShaderData() {
|
||||
RendererSceneRenderRD *scene_singleton = (RendererSceneRenderRD *)RendererSceneRenderRD::singleton;
|
||||
RendererSceneRenderRD *scene_singleton = static_cast<RendererSceneRenderRD *>(RendererSceneRenderRD::singleton);
|
||||
ERR_FAIL_COND(!scene_singleton);
|
||||
//pipeline variants will clear themselves if shader is gone
|
||||
if (version.is_valid()) {
|
||||
|
|
@ -3988,7 +3988,7 @@ RendererSceneRenderRD::FogShaderData::~FogShaderData() {
|
|||
// Fog material
|
||||
|
||||
bool RendererSceneRenderRD::FogMaterialData::update_parameters(const Map<StringName, Variant> &p_parameters, bool p_uniform_dirty, bool p_textures_dirty) {
|
||||
RendererSceneRenderRD *scene_singleton = (RendererSceneRenderRD *)RendererSceneRenderRD::singleton;
|
||||
RendererSceneRenderRD *scene_singleton = static_cast<RendererSceneRenderRD *>(RendererSceneRenderRD::singleton);
|
||||
|
||||
uniform_set_updated = true;
|
||||
|
||||
|
|
@ -4276,7 +4276,7 @@ void RendererSceneRenderRD::_update_volumetric_fog(RID p_render_buffers, RID p_e
|
|||
FogMaterialData *material = nullptr;
|
||||
|
||||
if (fog_material.is_valid()) {
|
||||
material = (FogMaterialData *)material_storage->material_get_data(fog_material, RendererRD::SHADER_TYPE_FOG);
|
||||
material = static_cast<FogMaterialData *>(material_storage->material_get_data(fog_material, RendererRD::SHADER_TYPE_FOG));
|
||||
if (!material || !material->shader_data->valid) {
|
||||
material = nullptr;
|
||||
}
|
||||
|
|
@ -4284,7 +4284,7 @@ void RendererSceneRenderRD::_update_volumetric_fog(RID p_render_buffers, RID p_e
|
|||
|
||||
if (!material) {
|
||||
fog_material = volumetric_fog.default_material;
|
||||
material = (FogMaterialData *)material_storage->material_get_data(fog_material, RendererRD::SHADER_TYPE_FOG);
|
||||
material = static_cast<FogMaterialData *>(material_storage->material_get_data(fog_material, RendererRD::SHADER_TYPE_FOG));
|
||||
}
|
||||
|
||||
ERR_FAIL_COND(!material);
|
||||
|
|
@ -5732,7 +5732,7 @@ void fog() {
|
|||
material_storage->material_initialize(volumetric_fog.default_material);
|
||||
material_storage->material_set_shader(volumetric_fog.default_material, volumetric_fog.default_shader);
|
||||
|
||||
FogMaterialData *md = (FogMaterialData *)material_storage->material_get_data(volumetric_fog.default_material, RendererRD::SHADER_TYPE_FOG);
|
||||
FogMaterialData *md = static_cast<FogMaterialData *>(material_storage->material_get_data(volumetric_fog.default_material, RendererRD::SHADER_TYPE_FOG));
|
||||
volumetric_fog.default_shader_rd = volumetric_fog.shader.version_get_shader(md->shader_data->version, 0);
|
||||
|
||||
Vector<RD::Uniform> uniforms;
|
||||
|
|
|
|||
|
|
@ -91,7 +91,7 @@ void RendererSceneSkyRD::SkyShaderData::set_code(const String &p_code) {
|
|||
actions.uniforms = &uniforms;
|
||||
|
||||
// !BAS! Contemplate making `SkyShader sky` accessible from this struct or even part of this struct.
|
||||
RendererSceneRenderRD *scene_singleton = (RendererSceneRenderRD *)RendererSceneRenderRD::singleton;
|
||||
RendererSceneRenderRD *scene_singleton = static_cast<RendererSceneRenderRD *>(RendererSceneRenderRD::singleton);
|
||||
|
||||
Error err = scene_singleton->sky.sky_shader.compiler.compile(RS::SHADER_SKY, code, &actions, path, gen_code);
|
||||
ERR_FAIL_COND_MSG(err != OK, "Shader compilation failed.");
|
||||
|
|
@ -219,7 +219,7 @@ Variant RendererSceneSkyRD::SkyShaderData::get_default_parameter(const StringNam
|
|||
}
|
||||
|
||||
RS::ShaderNativeSourceCode RendererSceneSkyRD::SkyShaderData::get_native_source_code() const {
|
||||
RendererSceneRenderRD *scene_singleton = (RendererSceneRenderRD *)RendererSceneRenderRD::singleton;
|
||||
RendererSceneRenderRD *scene_singleton = static_cast<RendererSceneRenderRD *>(RendererSceneRenderRD::singleton);
|
||||
|
||||
return scene_singleton->sky.sky_shader.shader.version_get_native_source_code(version);
|
||||
}
|
||||
|
|
@ -229,7 +229,7 @@ RendererSceneSkyRD::SkyShaderData::SkyShaderData() {
|
|||
}
|
||||
|
||||
RendererSceneSkyRD::SkyShaderData::~SkyShaderData() {
|
||||
RendererSceneRenderRD *scene_singleton = (RendererSceneRenderRD *)RendererSceneRenderRD::singleton;
|
||||
RendererSceneRenderRD *scene_singleton = static_cast<RendererSceneRenderRD *>(RendererSceneRenderRD::singleton);
|
||||
ERR_FAIL_COND(!scene_singleton);
|
||||
//pipeline variants will clear themselves if shader is gone
|
||||
if (version.is_valid()) {
|
||||
|
|
@ -241,7 +241,7 @@ RendererSceneSkyRD::SkyShaderData::~SkyShaderData() {
|
|||
// Sky material
|
||||
|
||||
bool RendererSceneSkyRD::SkyMaterialData::update_parameters(const Map<StringName, Variant> &p_parameters, bool p_uniform_dirty, bool p_textures_dirty) {
|
||||
RendererSceneRenderRD *scene_singleton = (RendererSceneRenderRD *)RendererSceneRenderRD::singleton;
|
||||
RendererSceneRenderRD *scene_singleton = static_cast<RendererSceneRenderRD *>(RendererSceneRenderRD::singleton);
|
||||
|
||||
uniform_set_updated = true;
|
||||
|
||||
|
|
@ -916,7 +916,7 @@ void sky() {
|
|||
|
||||
material_storage->material_set_shader(sky_shader.default_material, sky_shader.default_shader);
|
||||
|
||||
SkyMaterialData *md = (SkyMaterialData *)material_storage->material_get_data(sky_shader.default_material, RendererRD::SHADER_TYPE_SKY);
|
||||
SkyMaterialData *md = static_cast<SkyMaterialData *>(material_storage->material_get_data(sky_shader.default_material, RendererRD::SHADER_TYPE_SKY));
|
||||
sky_shader.default_shader_rd = sky_shader.shader.version_get_shader(md->shader_data->version, SKY_VERSION_BACKGROUND);
|
||||
|
||||
sky_scene_state.uniform_buffer = RD::get_singleton()->uniform_buffer_create(sizeof(SkySceneState::UBO));
|
||||
|
|
@ -1059,7 +1059,7 @@ RendererSceneSkyRD::~RendererSceneSkyRD() {
|
|||
// cleanup anything created in init...
|
||||
RendererRD::MaterialStorage *material_storage = RendererRD::MaterialStorage::get_singleton();
|
||||
|
||||
SkyMaterialData *md = (SkyMaterialData *)material_storage->material_get_data(sky_shader.default_material, RendererRD::SHADER_TYPE_SKY);
|
||||
SkyMaterialData *md = static_cast<SkyMaterialData *>(material_storage->material_get_data(sky_shader.default_material, RendererRD::SHADER_TYPE_SKY));
|
||||
sky_shader.shader.version_free(md->shader_data->version);
|
||||
RD::get_singleton()->free(sky_scene_state.directional_light_buffer);
|
||||
RD::get_singleton()->free(sky_scene_state.uniform_buffer);
|
||||
|
|
@ -1100,7 +1100,7 @@ void RendererSceneSkyRD::setup(RendererSceneEnvironmentRD *p_env, RID p_render_b
|
|||
sky_material = sky_get_material(p_env->sky);
|
||||
|
||||
if (sky_material.is_valid()) {
|
||||
material = (SkyMaterialData *)material_storage->material_get_data(sky_material, RendererRD::SHADER_TYPE_SKY);
|
||||
material = static_cast<SkyMaterialData *>(material_storage->material_get_data(sky_material, RendererRD::SHADER_TYPE_SKY));
|
||||
if (!material || !material->shader_data->valid) {
|
||||
material = nullptr;
|
||||
}
|
||||
|
|
@ -1108,7 +1108,7 @@ void RendererSceneSkyRD::setup(RendererSceneEnvironmentRD *p_env, RID p_render_b
|
|||
|
||||
if (!material) {
|
||||
sky_material = sky_shader.default_material;
|
||||
material = (SkyMaterialData *)material_storage->material_get_data(sky_material, RendererRD::SHADER_TYPE_SKY);
|
||||
material = static_cast<SkyMaterialData *>(material_storage->material_get_data(sky_material, RendererRD::SHADER_TYPE_SKY));
|
||||
}
|
||||
|
||||
ERR_FAIL_COND(!material);
|
||||
|
|
@ -1308,7 +1308,7 @@ void RendererSceneSkyRD::update(RendererSceneEnvironmentRD *p_env, const CameraM
|
|||
SkyMaterialData *material = nullptr;
|
||||
|
||||
if (sky_material.is_valid()) {
|
||||
material = (SkyMaterialData *)material_storage->material_get_data(sky_material, RendererRD::SHADER_TYPE_SKY);
|
||||
material = static_cast<SkyMaterialData *>(material_storage->material_get_data(sky_material, RendererRD::SHADER_TYPE_SKY));
|
||||
if (!material || !material->shader_data->valid) {
|
||||
material = nullptr;
|
||||
}
|
||||
|
|
@ -1316,7 +1316,7 @@ void RendererSceneSkyRD::update(RendererSceneEnvironmentRD *p_env, const CameraM
|
|||
|
||||
if (!material) {
|
||||
sky_material = sky_shader.default_material;
|
||||
material = (SkyMaterialData *)material_storage->material_get_data(sky_material, RendererRD::SHADER_TYPE_SKY);
|
||||
material = static_cast<SkyMaterialData *>(material_storage->material_get_data(sky_material, RendererRD::SHADER_TYPE_SKY));
|
||||
}
|
||||
|
||||
ERR_FAIL_COND(!material);
|
||||
|
|
@ -1484,7 +1484,7 @@ void RendererSceneSkyRD::draw(RendererSceneEnvironmentRD *p_env, bool p_can_cont
|
|||
sky_material = sky_get_material(p_env->sky);
|
||||
|
||||
if (sky_material.is_valid()) {
|
||||
material = (SkyMaterialData *)material_storage->material_get_data(sky_material, RendererRD::SHADER_TYPE_SKY);
|
||||
material = static_cast<SkyMaterialData *>(material_storage->material_get_data(sky_material, RendererRD::SHADER_TYPE_SKY));
|
||||
if (!material || !material->shader_data->valid) {
|
||||
material = nullptr;
|
||||
}
|
||||
|
|
@ -1492,13 +1492,13 @@ void RendererSceneSkyRD::draw(RendererSceneEnvironmentRD *p_env, bool p_can_cont
|
|||
|
||||
if (!material) {
|
||||
sky_material = sky_shader.default_material;
|
||||
material = (SkyMaterialData *)material_storage->material_get_data(sky_material, RendererRD::SHADER_TYPE_SKY);
|
||||
material = static_cast<SkyMaterialData *>(material_storage->material_get_data(sky_material, RendererRD::SHADER_TYPE_SKY));
|
||||
}
|
||||
}
|
||||
|
||||
if (background == RS::ENV_BG_CLEAR_COLOR || background == RS::ENV_BG_COLOR) {
|
||||
sky_material = sky_scene_state.fog_material;
|
||||
material = (SkyMaterialData *)material_storage->material_get_data(sky_material, RendererRD::SHADER_TYPE_SKY);
|
||||
material = static_cast<SkyMaterialData *>(material_storage->material_get_data(sky_material, RendererRD::SHADER_TYPE_SKY));
|
||||
}
|
||||
|
||||
ERR_FAIL_COND(!material);
|
||||
|
|
@ -1588,7 +1588,7 @@ void RendererSceneSkyRD::update_res_buffers(RendererSceneEnvironmentRD *p_env, u
|
|||
sky_material = sky_get_material(p_env->sky);
|
||||
|
||||
if (sky_material.is_valid()) {
|
||||
material = (SkyMaterialData *)material_storage->material_get_data(sky_material, RendererRD::SHADER_TYPE_SKY);
|
||||
material = static_cast<SkyMaterialData *>(material_storage->material_get_data(sky_material, RendererRD::SHADER_TYPE_SKY));
|
||||
if (!material || !material->shader_data->valid) {
|
||||
material = nullptr;
|
||||
}
|
||||
|
|
@ -1596,7 +1596,7 @@ void RendererSceneSkyRD::update_res_buffers(RendererSceneEnvironmentRD *p_env, u
|
|||
|
||||
if (!material) {
|
||||
sky_material = sky_shader.default_material;
|
||||
material = (SkyMaterialData *)material_storage->material_get_data(sky_material, RendererRD::SHADER_TYPE_SKY);
|
||||
material = static_cast<SkyMaterialData *>(material_storage->material_get_data(sky_material, RendererRD::SHADER_TYPE_SKY));
|
||||
}
|
||||
|
||||
ERR_FAIL_COND(!material);
|
||||
|
|
@ -1676,7 +1676,7 @@ void RendererSceneSkyRD::draw(RD::DrawListID p_draw_list, RendererSceneEnvironme
|
|||
sky_material = sky_get_material(p_env->sky);
|
||||
|
||||
if (sky_material.is_valid()) {
|
||||
material = (SkyMaterialData *)material_storage->material_get_data(sky_material, RendererRD::SHADER_TYPE_SKY);
|
||||
material = static_cast<SkyMaterialData *>(material_storage->material_get_data(sky_material, RendererRD::SHADER_TYPE_SKY));
|
||||
if (!material || !material->shader_data->valid) {
|
||||
material = nullptr;
|
||||
}
|
||||
|
|
@ -1684,13 +1684,13 @@ void RendererSceneSkyRD::draw(RD::DrawListID p_draw_list, RendererSceneEnvironme
|
|||
|
||||
if (!material) {
|
||||
sky_material = sky_shader.default_material;
|
||||
material = (SkyMaterialData *)material_storage->material_get_data(sky_material, RendererRD::SHADER_TYPE_SKY);
|
||||
material = static_cast<SkyMaterialData *>(material_storage->material_get_data(sky_material, RendererRD::SHADER_TYPE_SKY));
|
||||
}
|
||||
}
|
||||
|
||||
if (background == RS::ENV_BG_CLEAR_COLOR || background == RS::ENV_BG_COLOR) {
|
||||
sky_material = sky_scene_state.fog_material;
|
||||
material = (SkyMaterialData *)material_storage->material_get_data(sky_material, RendererRD::SHADER_TYPE_SKY);
|
||||
material = static_cast<SkyMaterialData *>(material_storage->material_get_data(sky_material, RendererRD::SHADER_TYPE_SKY));
|
||||
}
|
||||
|
||||
ERR_FAIL_COND(!material);
|
||||
|
|
|
|||
|
|
@ -421,7 +421,7 @@ void RendererStorageRD::_particles_allocate_emission_buffer(Particles *particles
|
|||
|
||||
particles->emission_buffer_data.resize(sizeof(ParticleEmissionBuffer::Data) * particles->amount + sizeof(uint32_t) * 4);
|
||||
memset(particles->emission_buffer_data.ptrw(), 0, particles->emission_buffer_data.size());
|
||||
particles->emission_buffer = (ParticleEmissionBuffer *)particles->emission_buffer_data.ptrw();
|
||||
particles->emission_buffer = reinterpret_cast<ParticleEmissionBuffer *>(particles->emission_buffer_data.ptrw());
|
||||
particles->emission_buffer->particle_max = particles->amount;
|
||||
|
||||
particles->emission_storage_buffer = RD::get_singleton()->storage_buffer_create(particles->emission_buffer_data.size(), particles->emission_buffer_data);
|
||||
|
|
@ -997,9 +997,9 @@ void RendererStorageRD::_particles_process(Particles *p_particles, double p_delt
|
|||
|
||||
RD::get_singleton()->buffer_update(p_particles->frame_params_buffer, 0, sizeof(ParticlesFrameParams) * p_particles->trail_params.size(), p_particles->trail_params.ptr());
|
||||
|
||||
ParticlesMaterialData *m = (ParticlesMaterialData *)material_storage->material_get_data(p_particles->process_material, RendererRD::SHADER_TYPE_PARTICLES);
|
||||
ParticlesMaterialData *m = static_cast<ParticlesMaterialData *>(material_storage->material_get_data(p_particles->process_material, RendererRD::SHADER_TYPE_PARTICLES));
|
||||
if (!m) {
|
||||
m = (ParticlesMaterialData *)material_storage->material_get_data(particles_shader.default_material, RendererRD::SHADER_TYPE_PARTICLES);
|
||||
m = static_cast<ParticlesMaterialData *>(material_storage->material_get_data(particles_shader.default_material, RendererRD::SHADER_TYPE_PARTICLES));
|
||||
}
|
||||
|
||||
ERR_FAIL_COND(!m);
|
||||
|
|
@ -4098,7 +4098,7 @@ void process() {
|
|||
material_storage->material_initialize(particles_shader.default_material);
|
||||
material_storage->material_set_shader(particles_shader.default_material, particles_shader.default_shader);
|
||||
|
||||
ParticlesMaterialData *md = (ParticlesMaterialData *)material_storage->material_get_data(particles_shader.default_material, RendererRD::SHADER_TYPE_PARTICLES);
|
||||
ParticlesMaterialData *md = static_cast<ParticlesMaterialData *>(material_storage->material_get_data(particles_shader.default_material, RendererRD::SHADER_TYPE_PARTICLES));
|
||||
particles_shader.default_shader_rd = particles_shader.shader.version_get_shader(md->shader_data->version, 0);
|
||||
|
||||
Vector<RD::Uniform> uniforms;
|
||||
|
|
|
|||
|
|
@ -2813,7 +2813,7 @@ bool ShaderLanguage::_validate_function_call(BlockNode *p_block, const FunctionI
|
|||
|
||||
bool error = false;
|
||||
if (p_func->arguments[arg]->type == Node::TYPE_VARIABLE) {
|
||||
const VariableNode *vn = (VariableNode *)p_func->arguments[arg];
|
||||
const VariableNode *vn = static_cast<VariableNode *>(p_func->arguments[arg]);
|
||||
|
||||
bool is_const = false;
|
||||
ConstantNode::Value value;
|
||||
|
|
@ -2825,7 +2825,7 @@ bool ShaderLanguage::_validate_function_call(BlockNode *p_block, const FunctionI
|
|||
}
|
||||
} else {
|
||||
if (p_func->arguments[arg]->type == Node::TYPE_CONSTANT) {
|
||||
ConstantNode *cn = (ConstantNode *)p_func->arguments[arg];
|
||||
const ConstantNode *cn = static_cast<ConstantNode *>(p_func->arguments[arg]);
|
||||
|
||||
if (cn->get_datatype() == TYPE_INT && cn->values.size() == 1) {
|
||||
int value = cn->values[0].sint;
|
||||
|
|
@ -4132,7 +4132,7 @@ bool ShaderLanguage::_validate_varying_assign(ShaderNode::Varying &p_varying, St
|
|||
bool ShaderLanguage::_check_node_constness(const Node *p_node) const {
|
||||
switch (p_node->type) {
|
||||
case Node::TYPE_OPERATOR: {
|
||||
OperatorNode *op_node = (OperatorNode *)p_node;
|
||||
const OperatorNode *op_node = static_cast<const OperatorNode *>(p_node);
|
||||
for (int i = int(op_node->op == OP_CALL); i < op_node->arguments.size(); i++) {
|
||||
if (!_check_node_constness(op_node->arguments[i])) {
|
||||
return false;
|
||||
|
|
@ -4142,13 +4142,13 @@ bool ShaderLanguage::_check_node_constness(const Node *p_node) const {
|
|||
case Node::TYPE_CONSTANT:
|
||||
break;
|
||||
case Node::TYPE_VARIABLE: {
|
||||
VariableNode *varn = (VariableNode *)p_node;
|
||||
const VariableNode *varn = static_cast<const VariableNode *>(p_node);
|
||||
if (!varn->is_const) {
|
||||
return false;
|
||||
}
|
||||
} break;
|
||||
case Node::TYPE_ARRAY: {
|
||||
ArrayNode *arrn = (ArrayNode *)p_node;
|
||||
const ArrayNode *arrn = static_cast<const ArrayNode *>(p_node);
|
||||
if (!arrn->is_const) {
|
||||
return false;
|
||||
}
|
||||
|
|
@ -5157,7 +5157,7 @@ ShaderLanguage::Node *ShaderLanguage::_parse_expression(BlockNode *p_block, cons
|
|||
}
|
||||
|
||||
if (index_expression->type == Node::TYPE_CONSTANT) {
|
||||
ConstantNode *cnode = (ConstantNode *)index_expression;
|
||||
ConstantNode *cnode = static_cast<ConstantNode *>(index_expression);
|
||||
if (cnode) {
|
||||
if (!cnode->values.is_empty()) {
|
||||
int value = cnode->values[0].sint;
|
||||
|
|
@ -5619,7 +5619,7 @@ ShaderLanguage::Node *ShaderLanguage::_parse_expression(BlockNode *p_block, cons
|
|||
}
|
||||
|
||||
if (index_expression->type == Node::TYPE_CONSTANT) {
|
||||
ConstantNode *cnode = (ConstantNode *)index_expression;
|
||||
ConstantNode *cnode = static_cast<ConstantNode *>(index_expression);
|
||||
if (cnode) {
|
||||
if (!cnode->values.is_empty()) {
|
||||
int value = cnode->values[0].sint;
|
||||
|
|
@ -6702,7 +6702,7 @@ Error ShaderLanguage::_parse_block(BlockNode *p_block, const FunctionInfo &p_fun
|
|||
return ERR_PARSE_ERROR;
|
||||
}
|
||||
|
||||
if (is_const && n->type == Node::TYPE_OPERATOR && ((OperatorNode *)n)->op == OP_CALL) {
|
||||
if (is_const && n->type == Node::TYPE_OPERATOR && static_cast<OperatorNode *>(n)->op == OP_CALL) {
|
||||
_set_error(RTR("Expected a constant expression."));
|
||||
return ERR_PARSE_ERROR;
|
||||
}
|
||||
|
|
@ -6758,8 +6758,8 @@ Error ShaderLanguage::_parse_block(BlockNode *p_block, const FunctionInfo &p_fun
|
|||
if (!n) {
|
||||
return ERR_PARSE_ERROR;
|
||||
}
|
||||
if (is_const && n->type == Node::TYPE_OPERATOR && ((OperatorNode *)n)->op == OP_CALL) {
|
||||
OperatorNode *op = ((OperatorNode *)n);
|
||||
if (is_const && n->type == Node::TYPE_OPERATOR && static_cast<OperatorNode *>(n)->op == OP_CALL) {
|
||||
OperatorNode *op = static_cast<OperatorNode *>(n);
|
||||
for (int i = 1; i < op->arguments.size(); i++) {
|
||||
if (!_check_node_constness(op->arguments[i])) {
|
||||
_set_error(vformat(RTR("Expected constant expression for argument %d of function call after '='."), i - 1));
|
||||
|
|
@ -6803,7 +6803,7 @@ Error ShaderLanguage::_parse_block(BlockNode *p_block, const FunctionInfo &p_fun
|
|||
}
|
||||
} while (tk.type == TK_COMMA); //another variable
|
||||
|
||||
p_block->statements.push_back((Node *)vdnode);
|
||||
p_block->statements.push_back(static_cast<Node *>(vdnode));
|
||||
} else if (tk.type == TK_CURLY_BRACKET_OPEN) {
|
||||
//a sub block, just because..
|
||||
BlockNode *block = alloc_node<BlockNode>();
|
||||
|
|
@ -6925,7 +6925,7 @@ Error ShaderLanguage::_parse_block(BlockNode *p_block, const FunctionInfo &p_fun
|
|||
} else {
|
||||
Set<int> constants;
|
||||
for (int i = 0; i < switch_block->statements.size(); i++) { // Checks for duplicates.
|
||||
ControlFlowNode *flow = (ControlFlowNode *)switch_block->statements[i];
|
||||
ControlFlowNode *flow = static_cast<ControlFlowNode *>(switch_block->statements[i]);
|
||||
if (flow) {
|
||||
if (flow->flow_op == FLOW_OP_CASE) {
|
||||
if (flow->expressions[0]->type == Node::TYPE_CONSTANT) {
|
||||
|
|
@ -8467,7 +8467,7 @@ Error ShaderLanguage::_parse_shader(const Map<StringName, FunctionInfo> &p_funct
|
|||
return ERR_PARSE_ERROR;
|
||||
}
|
||||
|
||||
if (n->type == Node::TYPE_OPERATOR && ((OperatorNode *)n)->op == OP_CALL) {
|
||||
if (n->type == Node::TYPE_OPERATOR && static_cast<OperatorNode *>(n)->op == OP_CALL) {
|
||||
_set_error(RTR("Expected constant expression."));
|
||||
return ERR_PARSE_ERROR;
|
||||
}
|
||||
|
|
@ -8523,8 +8523,8 @@ Error ShaderLanguage::_parse_shader(const Map<StringName, FunctionInfo> &p_funct
|
|||
if (!expr) {
|
||||
return ERR_PARSE_ERROR;
|
||||
}
|
||||
if (expr->type == Node::TYPE_OPERATOR && ((OperatorNode *)expr)->op == OP_CALL) {
|
||||
OperatorNode *op = ((OperatorNode *)expr);
|
||||
if (expr->type == Node::TYPE_OPERATOR && static_cast<OperatorNode *>(expr)->op == OP_CALL) {
|
||||
OperatorNode *op = static_cast<OperatorNode *>(expr);
|
||||
for (int i = 1; i < op->arguments.size(); i++) {
|
||||
if (!_check_node_constness(op->arguments[i])) {
|
||||
_set_error(vformat(RTR("Expected constant expression for argument %d of function call after '='."), i - 1));
|
||||
|
|
@ -8861,7 +8861,7 @@ Error ShaderLanguage::_find_last_flow_op_in_op(ControlFlowNode *p_flow, FlowOper
|
|||
|
||||
for (int i = p_flow->blocks.size() - 1; i >= 0; i--) {
|
||||
if (p_flow->blocks[i]->type == Node::TYPE_BLOCK) {
|
||||
BlockNode *last_block = (BlockNode *)p_flow->blocks[i];
|
||||
BlockNode *last_block = static_cast<BlockNode *>(p_flow->blocks[i]);
|
||||
if (_find_last_flow_op_in_block(last_block, p_op) == OK) {
|
||||
found = true;
|
||||
break;
|
||||
|
|
@ -8879,7 +8879,7 @@ Error ShaderLanguage::_find_last_flow_op_in_block(BlockNode *p_block, FlowOperat
|
|||
|
||||
for (int i = p_block->statements.size() - 1; i >= 0; i--) {
|
||||
if (p_block->statements[i]->type == Node::TYPE_CONTROL_FLOW) {
|
||||
ControlFlowNode *flow = (ControlFlowNode *)p_block->statements[i];
|
||||
ControlFlowNode *flow = static_cast<ControlFlowNode *>(p_block->statements[i]);
|
||||
if (flow->flow_op == p_op) {
|
||||
found = true;
|
||||
break;
|
||||
|
|
@ -8890,7 +8890,7 @@ Error ShaderLanguage::_find_last_flow_op_in_block(BlockNode *p_block, FlowOperat
|
|||
}
|
||||
}
|
||||
} else if (p_block->statements[i]->type == Node::TYPE_BLOCK) {
|
||||
BlockNode *block = (BlockNode *)p_block->statements[i];
|
||||
BlockNode *block = static_cast<BlockNode *>(p_block->statements[i]);
|
||||
if (_find_last_flow_op_in_block(block, p_op) == OK) {
|
||||
found = true;
|
||||
break;
|
||||
|
|
|
|||
|
|
@ -979,7 +979,6 @@ Error RenderingServer::mesh_create_surface_data_from_arrays(SurfaceData *r_surfa
|
|||
ERR_FAIL_COND_V_MSG(err != OK, ERR_INVALID_DATA, "Invalid array format for surface.");
|
||||
|
||||
Vector<uint8_t> blend_shape_data;
|
||||
uint32_t blend_shape_count = 0;
|
||||
|
||||
if (p_blend_shapes.size()) {
|
||||
uint32_t bs_format = format & RS::ARRAY_FORMAT_BLEND_SHAPE_MASK;
|
||||
|
|
@ -996,7 +995,6 @@ Error RenderingServer::mesh_create_surface_data_from_arrays(SurfaceData *r_surfa
|
|||
ERR_FAIL_COND_V_MSG(err2 != OK, ERR_INVALID_DATA, "Invalid blend shape array format for surface.");
|
||||
|
||||
blend_shape_data.append_array(vertex_array_shape);
|
||||
blend_shape_count++;
|
||||
}
|
||||
}
|
||||
Vector<SurfaceData::LOD> lods;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue