From 629be03b962acfdbdee1e3fb1b455bf32158adc1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=91=D1=8B=D1=87=D0=BA=D0=BE=D0=B2=20=D0=90=D0=BD=D0=B4?= =?UTF-8?q?=D1=80=D0=B5=D0=B9?= Date: Thu, 9 Jan 2020 16:55:48 +0000 Subject: [PATCH] git-svn-id: svn://db.shs.com.ru/libs@708 a8b55f48-bf90-11e4-a774-851b48703e85 --- qglengine/qglview.cpp | 1 - qglengine/qglview.h | 4 +--- qglengine/renderer.cpp | 4 ++-- qglengine/renderer_service.cpp | 18 +++++++++--------- qglengine/shaders.qrc | 19 +++++++++++++++++++ 5 files changed, 31 insertions(+), 15 deletions(-) create mode 100644 qglengine/shaders.qrc diff --git a/qglengine/qglview.cpp b/qglengine/qglview.cpp index 7f31489..6293baf 100644 --- a/qglengine/qglview.cpp +++ b/qglengine/qglview.cpp @@ -168,7 +168,6 @@ void QGLView::render() { emit glBeginPaint(); renderer_.mouse_pos = mapFromGlobal(QCursor::pos()); renderer_.renderScene(); - emit glPainting(); emit glEndPaint(); fps_tm += time.elapsed(); time.restart(); diff --git a/qglengine/qglview.h b/qglengine/qglview.h index 7cd77f9..ea5f7b5 100644 --- a/qglengine/qglview.h +++ b/qglengine/qglview.h @@ -23,8 +23,8 @@ #include "glframebuffer.h" #include "glprimitives.h" #include "glcamera.h" -#include "glscene.h" #include "glrendererbase.h" +#include "glscene.h" #include "renderer.h" #include "mouse_controller.h" #include @@ -269,9 +269,7 @@ public slots: void reloadShaders() {renderer_.reloadShaders();} signals: - void glBeforePaint(); void glBeginPaint(); - void glPainting(); void glEndPaint(); void glKeyPressEvent(QKeyEvent * e); void glKeyReleaseEvent(QKeyEvent * e); diff --git a/qglengine/renderer.cpp b/qglengine/renderer.cpp index 4aab809..0e0b620 100644 --- a/qglengine/renderer.cpp +++ b/qglengine/renderer.cpp @@ -108,14 +108,14 @@ void Renderer::resize(int width, int height) { void Renderer::reloadShaders() { QMapIterator it(shader_files); - QString dir = "shaders/"; + QString dir = ":shaders/"; while (it.hasNext()) { it.next(); loadShadersMulti(shaders[it.key()], dir + it.value(), true, shader_defines.value(it.key())); } loadShadersMulti(tone_proc.shader_sum, dir + "sum.glsl", false); QStringList fxaa_defs; - fxaa_defs << "FXAA_PC 1" << "FXAA_GLSL_130 1" << "FXAA_QUALITY__PRESET 20"; + fxaa_defs << "FXAA_PC 1" << "FXAA_GLSL_130 1" << "FXAA_QUALITY__PRESET 15"; loadShaders(shader_fxaa, QStringList() << (dir + "fxaa.vert") << (dir + "fxaa.frag"), true, fxaa_defs); need_init_shaders = true; view->scene()->setLightsChanged(); diff --git a/qglengine/renderer_service.cpp b/qglengine/renderer_service.cpp index d4c0da6..2cab91c 100644 --- a/qglengine/renderer_service.cpp +++ b/qglengine/renderer_service.cpp @@ -55,12 +55,12 @@ RendererService::RendererService(Renderer * r_): r(r_) { axis_mesh = Primitive::arrow(12); size_vp_scale = size_full_scale = 1.; - box_mesh = Primitive::cube(0.8, 0.8, 0.8); - box_mesh_f = Primitive::cubeFrame(0.8, 0.8, 0.8); + box_mesh = Primitive::cube(0.8, 0.8, 0.8); + box_mesh_f = Primitive::cubeFrame(0.8, 0.8, 0.8); omni_mesh = Primitive::ellipsoid(2, 1, 0.5); omni_mesh_f = Primitive::ellipsoidFrame(2, 1, 0.5); - omni_mesh ->scalePoints(1.5); - omni_mesh_f->scalePoints(1.5); + omni_mesh ->scalePoints(1.5); + omni_mesh_f ->scalePoints(1.5); cone_mesh = Primitive::cone(8, 0.5, 1.); cone_mesh_f = Primitive::coneFrame(8, 0.5, 1.); QMatrix4x4 mat; @@ -112,11 +112,11 @@ RendererService::RendererService(Renderer * r_): r(r_) { delete m; handle_scale_3_mesh = Primitive::ellipsoid(12, 12, 0.2); - handle_move_mesh ->scalePoints(7.5); - handle_ms_2_mesh ->scalePoints(7.5); - handle_rotate_mesh ->scalePoints(7.5); - handle_scale_mesh ->scalePoints(7.5); - handle_scale_3_mesh ->scalePoints(7.5); + handle_move_mesh ->scalePoints(7.5); + handle_ms_2_mesh ->scalePoints(7.5); + handle_rotate_mesh ->scalePoints(7.5); + handle_scale_mesh ->scalePoints(7.5); + handle_scale_3_mesh->scalePoints(7.5); } diff --git a/qglengine/shaders.qrc b/qglengine/shaders.qrc new file mode 100644 index 0000000..ad92bf9 --- /dev/null +++ b/qglengine/shaders.qrc @@ -0,0 +1,19 @@ + + + shaders/ds_final.glsl + shaders/ds_geom.glsl + shaders/ds_light.glsl + shaders/ds_tonemap.glsl + shaders/fxaa.frag + shaders/fxaa.vert + shaders/fxaa_v3.h + shaders/selection.glsl + shaders/selection_apply.glsl + shaders/selection_frame.glsl + shaders/selection_halo.glsl + shaders/service_fill.glsl + shaders/service_frame.glsl + shaders/service_line.glsl + shaders/sum.glsl + +