Blender V4.5
draw_common_c.hh
Go to the documentation of this file.
1/* SPDX-FileCopyrightText: 2016 Blender Authors
2 *
3 * SPDX-License-Identifier: GPL-2.0-or-later */
4
8
9#pragma once
10
12struct GPUMaterial;
13struct GPUTexture;
14struct GPUUniformBuf;
15
16namespace blender::gpu {
17class VertBuf;
18}
19struct ModifierData;
20struct Object;
21struct ParticleSystem;
22struct RegionView3D;
23struct ViewLayer;
24struct Scene;
25struct DRWData;
26namespace blender::draw {
27class Manager;
28struct CurvesModule;
29struct PointCloudModule;
30struct VolumeModule;
31struct ObjectRef;
32} // namespace blender::draw
33
34/* draw_hair.cc */
35
40 ParticleSystem *psys,
41 ModifierData *md);
43 ParticleSystem *psys,
44 ModifierData *md,
45 float (*dupli_mat)[4]);
46
47/* draw_curves.cc */
48
49namespace blender::draw {
50
54gpu::VertBuf *DRW_curves_pos_buffer_get(Object *object);
55
56/* If drw_data is nullptr, DST global is accessed to get it. */
57void DRW_curves_init(DRWData *drw_data = nullptr);
58void DRW_curves_begin_sync(DRWData *drw_data);
59void DRW_curves_module_free(draw::CurvesModule *module);
60void DRW_curves_update(draw::Manager &manager);
61
62/* draw_pointcloud.cc */
63
64/* If drw_data is nullptr, DST global is accessed to get it. */
65void DRW_pointcloud_init(DRWData *drw_data = nullptr);
66void DRW_pointcloud_module_free(draw::PointCloudModule *module);
67
68/* draw_volume.cc */
69
70/* If drw_data is nullptr, DST global is accessed to get it. */
71void DRW_volume_init(DRWData *drw_data = nullptr);
72void DRW_volume_module_free(draw::VolumeModule *module);
73
74} // namespace blender::draw
75
76/* `draw_fluid.cc` */
77
78/* Fluid simulation. */
79void DRW_smoke_ensure(FluidModifierData *fmd, int highres);
84
86
87void DRW_smoke_begin_sync(DRWData *drw_data);
88void DRW_smoke_exit(DRWData *drw_data);
struct Object Object
blender::gpu::VertBuf * DRW_hair_pos_buffer_get(Object *object, ParticleSystem *psys, ModifierData *md)
Definition draw_hair.cc:85
void DRW_fluid_ensure_flags(FluidModifierData *fmd)
void DRW_hair_duplimat_get(const blender::draw::ObjectRef &ob_ref, ParticleSystem *psys, ModifierData *md, float(*dupli_mat)[4])
Definition draw_hair.cc:101
void DRW_smoke_begin_sync(DRWData *drw_data)
void DRW_smoke_ensure_coba_field(FluidModifierData *fmd)
void DRW_fluid_ensure_range_field(FluidModifierData *fmd)
void DRW_smoke_ensure(FluidModifierData *fmd, int highres)
void DRW_smoke_ensure_velocity(FluidModifierData *fmd)
void DRW_smoke_exit(DRWData *drw_data)
void DRW_smoke_free(FluidModifierData *fmd)
void DRW_curves_module_free(draw::CurvesModule *module)
void DRW_pointcloud_module_free(draw::PointCloudModule *module)
void DRW_curves_init(DRWData *drw_data=nullptr)
void DRW_curves_update(draw::Manager &manager)
void DRW_volume_init(DRWData *drw_data=nullptr)
void DRW_curves_begin_sync(DRWData *drw_data)
void DRW_pointcloud_init(DRWData *drw_data=nullptr)
void DRW_volume_module_free(draw::VolumeModule *module)
gpu::VertBuf * DRW_curves_pos_buffer_get(Object *object)
static struct PyModuleDef module
Definition python.cpp:796