#ifndef PROC_NODES_PROC_POINTCLOUD_H
#define PROC_NODES_PROC_POINTCLOUD_H
#include "attribute_storage.h"
#include <godot_cpp/classes/ref_counted.hpp>
#include <godot_cpp/variant/packed_float32_array.hpp>
#include <godot_cpp/variant/packed_vector3_array.hpp>
namespace godot {
class ProcPointCloud : public RefCounted {
GDCLASS(ProcPointCloud, RefCounted);
protected:
static void _bind_methods();
public:
PackedVector3Array positions;
PackedFloat32Array radii;
AttributeStorage point_attrs;
int point_count() const { return positions.size(); }
int domain_size(AttrDomain p_domain) const;
Ref<ProcPointCloud> duplicate_pointcloud() const;
ProcPointCloud() = default;
};
} // namespace godot
#endif // PROC_NODES_PROC_POINTCLOUD_H