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/intern/include/render_types.h')
-rw-r--r--source/blender/render/intern/include/render_types.h24
1 files changed, 20 insertions, 4 deletions
diff --git a/source/blender/render/intern/include/render_types.h b/source/blender/render/intern/include/render_types.h
index e50e498228d..8c106f60e1d 100644
--- a/source/blender/render/intern/include/render_types.h
+++ b/source/blender/render/intern/include/render_types.h
@@ -53,6 +53,8 @@ struct VlakTableNode;
struct GHash;
struct RenderBuckets;
struct ObjectInstanceRen;
+struct RayObject;
+struct RayFace;
#define TABLEINITSIZE 1024
#define LAMPINITSIZE 256
@@ -168,7 +170,10 @@ struct Render
ListBase parts;
/* octree tables and variables for raytrace */
- void *raytree;
+ struct RayObject *raytree;
+ struct RayFace *rayfaces;
+ struct VlakPrimitive *rayprimitives;
+ float maxdist; /* needed for keeping an incorrect behaviour of SUN and HEMI lights (avoid breaking old scenes) */
/* occlusion tree */
void *occlusiontree;
@@ -281,6 +286,13 @@ typedef struct ObjectRen {
int actmtface, actmcol, bakemtface;
float obmat[4][4]; /* only used in convertblender.c, for instancing */
+
+ /* used on makeraytree */
+ struct RayObject *raytree;
+ struct RayFace *rayfaces;
+ struct VlakPrimitive *rayprimitives;
+ struct ObjectInstanceRen *rayobi;
+
} ObjectRen;
typedef struct ObjectInstanceRen {
@@ -300,6 +312,11 @@ typedef struct ObjectInstanceRen {
float *vectors;
int totvector;
+
+ /* used on makeraytree */
+ struct RayObject *raytree;
+ int transform_primitives;
+
} ObjectInstanceRen;
/* ------------------------------------------------------------------------- */
@@ -425,7 +442,7 @@ typedef struct MatInside {
typedef struct VolPrecachePart
{
struct VolPrecachePart *next, *prev;
- struct RayTree *tree;
+ struct RayObject *tree;
struct ShadeInput *shi;
struct ObjectInstanceRen *obi;
int num;
@@ -536,8 +553,7 @@ typedef struct LampRen {
short YF_glowtype;
/* ray optim */
- VlakRen *vlr_last[BLENDER_MAX_THREADS];
- ObjectInstanceRen *obi_last[BLENDER_MAX_THREADS];
+ struct RayObject *last_hit[BLENDER_MAX_THREADS];
struct MTex *mtex[MAX_MTEX];