Blender
V3.3
|
#include <optional>
#include "scene/attribute.h"
#include "scene/pointcloud.h"
#include "scene/scene.h"
#include "blender/sync.h"
#include "blender/util.h"
#include "util/foreach.h"
#include "util/hash.h"
Go to the source code of this file.
Functions | |
template<typename TypeInCycles , typename GetValueAtIndex > | |
static CCL_NAMESPACE_BEGIN void | fill_generic_attribute (BL::PointCloud &b_pointcloud, TypeInCycles *data, const GetValueAtIndex &get_value_at_index) |
static void | attr_create_motion (PointCloud *pointcloud, BL::Attribute &b_attribute, const float motion_scale) |
static void | copy_attributes (PointCloud *pointcloud, BL::PointCloud b_pointcloud, const bool need_motion, const float motion_scale) |
static std::optional< BL::FloatAttribute > | find_radius_attribute (BL::PointCloud b_pointcloud) |
static BL::FloatVectorAttribute | find_position_attribute (BL::PointCloud b_pointcloud) |
static void | export_pointcloud (Scene *scene, PointCloud *pointcloud, BL::PointCloud b_pointcloud, const bool need_motion, const float motion_scale) |
static void | export_pointcloud_motion (PointCloud *pointcloud, BL::PointCloud b_pointcloud, int motion_step) |
|
static |
Definition at line 29 of file blender/pointcloud.cpp.
References AttributeSet::add(), ATTR_STD_MOTION_VERTEX_POSITION, Geometry::attributes, Attribute::data_float3(), AttributeSet::find(), get_float3(), and P().
Referenced by copy_attributes().
|
static |
Definition at line 61 of file blender/pointcloud.cpp.
References AttributeSet::add(), attr_create_motion(), ATTR_ELEMENT_VERTEX, Attribute, Geometry::attributes, data, Attribute::data_float(), Attribute::data_float2(), Attribute::data_float3(), Attribute::data_float4(), element, fill_generic_attribute(), AttributeSet::find(), make_float2, make_float3, make_float4, TypeFloat2(), TypeRGBA(), and v.
Referenced by export_pointcloud(), and export_pointcloud_motion().
|
static |
Definition at line 173 of file blender/pointcloud.cpp.
References Attribute::add(), AttributeSet::add(), PointCloud::add_point(), ATTR_STD_POINT_RANDOM, Geometry::attributes, copy_attributes(), find_position_attribute(), find_radius_attribute(), get_float3(), hash_uint2_to_float(), Geometry::need_attribute(), NULL, PointCloud::reserve(), and scene.
|
static |
Definition at line 210 of file blender/pointcloud.cpp.
References AttributeSet::add(), ATTR_STD_MOTION_VERTEX_POSITION, Geometry::attributes, copy_attributes(), PointCloud::copy_center_to_motion_step(), Attribute::data_float3(), AttributeSet::find(), find_position_attribute(), find_radius_attribute(), get_float3(), min, PointCloud::num_points(), P(), and AttributeSet::remove().
|
static |
Definition at line 19 of file blender/pointcloud.cpp.
References data.
Referenced by copy_attributes().
|
static |
Definition at line 157 of file blender/pointcloud.cpp.
References Attribute.
Referenced by export_pointcloud(), and export_pointcloud_motion().
|
static |
Definition at line 143 of file blender/pointcloud.cpp.
References Attribute.
Referenced by export_pointcloud(), and export_pointcloud_motion().