Blender  V3.3
Classes
draw_cache_impl_metaball.c File Reference

MetaBall API for render engines. More...

#include "MEM_guardedalloc.h"
#include "BLI_math_base.h"
#include "BLI_utildefines.h"
#include "DNA_meta_types.h"
#include "DNA_object_types.h"
#include "BKE_curve.h"
#include "BKE_mball.h"
#include "GPU_batch.h"
#include "DRW_render.h"
#include "draw_cache_impl.h"

Go to the source code of this file.

Classes

struct  MetaBallBatchCache
 

Functions

Public Object/MetaBall API
GPUBatchDRW_metaball_batch_cache_get_triangles_with_normals (Object *ob)
 
GPUBatch ** DRW_metaball_batch_cache_get_surface_shaded (Object *ob, MetaBall *mb, struct GPUMaterial **UNUSED(gpumat_array), uint gpumat_array_len)
 
GPUBatchDRW_metaball_batch_cache_get_wireframes_face (Object *ob)
 
struct GPUBatchDRW_metaball_batch_cache_get_edge_detection (struct Object *ob, bool *r_is_manifold)
 
struct GPUVertBufDRW_mball_batch_cache_pos_vertbuf_get (Object *ob)
 
int DRW_metaball_material_count_get (MetaBall *mb)
 

MetaBall GPUBatch Cache

typedef struct MetaBallBatchCache MetaBallBatchCache
 
static void metaball_batch_cache_clear (MetaBall *mb)
 
static bool metaball_batch_cache_valid (MetaBall *mb)
 
static void metaball_batch_cache_init (MetaBall *mb)
 
void DRW_mball_batch_cache_validate (MetaBall *mb)
 
static MetaBallBatchCachemetaball_batch_cache_get (MetaBall *mb)
 
void DRW_mball_batch_cache_dirty_tag (MetaBall *mb, int mode)
 
void DRW_mball_batch_cache_free (MetaBall *mb)
 
static GPUVertBufmball_batch_cache_get_pos_and_normals (Object *ob, MetaBallBatchCache *cache, const struct Scene *scene)
 
static GPUIndexBufmball_batch_cache_get_edges_adj_lines (Object *ob, MetaBallBatchCache *cache)
 

Detailed Description

MetaBall API for render engines.

Definition in file draw_cache_impl_metaball.c.

Typedef Documentation

◆ MetaBallBatchCache

Function Documentation

◆ DRW_mball_batch_cache_dirty_tag()

void DRW_mball_batch_cache_dirty_tag ( MetaBall mb,
int  mode 
)

◆ DRW_mball_batch_cache_free()

void DRW_mball_batch_cache_free ( MetaBall mb)

◆ DRW_mball_batch_cache_pos_vertbuf_get()

struct GPUVertBuf* DRW_mball_batch_cache_pos_vertbuf_get ( Object ob)

◆ DRW_mball_batch_cache_validate()

void DRW_mball_batch_cache_validate ( MetaBall mb)

◆ DRW_metaball_batch_cache_get_edge_detection()

struct GPUBatch* DRW_metaball_batch_cache_get_edge_detection ( struct Object ob,
bool r_is_manifold 
)

◆ DRW_metaball_batch_cache_get_surface_shaded()

GPUBatch** DRW_metaball_batch_cache_get_surface_shaded ( Object ob,
MetaBall mb,
struct GPUMaterial **  UNUSEDgpumat_array,
uint  gpumat_array_len 
)

◆ DRW_metaball_batch_cache_get_triangles_with_normals()

GPUBatch* DRW_metaball_batch_cache_get_triangles_with_normals ( Object ob)

◆ DRW_metaball_batch_cache_get_wireframes_face()

GPUBatch* DRW_metaball_batch_cache_get_wireframes_face ( Object ob)

◆ DRW_metaball_material_count_get()

int DRW_metaball_material_count_get ( MetaBall mb)

◆ mball_batch_cache_get_edges_adj_lines()

static GPUIndexBuf* mball_batch_cache_get_edges_adj_lines ( Object ob,
MetaBallBatchCache cache 
)
static

◆ mball_batch_cache_get_pos_and_normals()

static GPUVertBuf* mball_batch_cache_get_pos_and_normals ( Object ob,
MetaBallBatchCache cache,
const struct Scene scene 
)
static

◆ metaball_batch_cache_clear()

static void metaball_batch_cache_clear ( MetaBall mb)
static

◆ metaball_batch_cache_get()

static MetaBallBatchCache* metaball_batch_cache_get ( MetaBall mb)
static

◆ metaball_batch_cache_init()

static void metaball_batch_cache_init ( MetaBall mb)
static

◆ metaball_batch_cache_valid()

static bool metaball_batch_cache_valid ( MetaBall mb)
static