Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'source/blender/render/extern')
-rw-r--r--source/blender/render/extern/include/RE_bake.h3
-rw-r--r--source/blender/render/extern/include/RE_engine.h18
-rw-r--r--source/blender/render/extern/include/RE_pipeline.h13
-rw-r--r--source/blender/render/extern/include/RE_render_ext.h22
-rw-r--r--source/blender/render/extern/include/RE_shader_ext.h8
5 files changed, 40 insertions, 24 deletions
diff --git a/source/blender/render/extern/include/RE_bake.h b/source/blender/render/extern/include/RE_bake.h
index 372defbe8db..3bab9179f84 100644
--- a/source/blender/render/extern/include/RE_bake.h
+++ b/source/blender/render/extern/include/RE_bake.h
@@ -67,7 +67,7 @@ bool RE_bake_engine(struct Render *re,
struct Object *object,
const int object_id,
const BakePixel pixel_array[],
- const size_t num_pixels,
+ const BakeImages *bake_images,
const int depth,
const eScenePassType pass_type,
const int pass_filter,
@@ -84,6 +84,7 @@ bool RE_bake_pixels_populate_from_objects(struct Mesh *me_low,
const size_t num_pixels,
const bool is_custom_cage,
const float cage_extrusion,
+ const float max_ray_distance,
float mat_low[4][4],
float mat_cage[4][4],
struct Mesh *me_cage);
diff --git a/source/blender/render/extern/include/RE_engine.h b/source/blender/render/extern/include/RE_engine.h
index 0b5b62e2f08..77a60854616 100644
--- a/source/blender/render/extern/include/RE_engine.h
+++ b/source/blender/render/extern/include/RE_engine.h
@@ -68,7 +68,6 @@ struct bNodeTree;
#define RE_ENGINE_DO_UPDATE 8
#define RE_ENGINE_RENDERING 16
#define RE_ENGINE_HIGHLIGHT_TILES 32
-#define RE_ENGINE_USED_FOR_VIEWPORT 64
extern ListBase R_engines;
@@ -87,11 +86,8 @@ typedef struct RenderEngineType {
struct Object *object,
const int pass_type,
const int pass_filter,
- const int object_id,
- const struct BakePixel *pixel_array,
- const int num_pixels,
- const int depth,
- void *result);
+ const int width,
+ const int height);
void (*view_update)(struct RenderEngine *engine,
const struct bContext *context,
@@ -110,7 +106,7 @@ typedef struct RenderEngineType {
struct DrawEngineType *draw_engine;
/* RNA integration */
- ExtensionRNA ext;
+ ExtensionRNA rna_ext;
} RenderEngineType;
typedef void (*update_render_passes_cb_t)(void *userdata,
@@ -140,6 +136,13 @@ typedef struct RenderEngine {
struct ReportList *reports;
+ struct {
+ const struct BakePixel *pixels;
+ float *result;
+ int width, height, depth;
+ int object_id;
+ } bake;
+
/* Depsgraph */
struct Depsgraph *depsgraph;
@@ -155,7 +158,6 @@ typedef struct RenderEngine {
} RenderEngine;
RenderEngine *RE_engine_create(RenderEngineType *type);
-RenderEngine *RE_engine_create_ex(RenderEngineType *type, bool use_for_viewport);
void RE_engine_free(RenderEngine *engine);
void RE_layer_load_from_file(
diff --git a/source/blender/render/extern/include/RE_pipeline.h b/source/blender/render/extern/include/RE_pipeline.h
index 319d8b1c2ed..f9d2e915fad 100644
--- a/source/blender/render/extern/include/RE_pipeline.h
+++ b/source/blender/render/extern/include/RE_pipeline.h
@@ -40,6 +40,10 @@ struct StampData;
struct ViewLayer;
struct bMovieHandle;
+#ifdef __cplusplus
+extern "C" {
+#endif
+
/* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */
/* this include is what is exposed of render to outside world */
/* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */
@@ -156,8 +160,7 @@ typedef struct RenderResult {
typedef struct RenderStats {
int cfra;
- int totface, totvert, totstrand, tothalo, totlamp, totpart;
- short curfield, curblur, curpart, partsdone, convertdone, curfsa;
+ int totface, totvert, totlamp, totpart;
bool localview;
double starttime, lastframetime;
const char *infostr, *statstr;
@@ -363,7 +366,7 @@ struct RenderPass *RE_pass_find_by_type(volatile struct RenderLayer *rl,
#define RE_BAKE_DISPLACEMENT 1
#define RE_BAKE_AO 2
-void RE_GetCameraWindow(struct Render *re, struct Object *camera, int frame, float mat[4][4]);
+void RE_GetCameraWindow(struct Render *re, struct Object *camera, float mat[4][4]);
void RE_GetCameraWindowWithOverscan(struct Render *re, float mat[4][4], float overscan);
void RE_GetCameraModelMatrix(struct Render *re, struct Object *camera, float r_mat[4][4]);
struct Scene *RE_GetScene(struct Render *re);
@@ -386,4 +389,8 @@ struct RenderView *RE_RenderViewGetByName(struct RenderResult *res, const char *
RenderResult *RE_DuplicateRenderResult(RenderResult *rr);
+#ifdef __cplusplus
+}
+#endif
+
#endif /* __RE_PIPELINE_H__ */
diff --git a/source/blender/render/extern/include/RE_render_ext.h b/source/blender/render/extern/include/RE_render_ext.h
index bca3b749192..bdf81354b8d 100644
--- a/source/blender/render/extern/include/RE_render_ext.h
+++ b/source/blender/render/extern/include/RE_render_ext.h
@@ -33,18 +33,16 @@ struct ImagePool;
struct MTex;
/* render_texture.c */
-/* used by particle.c, effect.c, editmesh_modes.c and brush.c, returns 1 if rgb, 0 otherwise */
-int externtex(const struct MTex *mtex,
- const float vec[3],
- float *tin,
- float *tr,
- float *tg,
- float *tb,
- float *ta,
- const int thread,
- struct ImagePool *pool,
- const bool skip_load_image,
- const bool texnode_preview);
+bool RE_texture_evaluate(const struct MTex *mtex,
+ const float vec[3],
+ const int thread,
+ struct ImagePool *pool,
+ const bool skip_load_image,
+ const bool texnode_preview,
+ /* Return arguments. */
+ float *r_intensity,
+ float r_rgba[4]) ATTR_NONNULL(1, 2, 7, 8);
+
void texture_rgb_blend(
float in[3], const float tex[3], const float out[3], float fact, float facg, int blendtype);
float texture_value_blend(float tex, float out, float fact, float facg, int blendtype);
diff --git a/source/blender/render/extern/include/RE_shader_ext.h b/source/blender/render/extern/include/RE_shader_ext.h
index 792b2b7e071..f69ae4dfd5c 100644
--- a/source/blender/render/extern/include/RE_shader_ext.h
+++ b/source/blender/render/extern/include/RE_shader_ext.h
@@ -23,6 +23,10 @@
#ifndef __RE_SHADER_EXT_H__
#define __RE_SHADER_EXT_H__
+#ifdef __cplusplus
+extern "C" {
+#endif
+
/* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */
/* this include is for texture exports */
/* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */
@@ -75,4 +79,8 @@ int multitex_nodes(struct Tex *tex,
struct MTex *mtex,
struct ImagePool *pool);
+#ifdef __cplusplus
+}
+#endif
+
#endif /* __RE_SHADER_EXT_H__ */