Add Chromium-only Blender WebEngine parity work
This commit is contained in:
74
blender-5.2.0/source/blender/blenkernel/BKE_lightprobe.h
Normal file
74
blender-5.2.0/source/blender/blenkernel/BKE_lightprobe.h
Normal file
@@ -0,0 +1,74 @@
|
||||
/* SPDX-FileCopyrightText: Blender Authors
|
||||
*
|
||||
* SPDX-License-Identifier: GPL-2.0-or-later */
|
||||
|
||||
#pragma once
|
||||
|
||||
/** \file
|
||||
* \ingroup bke
|
||||
* \brief General operations for probes.
|
||||
*/
|
||||
|
||||
#include "BLI_sys_types.h"
|
||||
|
||||
namespace blender {
|
||||
|
||||
struct LightProbe;
|
||||
struct Main;
|
||||
struct BlendWriter;
|
||||
struct BlendDataReader;
|
||||
struct LightProbeObjectCache;
|
||||
struct LightProbeGridCacheFrame;
|
||||
struct Object;
|
||||
|
||||
enum eLightProbeType : char;
|
||||
|
||||
void BKE_lightprobe_type_set(struct LightProbe *probe, eLightProbeType lightprobe_type);
|
||||
struct LightProbe *BKE_lightprobe_add(struct Main *bmain, const char *name);
|
||||
|
||||
void BKE_lightprobe_cache_blend_write(struct BlendWriter *writer,
|
||||
struct LightProbeObjectCache *cache);
|
||||
|
||||
void BKE_lightprobe_cache_blend_read(struct BlendDataReader *reader,
|
||||
struct LightProbeObjectCache *cache);
|
||||
|
||||
/**
|
||||
* Create a single empty irradiance grid cache.
|
||||
*/
|
||||
struct LightProbeGridCacheFrame *BKE_lightprobe_grid_cache_frame_create();
|
||||
|
||||
/**
|
||||
* Create a copy of a cache frame.
|
||||
* This does not include the in-progress baking data.
|
||||
*/
|
||||
LightProbeGridCacheFrame *BKE_lightprobe_grid_cache_frame_copy(LightProbeGridCacheFrame *src);
|
||||
|
||||
/**
|
||||
* Free a single grid cache.
|
||||
*/
|
||||
void BKE_lightprobe_grid_cache_frame_free(struct LightProbeGridCacheFrame *cache);
|
||||
|
||||
/**
|
||||
* Create the grid cache list depending on the lightprobe baking settings.
|
||||
* The list is left empty to be filled by the baking process.
|
||||
*/
|
||||
void BKE_lightprobe_cache_create(struct Object *object);
|
||||
|
||||
/**
|
||||
* Create a copy of a whole cache.
|
||||
* This does not include the in-progress baking data.
|
||||
*/
|
||||
LightProbeObjectCache *BKE_lightprobe_cache_copy(LightProbeObjectCache *src_cache);
|
||||
|
||||
/**
|
||||
* Free all irradiance grids allocated for the given object.
|
||||
*/
|
||||
void BKE_lightprobe_cache_free(struct Object *object);
|
||||
|
||||
/**
|
||||
* Return the number of sample stored inside an irradiance cache.
|
||||
* This depends on the light cache type.
|
||||
*/
|
||||
int64_t BKE_lightprobe_grid_cache_frame_sample_count(const struct LightProbeGridCacheFrame *cache);
|
||||
|
||||
} // namespace blender
|
||||
Reference in New Issue
Block a user