diff options
author | Alexander Romanov <a.romanov@blend4web.com> | 2016-01-23 15:27:36 +0300 |
---|---|---|
committer | Alexander Romanov <a.romanov@blend4web.com> | 2016-01-23 15:39:31 +0300 |
commit | a6aaaad9795e80af05e8281030107c32c6a1366b (patch) | |
tree | 187e682a49789f2ccfa459d905e4cee741b884d4 /source/blender/render/extern | |
parent | e9452f909cdba368f54637cd0b15ff14d1c60cf3 (diff) |
Vector Transform node support for GLSL mode and the internal renderer
The Vector Transform node is a useful node which is present in the Cycles renderer.
{F144283}
This patch implements the Vector Transform node for GLSL mode and the internal renderer.
Example: {F273060}
Alexander (Blend4Web Team)
Reviewers: brecht, campbellbarton, sergey
Reviewed By: campbellbarton, sergey
Subscribers: psy-fi, duarteframos, RobM, lightbwk, sergey, AlexKowel, valentin_b4w, Evgeny_Rodygin, yurikovelenov
Projects: #bf_blender:_next
Differential Revision: https://developer.blender.org/D909
Diffstat (limited to 'source/blender/render/extern')
-rw-r--r-- | source/blender/render/extern/include/RE_pipeline.h | 7 | ||||
-rw-r--r-- | source/blender/render/extern/include/RE_shader_ext.h | 16 |
2 files changed, 23 insertions, 0 deletions
diff --git a/source/blender/render/extern/include/RE_pipeline.h b/source/blender/render/extern/include/RE_pipeline.h index 96ac8aa8c5a..ce0691b7632 100644 --- a/source/blender/render/extern/include/RE_pipeline.h +++ b/source/blender/render/extern/include/RE_pipeline.h @@ -363,6 +363,13 @@ bool RE_is_rendering_allowed(struct Scene *scene, struct Object *camera_override bool RE_allow_render_generic_object(struct Object *ob); +/* RE_updateRenderInstances flag */ +enum { + RE_OBJECT_INSTANCES_UPDATE_VIEW = (1 << 0), + RE_OBJECT_INSTANCES_UPDATE_OBMAT = (1 << 1), +}; +void RE_updateRenderInstances(Render *re, int flag); + /******* defined in render_result.c *********/ bool RE_HasFakeLayer(RenderResult *res); diff --git a/source/blender/render/extern/include/RE_shader_ext.h b/source/blender/render/extern/include/RE_shader_ext.h index f78c0aa8cb2..2b07ace26db 100644 --- a/source/blender/render/extern/include/RE_shader_ext.h +++ b/source/blender/render/extern/include/RE_shader_ext.h @@ -220,6 +220,22 @@ float RE_bake_make_derivative(struct ImBuf *ibuf, float *heights_buffer, const c const float height_min, const float height_max, const float fmult); +enum { + RE_OBJECT_INSTANCE_MATRIX_OB, + RE_OBJECT_INSTANCE_MATRIX_OBINV, + RE_OBJECT_INSTANCE_MATRIX_LOCALTOVIEW, + RE_OBJECT_INSTANCE_MATRIX_LOCALTOVIEWINV, +}; + +const float (*RE_object_instance_get_matrix(struct ObjectInstanceRen *obi, int matrix_id))[4]; + +enum { + RE_VIEW_MATRIX, + RE_VIEWINV_MATRIX, +}; + +const float (*RE_render_current_get_matrix(int matrix_id))[4]; + #define BAKE_RESULT_OK 0 #define BAKE_RESULT_NO_OBJECTS 1 #define BAKE_RESULT_FEEDBACK_LOOP 2 |