[Bf-blender-cvs] [10b24eabba] transform-manipulators: Merge branch 'blender2.8' into transform-manipulators
Julian Eisel
noreply at git.blender.org
Sun Feb 12 21:43:33 CET 2017
Commit: 10b24eabbab0193f6944cdf3bec7b386c75d5445
Author: Julian Eisel
Date: Sun Feb 12 21:43:13 2017 +0100
Branches: transform-manipulators
https://developer.blender.org/rB10b24eabbab0193f6944cdf3bec7b386c75d5445
Merge branch 'blender2.8' into transform-manipulators
Conflicts:
source/blender/editors/interface/resources.c
source/blender/editors/space_view3d/view3d_intern.h
source/blender/editors/transform/transform_manipulator.c
source/blender/gpu/CMakeLists.txt
source/blender/gpu/intern/gpu_shader.c
===================================================================
===================================================================
diff --cc source/blender/editors/include/ED_transform.h
index 3dc84dacbf,898eecd3e4..f55d723968
--- a/source/blender/editors/include/ED_transform.h
+++ b/source/blender/editors/include/ED_transform.h
@@@ -102,8 -102,14 +102,8 @@@ enum TfmMode
#define CTX_PAINT_CURVE (1 << 8)
#define CTX_GPENCIL_STROKES (1 << 9)
-/* Standalone call to get the transformation center corresponding to the current situation
- * returns 1 if successful, 0 otherwise (usually means there's no selection)
- * (if 0 is returns, *vec is unmodified)
- * */
-bool calculateTransformCenter(struct bContext *C, int centerMode, float cent3d[3], float cent2d[2]);
-
struct TransInfo;
- struct Base;
+ struct BaseLegacy;
struct Scene;
struct Object;
struct wmOperator;
diff --cc source/blender/editors/interface/resources.c
index 8b8c842b2c,fbfbdb13a5..bf7fc0b8bd
--- a/source/blender/editors/interface/resources.c
+++ b/source/blender/editors/interface/resources.c
@@@ -2818,12 -2880,10 +2863,18 @@@ void init_userdef_do_versions(void
*/
{
for (bTheme *btheme = U.themes.first; btheme; btheme = btheme->next) {
+ btheme->tcollections = btheme->tv3d;
+ rgba_char_args_set_fl(btheme->tcollections.back, 0.42, 0.42, 0.42, 1.0);
+ rgba_char_args_set(btheme->tcollections.hilite, 255, 140, 25, 255); /* selected files */
+ }
++
++ for (bTheme *btheme = U.themes.first; btheme; btheme = btheme->next) {
+ rgba_char_args_set_fl(btheme->tui.xaxis, 1.0f, 0.27f, 0.27f, 1.0f); /* red */
+ rgba_char_args_set_fl(btheme->tui.yaxis, 0.27f, 1.0f, 0.27f, 1.0f); /* green */
+ rgba_char_args_set_fl(btheme->tui.zaxis, 0.27f, 0.27f, 1.0f, 1.0f); /* blue */
+ }
+ /* Flag value has changed */
+ U.tw_flag = V3D_USE_TRANSFORM_MANIPULATORS;
}
if (U.pixelsize == 0.0f)
diff --cc source/blender/editors/space_view3d/view3d_draw.c
index 17622d9dbb,0427498bf4..46ffde7f67
--- a/source/blender/editors/space_view3d/view3d_draw.c
+++ b/source/blender/editors/space_view3d/view3d_draw.c
@@@ -2100,12 -2098,42 +2102,42 @@@ static void view3d_draw_view(const bCon
#endif
}
+ static void view3d_render_pass(const bContext *C, ARegion *UNUSED(ar))
+ {
+ Scene *scene = CTX_data_scene(C);
+ RenderEngineType *type = RE_engines_find(scene->r.engine); /* In the future we should get that from Layers */
+
+ if (type->flag & RE_USE_OGL_PIPELINE) {
+ type->view_draw(NULL, C);
+ }
+ else {
+ // Offline Render engine
+ }
+ }
+
+ static void view3d_draw_view_new(const bContext *C, ARegion *ar, DrawData *UNUSED(draw_data))
+ {
+
+ view3d_draw_setup_view(C, ar);
+
+ /* Only 100% compliant on new spec goes bellow */
+ view3d_render_pass(C, ar);
+
+ view3d_draw_grid(C, ar);
- view3d_draw_manipulator(C);
++ view3d_draw_manipulators(C, ar);
+ view3d_draw_region_info(C, ar);
+ }
+
+
void view3d_main_region_draw(const bContext *C, ARegion *ar)
{
+ Scene *scene = CTX_data_scene(C);
View3D *v3d = CTX_wm_view3d(C);
RegionView3D *rv3d = ar->regiondata;
+ /* TODO layers - In the future we should get RE from Layers */
+ RenderEngineType *type = RE_engines_find(scene->r.engine);
- if (IS_VIEWPORT_LEGACY(v3d)) {
+ if (IS_VIEWPORT_LEGACY(v3d) && ((type->flag & RE_USE_OGL_PIPELINE) == 0)) {
view3d_main_region_draw_legacy(C, ar);
return;
}
diff --cc source/blender/editors/space_view3d/view3d_intern.h
index 21a3f16c51,4b39dc4e8d..5f29e91143
--- a/source/blender/editors/space_view3d/view3d_intern.h
+++ b/source/blender/editors/space_view3d/view3d_intern.h
@@@ -46,7 -47,7 +47,8 @@@ struct bContext
struct bMotionPath;
struct bPoseChannel;
struct Mesh;
+ struct SceneLayer;
+struct wmManipulatorGroupType;
struct wmOperatorType;
struct wmWindowManager;
struct wmKeyConfig;
diff --cc source/blender/editors/transform/transform_orientations.c
index c730afe9e6,67f1dc6e44..efc5517f3e
--- a/source/blender/editors/transform/transform_orientations.c
+++ b/source/blender/editors/transform/transform_orientations.c
@@@ -686,12 -584,12 +686,12 @@@ static unsigned int bm_mesh_faces_selec
}
#endif
-int getTransformOrientation_ex(const bContext *C, float normal[3], float plane[3], const short around)
+int getLocalTransformOrientation_ex(const bContext *C, float normal[3], float plane[3], const short around)
{
- Scene *scene = CTX_data_scene(C);
+ SceneLayer *sl = CTX_data_scene_layer(C);
Object *obedit = CTX_data_edit_object(C);
Base *base;
- Object *ob = OBACT;
+ Object *ob = OBACT_NEW;
int result = ORIENTATION_NONE;
const bool activeOnly = (around == V3D_AROUND_ACTIVE);
diff --cc source/blender/gpu/CMakeLists.txt
index 76b76bb636,8709446bc7..7573985baa
--- a/source/blender/gpu/CMakeLists.txt
+++ b/source/blender/gpu/CMakeLists.txt
@@@ -148,8 -153,15 +153,16 @@@ data_to_c_simple(shaders/gpu_shader_3D_
data_to_c_simple(shaders/gpu_shader_3D_flat_color_vert.glsl SRC)
data_to_c_simple(shaders/gpu_shader_3D_smooth_color_vert.glsl SRC)
data_to_c_simple(shaders/gpu_shader_3D_smooth_color_frag.glsl SRC)
+ data_to_c_simple(shaders/gpu_shader_3D_passthrough_vert.glsl SRC)
+data_to_c_simple(shaders/gpu_shader_3D_clipped_uniform_color_vert.glsl SRC)
+ data_to_c_simple(shaders/gpu_shader_instance_vert.glsl SRC)
+ data_to_c_simple(shaders/gpu_shader_instance_variying_size_variying_color_vert.glsl SRC)
+ data_to_c_simple(shaders/gpu_shader_instance_screenspace_variying_color_vert.glsl SRC)
+
+ data_to_c_simple(shaders/gpu_shader_3D_groundline_geom.glsl SRC)
+ data_to_c_simple(shaders/gpu_shader_3D_groundpoint_vert.glsl SRC)
+
data_to_c_simple(shaders/gpu_shader_point_uniform_color_frag.glsl SRC)
data_to_c_simple(shaders/gpu_shader_point_uniform_color_smooth_frag.glsl SRC)
data_to_c_simple(shaders/gpu_shader_point_uniform_color_outline_smooth_frag.glsl SRC)
diff --cc source/blender/gpu/gawain/immediate.h
index 23d7413aaf,db0e4af3f2..53f9e6c46e
--- a/source/blender/gpu/gawain/immediate.h
+++ b/source/blender/gpu/gawain/immediate.h
@@@ -79,9 -79,12 +79,13 @@@ void immVertex2iv(unsigned attrib_id, c
// provide uniform values that don't change for the entire draw call
void immUniform1i(const char* name, int x);
void immUniform1f(const char* name, float x);
+ void immUniform2f(const char* name, float x, float y);
+ void immUniform2fv(const char* name, const float data[2]);
+ void immUniform3f(const char* name, float x, float y, float z);
+ void immUniform3fv(const char* name, const float data[3]);
void immUniform4f(const char* name, float x, float y, float z, float w);
void immUniform4fv(const char* name, const float data[4]);
+void immUniformMat4(const char* name, const float data[4][4]);
// convenience functions for setting "uniform vec4 color"
diff --cc source/blender/gpu/intern/gpu_shader.c
index 4fd8ab0d8b,cc58050dc5..295182b315
--- a/source/blender/gpu/intern/gpu_shader.c
+++ b/source/blender/gpu/intern/gpu_shader.c
@@@ -67,8 -70,15 +70,16 @@@ extern char datatoc_gpu_shader_3D_vert_
extern char datatoc_gpu_shader_3D_flat_color_vert_glsl[];
extern char datatoc_gpu_shader_3D_smooth_color_vert_glsl[];
extern char datatoc_gpu_shader_3D_smooth_color_frag_glsl[];
+ extern char datatoc_gpu_shader_3D_passthrough_vert_glsl[];
+extern char datatoc_gpu_shader_3D_clipped_uniform_color_vert_glsl[];
+ extern char datatoc_gpu_shader_instance_vert_glsl[];
+ extern char datatoc_gpu_shader_instance_variying_size_variying_color_vert_glsl[];
+ extern char datatoc_gpu_shader_instance_screenspace_variying_color_vert_glsl[];
+
+ extern char datatoc_gpu_shader_3D_groundpoint_vert_glsl[];
+ extern char datatoc_gpu_shader_3D_groundline_geom_glsl[];
+
extern char datatoc_gpu_shader_point_uniform_color_frag_glsl[];
extern char datatoc_gpu_shader_point_uniform_color_smooth_frag_glsl[];
extern char datatoc_gpu_shader_point_uniform_color_outline_smooth_frag_glsl[];
@@@ -651,9 -691,15 +692,17 @@@ GPUShader *GPU_shader_get_builtin_shade
[GPU_SHADER_3D_SMOOTH_COLOR] = { datatoc_gpu_shader_3D_smooth_color_vert_glsl,
datatoc_gpu_shader_3D_smooth_color_frag_glsl },
[GPU_SHADER_3D_DEPTH_ONLY] = { datatoc_gpu_shader_3D_vert_glsl, datatoc_gpu_shader_depth_only_frag_glsl },
+
+ [GPU_SHADER_3D_GROUNDPOINT] = { datatoc_gpu_shader_3D_groundpoint_vert_glsl, datatoc_gpu_shader_point_uniform_color_frag_glsl },
+ [GPU_SHADER_3D_GROUNDLINE] = { datatoc_gpu_shader_3D_passthrough_vert_glsl,
+ datatoc_gpu_shader_uniform_color_frag_glsl,
+ datatoc_gpu_shader_3D_groundline_geom_glsl },
+ [GPU_SHADER_3D_CLIPPED_UNIFORM_COLOR] = { datatoc_gpu_shader_3D_clipped_uniform_color_vert_glsl,
+ datatoc_gpu_shader_uniform_color_frag_glsl },
+ [GPU_SHADER_3D_SCREENSPACE_VARIYING_COLOR] = { datatoc_gpu_shader_instance_screenspace_variying_color_vert_glsl,
+ datatoc_gpu_shader_flat_color_frag_glsl},
+
[GPU_SHADER_2D_POINT_FIXED_SIZE_UNIFORM_COLOR] =
{ datatoc_gpu_shader_2D_vert_glsl, datatoc_gpu_shader_point_uniform_color_frag_glsl },
[GPU_SHADER_2D_POINT_VARYING_SIZE_VARYING_COLOR] =
More information about the Bf-blender-cvs
mailing list