From 6b6caa0435ab4b5e38e5caeb0c5c5d5242da87c4 Mon Sep 17 00:00:00 2001 From: dnk-88 Date: Wed, 26 Jan 2011 15:09:08 +0200 Subject: [PATCH 1/3] Changed: #1171 Changed the order of initialization. OVQT weather & sun color dock window. --- .../3d/object_viewer_qt/src/CMakeLists.txt | 3 +- .../src/global_wind_dialog.cpp | 11 +- .../object_viewer_qt/src/global_wind_dialog.h | 1 - .../src/graphics_viewport.cpp | 4 +- .../src/images/ico_skelscale.png | Bin 4321 -> 4789 bytes .../3d/object_viewer_qt/src/main_window.cpp | 140 +++++------------- .../3d/object_viewer_qt/src/main_window.h | 6 +- .../object_viewer_qt/src/object_viewer_qt.qrc | 2 + .../object_viewer_qt/src/sun_color_dialog.cpp | 16 +- .../object_viewer_qt/src/sun_color_dialog.h | 1 - 10 files changed, 50 insertions(+), 134 deletions(-) diff --git a/code/nel/tools/3d/object_viewer_qt/src/CMakeLists.txt b/code/nel/tools/3d/object_viewer_qt/src/CMakeLists.txt index 56d425655..ab7b12d51 100644 --- a/code/nel/tools/3d/object_viewer_qt/src/CMakeLists.txt +++ b/code/nel/tools/3d/object_viewer_qt/src/CMakeLists.txt @@ -22,6 +22,7 @@ SET(OBJECT_VIEWER_HDR main_window.h graphics_viewport.h animation_dialog.h vegetable_dialog.h global_wind_dialog.h day_night_dialog.h sun_color_dialog.h vegetable_noise_value_widget.h vegetable_density_page.h vegetable_landscape_page.h vegetable_scale_page.h vegetable_appearance_page.h vegetable_rotate_page.h + tune_mrm_dialog.h extension_system/iplugin_manager.h extension_system/plugin_manager.h) SET(OBJECT_VIEWER_UIS animation_form.ui animation_set_form.ui settings_form.ui @@ -35,7 +36,7 @@ SET(OBJECT_VIEWER_UIS animation_form.ui animation_set_form.ui settings_form.ui particle_link_skeleton_form.ui water_pool_form.ui vegetable_dialog_form.ui vegetable_noise_value_form.ui global_wind_form.ui sun_color_form.ui day_night_form.ui vegetable_density_form.ui vegetable_apperance_form.ui vegetable_landscape_form.ui - vegetable_rotate_form.ui vegetable_scale_form.ui) + vegetable_rotate_form.ui vegetable_scale_form.ui tune_mrm_form.ui) SET(OBJECT_VIEWER_RCS object_viewer_qt.qrc) diff --git a/code/nel/tools/3d/object_viewer_qt/src/global_wind_dialog.cpp b/code/nel/tools/3d/object_viewer_qt/src/global_wind_dialog.cpp index fa018d914..b4902b2cb 100644 --- a/code/nel/tools/3d/object_viewer_qt/src/global_wind_dialog.cpp +++ b/code/nel/tools/3d/object_viewer_qt/src/global_wind_dialog.cpp @@ -32,8 +32,9 @@ CGlobalWindDialog::CGlobalWindDialog(QWidget *parent) { _ui.setupUi(this); + _ui.horizontalSlider->setValue(int(Modules::objView().getScene()->getGlobalWindPower() * _ui.horizontalSlider->maximum())); + connect(_ui.horizontalSlider, SIGNAL(valueChanged(int)), this, SLOT(setWndPower(int))); - connect(this, SIGNAL(visibilityChanged(bool)), this, SLOT(updateWnd(bool))); } CGlobalWindDialog::~CGlobalWindDialog() @@ -47,12 +48,4 @@ void CGlobalWindDialog::setWndPower(int value) Modules::objView().getScene()->setGlobalWindPower(fValue); } -void CGlobalWindDialog::updateWnd(bool visible) -{ - if (!visible || !Modules::objView().getScene()) - return; - - _ui.horizontalSlider->setValue(int(Modules::objView().getScene()->getGlobalWindPower() * _ui.horizontalSlider->maximum())); -} - } /* namespace NLQT */ \ No newline at end of file diff --git a/code/nel/tools/3d/object_viewer_qt/src/global_wind_dialog.h b/code/nel/tools/3d/object_viewer_qt/src/global_wind_dialog.h index f69231cdb..dc2e68aaf 100644 --- a/code/nel/tools/3d/object_viewer_qt/src/global_wind_dialog.h +++ b/code/nel/tools/3d/object_viewer_qt/src/global_wind_dialog.h @@ -41,7 +41,6 @@ public: private Q_SLOTS: void setWndPower(int value); - void updateWnd(bool visible); private: diff --git a/code/nel/tools/3d/object_viewer_qt/src/graphics_viewport.cpp b/code/nel/tools/3d/object_viewer_qt/src/graphics_viewport.cpp index 2128cdbd1..04f956c11 100644 --- a/code/nel/tools/3d/object_viewer_qt/src/graphics_viewport.cpp +++ b/code/nel/tools/3d/object_viewer_qt/src/graphics_viewport.cpp @@ -68,6 +68,7 @@ void CGraphicsViewport::init() Modules::objView().init((nlWindow)winId(), width(), height()); Modules::psEdit().init(); + Modules::veget().init(); setMouseTracking(true); setFocusPolicy(Qt::StrongFocus); @@ -77,7 +78,8 @@ void CGraphicsViewport::release() { //H_AUTO2 nldebug("CGraphicsViewport::release"); - + + Modules::veget().release(); Modules::psEdit().release(); Modules::objView().release(); } diff --git a/code/nel/tools/3d/object_viewer_qt/src/images/ico_skelscale.png b/code/nel/tools/3d/object_viewer_qt/src/images/ico_skelscale.png index 9d6455da243ab66633055f7133f53b9560946651..7154a8a05e09f3d7e797798d55834f7cd54a69ac 100644 GIT binary patch delta 4784 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 KMNUMnLSTYBh7hIz delta 4312 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 + _isGraphicsInitialized = true; + + if (_isSoundEnabled) + { + Modules::sound().init(); + _isSoundInitialized = true; + } _SkeletonTreeModel = new CSkeletonTreeModel(this); @@ -96,24 +105,16 @@ CMainWindow::CMainWindow(QWidget *parent) restoreGeometry(settings.value("QtWindowGeometry").toByteArray()); settings.endGroup(); - _isGraphicsEnabled = true; - _isLandscapeEnabled = true; - // As a special case, a QTimer with a timeout of 0 will time out as soon as all the events in the window system's event queue have been processed. // This can be used to do heavy work while providing a snappy user interface. _mainTimer = new QTimer(this); connect(_mainTimer, SIGNAL(timeout()), this, SLOT(updateRender())); - // timer->start(); // <- timeout 0 - // it's heavy on cpu, though, when no 3d driver initialized :) - _mainTimer->start(23); // 25fps _statusBarTimer = new QTimer(this); connect(_statusBarTimer, SIGNAL(timeout()), this, SLOT(updateStatusBar())); - _statusBarTimer->start(1000); _statusInfo = new QLabel(this); this->statusBar()->addPermanentWidget(_statusInfo); - Modules::config().setAndCallback("SoundEnabled", CConfigCallback(this, &CMainWindow::cfcbSoundEnabled)); } CMainWindow::~CMainWindow() @@ -131,15 +132,18 @@ CMainWindow::~CMainWindow() Modules::config().dropCallback("QtPalette"); Modules::config().dropCallback("QtStyle"); - _mainTimer->stop(); - _statusBarTimer->stop(); - delete _AnimationDialog; delete _AnimationSetDialog; delete _SlotManagerDialog; delete _SetupFog; + delete _TuneMRMDialog; delete _ParticleControlDialog; delete _ParticleWorkspaceDialog; + + if (_isSoundInitialized) + Modules::sound().releaseGraphics(); + + _GraphicsViewport->release(); delete _GraphicsViewport; } @@ -152,11 +156,17 @@ void CMainWindow::setVisible(bool visible) if (visible) { QMainWindow::setVisible(true); - updateInitialization(true); + if (_isSoundInitialized) + Modules::sound().initGraphics(); + _mainTimer->start(23); + _statusBarTimer->start(1000); } else { - updateInitialization(false); + _mainTimer->stop(); + _statusBarTimer->stop(); + if (_isSoundInitialized) + Modules::sound().releaseGraphics(); QMainWindow::setVisible(false); } } @@ -273,95 +283,6 @@ void CMainWindow::updateStatusBar() } } -void CMainWindow::updateInitialization(bool visible) -{ - bool done; - do - { - done = true; // set false whenever change - bool wantSound = _isSoundEnabled && visible; - bool wantGraphics = _isGraphicsEnabled && visible; - // TODO WARNING: made Landscape stuff - bool wantLandscape = wantGraphics && _isGraphicsInitialized && _isLandscapeEnabled; - - // .. stuff that depends on other stuff goes on top to prioritize deinitialization - - // Landscape - if (_isLandscapeInitialized) - { - if (!wantLandscape) - { - _isLandscapeInitialized = false; -// if (_isGraphicsInitialized) -// Modules::veget().releaseGraphics(); - Modules::veget().release(); - done = false; - } - } - else - { - if (wantLandscape) - { - Modules::veget().init(); -// if (_isGraphicsInitialized) -// Modules::veget().initGraphics(); - _isLandscapeInitialized = true; - done = false; - } - } - - // Graphics (Driver) - if (_isGraphicsInitialized) - { - if (!wantGraphics) - { - _isGraphicsInitialized = false; - if (_isSoundInitialized) - Modules::sound().releaseGraphics(); - _GraphicsViewport->release(); - done = false; - } - } - else - { - if (wantGraphics) - { - _GraphicsViewport->init(); - if (_isSoundInitialized) - Modules::sound().initGraphics(); - _isGraphicsInitialized = true; - done = false; - } - } - - // Sound (AudioMixer) - if (_isSoundInitialized) - { - if (!wantSound) - { - _isSoundInitialized = false; - if (_isGraphicsInitialized) - Modules::sound().releaseGraphics(); - Modules::sound().release(); - done = false; - } - } - else - { - if (wantSound) - { - Modules::sound().init(); - if (_isGraphicsInitialized) - Modules::sound().initGraphics(); - _isSoundInitialized = true; - done = false; - } - } - - } - while (!done); -} - void CMainWindow::createActions() { _openAction = new QAction(tr("&Open..."), this); @@ -477,6 +398,9 @@ void CMainWindow::createMenus() _toolsMenu->addAction(_SunColorDialog->toggleViewAction()); + //_toolsMenu->addAction(_TuneMRMDialog->toggleViewAction()); + _TuneMRMDialog->toggleViewAction()->setIcon(QIcon(":/images/ico_mrm_mesh.png")); + connect(_ParticleControlDialog->toggleViewAction(), SIGNAL(triggered(bool)), _ParticleWorkspaceDialog, SLOT(setVisible(bool))); @@ -518,6 +442,7 @@ void CMainWindow::createToolBars() _toolsBar->addAction(_VegetableDialog->toggleViewAction()); _toolsBar->addAction(_GlobalWindDialog->toggleViewAction()); _toolsBar->addAction(_SkeletonScaleDialog->toggleViewAction()); +// _toolsBar->addAction(_TuneMRMDialog->toggleViewAction()); } void CMainWindow::createStatusBar() @@ -591,6 +516,11 @@ void CMainWindow::createDialogs() addDockWidget(Qt::RightDockWidgetArea, _SetupFog); _SetupFog->setVisible(false); + // create tune mrm dialog + _TuneMRMDialog = new CTuneMRMDialog(this); + addDockWidget(Qt::BottomDockWidgetArea, _TuneMRMDialog); + _TuneMRMDialog->setVisible(false); + connect(_ParticleControlDialog, SIGNAL(changeState()), _ParticleWorkspaceDialog, SLOT(setNewState())); connect(_ParticleWorkspaceDialog, SIGNAL(changeActiveNode()), _ParticleControlDialog, SLOT(updateActiveNode())); connect(_AnimationSetDialog->ui.setLengthPushButton, SIGNAL(clicked()), _AnimationDialog, SLOT(changeAnimLength())); @@ -637,8 +567,6 @@ void CMainWindow::cfcbSoundEnabled(NLMISC::CConfigFile::CVar &var) void CMainWindow::updateRender() { - updateInitialization(isVisible()); - if (isVisible()) { diff --git a/code/nel/tools/3d/object_viewer_qt/src/main_window.h b/code/nel/tools/3d/object_viewer_qt/src/main_window.h index ee00a84fe..94b8b74cc 100644 --- a/code/nel/tools/3d/object_viewer_qt/src/main_window.h +++ b/code/nel/tools/3d/object_viewer_qt/src/main_window.h @@ -53,6 +53,7 @@ class CVegetableDialog; class CGlobalWindDialog; class CDayNightDialog; class CSunColorDialog; +class CTuneMRMDialog; class CMainWindow : public QMainWindow { @@ -93,7 +94,6 @@ private: void createStatusBar(); void createDialogs(); - void updateInitialization(bool visible); bool loadFile(const QString &fileName, const QString &skelName); void cfcbQtStyle(NLMISC::CConfigFile::CVar &var); @@ -102,7 +102,6 @@ private: bool _isGraphicsInitialized, _isGraphicsEnabled; bool _isSoundInitialized, _isSoundEnabled; - bool _isLandscapeInitialized, _isLandscapeEnabled; CGraphicsViewport *_GraphicsViewport; CAnimationDialog *_AnimationDialog; @@ -117,7 +116,7 @@ private: CSkeletonScaleDialog *_SkeletonScaleDialog; CDayNightDialog *_DayNightDialog; CSunColorDialog *_SunColorDialog; - + CTuneMRMDialog *_TuneMRMDialog; CSkeletonTreeModel *_SkeletonTreeModel; QPalette _originalPalette; @@ -140,7 +139,6 @@ private: QAction *_renderModeAction; QAction *_frameDelayAction; QAction *_lightGroupAction; - QAction *_tuneMRMAction; QAction *_reloadTexturesAction; QAction *_cameraModeAction; QAction *_resetCameraAction; diff --git a/code/nel/tools/3d/object_viewer_qt/src/object_viewer_qt.qrc b/code/nel/tools/3d/object_viewer_qt/src/object_viewer_qt.qrc index 1e63d3f0a..5b14b74f6 100644 --- a/code/nel/tools/3d/object_viewer_qt/src/object_viewer_qt.qrc +++ b/code/nel/tools/3d/object_viewer_qt/src/object_viewer_qt.qrc @@ -27,6 +27,8 @@ images/ico_bgcolor.png images/ico_framedelay.png images/ico_skelscale.png + images/ico_mrm_mesh.png + images/ico_light_group.png images/clear.png images/insert.png images/new.png diff --git a/code/nel/tools/3d/object_viewer_qt/src/sun_color_dialog.cpp b/code/nel/tools/3d/object_viewer_qt/src/sun_color_dialog.cpp index 0a17325ad..9a76b9db1 100644 --- a/code/nel/tools/3d/object_viewer_qt/src/sun_color_dialog.cpp +++ b/code/nel/tools/3d/object_viewer_qt/src/sun_color_dialog.cpp @@ -34,7 +34,11 @@ CSunColorDialog::CSunColorDialog(QWidget *parent) { _ui.setupUi(this); - connect(this, SIGNAL(visibilityChanged(bool)), this, SLOT(updateSunColor(bool))); + _ui.ambientWidget->setColor(Modules::objView().getScene()->getSunAmbient()); + _ui.diffuseWidget->setColor(Modules::objView().getScene()->getSunDiffuse()); + _ui.specularWidget->setColor(Modules::objView().getScene()->getSunSpecular()); + + //connect(this, SIGNAL(visibilityChanged(bool)), this, SLOT(updateSunColor(bool))); connect(_ui.ambientWidget, SIGNAL(colorChanged(NLMISC::CRGBA)), this, SLOT(setAmbientSunColor(NLMISC::CRGBA))); connect(_ui.diffuseWidget, SIGNAL(colorChanged(NLMISC::CRGBA)), this, SLOT(setDiffuseSunColor(NLMISC::CRGBA))); connect(_ui.specularWidget, SIGNAL(colorChanged(NLMISC::CRGBA)), this, SLOT(setSpecularSunColor(NLMISC::CRGBA))); @@ -44,16 +48,6 @@ CSunColorDialog::~CSunColorDialog() { } -void CSunColorDialog::updateSunColor(bool visible) -{ - if (!visible || !Modules::objView().getScene()) - return; - - _ui.ambientWidget->setColor(Modules::objView().getScene()->getSunAmbient()); - _ui.diffuseWidget->setColor(Modules::objView().getScene()->getSunDiffuse()); - _ui.specularWidget->setColor(Modules::objView().getScene()->getSunSpecular()); -} - void CSunColorDialog::setAmbientSunColor(NLMISC::CRGBA color) { Modules::objView().getScene()->setSunAmbient(color); diff --git a/code/nel/tools/3d/object_viewer_qt/src/sun_color_dialog.h b/code/nel/tools/3d/object_viewer_qt/src/sun_color_dialog.h index 1a4592caf..587ab5b1b 100644 --- a/code/nel/tools/3d/object_viewer_qt/src/sun_color_dialog.h +++ b/code/nel/tools/3d/object_viewer_qt/src/sun_color_dialog.h @@ -44,7 +44,6 @@ public: ~CSunColorDialog(); private Q_SLOTS: - void updateSunColor(bool visible); void setAmbientSunColor(NLMISC::CRGBA color); void setDiffuseSunColor(NLMISC::CRGBA color); void setSpecularSunColor(NLMISC::CRGBA color); From cfa86c35ff300ce6daa602d0a2a18b69337cc7d3 Mon Sep 17 00:00:00 2001 From: dnk-88 Date: Wed, 26 Jan 2011 15:10:33 +0200 Subject: [PATCH 2/3] Changed: #1193 Added new icons and tune MRM dialog. --- .../src/images/ico_light_group.png | Bin 0 -> 5583 bytes .../src/images/ico_mrm_mesh.png | Bin 0 -> 9742 bytes .../object_viewer_qt/src/tune_mrm_dialog.cpp | 36 ++++ .../3d/object_viewer_qt/src/tune_mrm_dialog.h | 52 ++++++ .../3d/object_viewer_qt/src/tune_mrm_form.ui | 164 ++++++++++++++++++ 5 files changed, 252 insertions(+) create mode 100644 code/nel/tools/3d/object_viewer_qt/src/images/ico_light_group.png create mode 100644 code/nel/tools/3d/object_viewer_qt/src/images/ico_mrm_mesh.png create mode 100644 code/nel/tools/3d/object_viewer_qt/src/tune_mrm_dialog.cpp create mode 100644 code/nel/tools/3d/object_viewer_qt/src/tune_mrm_dialog.h create mode 100644 code/nel/tools/3d/object_viewer_qt/src/tune_mrm_form.ui diff --git a/code/nel/tools/3d/object_viewer_qt/src/images/ico_light_group.png b/code/nel/tools/3d/object_viewer_qt/src/images/ico_light_group.png new file mode 100644 index 0000000000000000000000000000000000000000..312f08a0f0dde4f44b14dfa837065a90123a719a GIT binary patch literal 5583 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 literal 0 HcmV?d00001 diff --git a/code/nel/tools/3d/object_viewer_qt/src/images/ico_mrm_mesh.png b/code/nel/tools/3d/object_viewer_qt/src/images/ico_mrm_mesh.png new file mode 100644 index 0000000000000000000000000000000000000000..8896f7b499adadb7c560f2e1fab7fe65edf3188c GIT binary patch literal 9742 zcmV+pCh^&cP)Px#1ZP1_K>z@;j|==^1poj532;bRa{vGh)&Kwv)&Y=jd7JeSaefwW^{L9 za%BKeVQFr3E>1;MAa*k@H7+*LgRNQs0407&L_t(|UhR8zbd>kjbw;9SJVB$70KvVG z1PGEql!ORzcOmYECAdq`0;N!(l)9$w-cr4FZ*O}`g%(KI?>@ho1bUPEz2BeTTHnoD zXU)trPiCI8&pG?pGbSeg{rfKhJqXxE+5YYlKk{?C7~3~2BF&#RjWO*Qm^PrpvB17# zXz7p+m)a2>)3#0Nn7MQM6X4~|z5ta7yrf(kaA9!?ufAquQ{>7i>`yah}(C^-B=V$)V`J?s!6DGKF z?TV#oh#o_7oiMb-3ByZ=z^!ToJR96Fy4eF`){KTv`xs2vJPs4Ljl-m!KA5!22a|V> z$CT|pn6_&oCT|}HpRL}Qw1e;M@xjF1<1l{b7>wKQjWL@?!>i2`9?h;8R_zRj5wa;T_%^ygF{# zH2Wd%YVZB}6kXHMGN-0-ZQhMD4oz*0yFI3SV#9=xk=4%r3lIAF$8<#aoxO5uMptK- z)&C0epI85M*DTXO6GT}`38sWoA}P_7SV}x4Q3GuXC0z?`rWTqkO11_jIed?z&HcOR zaf3g*9)2(5fVhx)lYxr#RfdBDX7_-h3F4e=}QR9kH4es!4 zbc08uD_k2!U}&uqM%E66XR{kTTU_DM%Hu7=;nqAHUaLJZdW{E&!tgPc*}z3qq%ZuEsd!T9yBU#Dt9M0pdKP^{w2k@-X_Dqk-}&Bb!8{;Uq` zzih$g@7u8Bm(AF9X)AVL+J?QCc3_{9okrQgW81OkU)!y;38pNf%rk**kq+?>L}T4|Eol2^D_Xvv%I&z5a;EE~Q4Fu;Jvrx&u4A~p>xlY{(l?7>nrsSvtj_Q~ODGEr zq7Ts_wIczWe_M}jf3{=$m5tbObrW`VZo!_et=QYO9s9a=V1L)n9+B4u*^a%P+pxQH zD|TJmqW*8&U+qZfh=u72J(O{mnJ55SzG?951;9I(-uBf*@T5=;=IodO%R~$1`qOq! z!QsyRe^dSrqw+VDz5{2wPT|~jqwx9Jt~(SMa*lu?fK|Lz0@EBSpRPyli|H^4r{cUQ zeYhSY3Wq5`^wD}`KA(aeRDS2x%~VK~-=-84#cvh4zUzi`?J|O41cB!&5IQ#_>%~;) z*l70_iE_tSPx#?fmBl;y>m zr>T%ACQ6FZcXge{`K~)DXN+>EI(CjgoZ&fgZt-h*Fe@~LX`UX%ujk=l=N|G4FD%Ri zc3HOA@XH!_H;;yf*I*j2NA^o;N|C)(Xg@97t@wfKyYcU$08w6H06_qYc{CFG1bSJt z2`rN>;h1lyl-I7%V%Fviwg+5|J;V7S8v6(pEqK7-7u1#7E=kru`7p^ zHM^DXR{U-%e&PCA$~oLak>_$uKsiSsvY$_bS&<&*MP?{}s~ER+9l(*U{m`snxY0VU zRW5Yb4cPq0dW_rP4NV+9Aw{P^5cj^7R_;sjn~w-4y2pLZ$qhF~R23A<2{$iDp3y!MKQ~=P@CIrE=$z8?luC6WEt;lX0 zg6>=dO$IMGQ=>pQ&}DG_gV*=`O}f2c_g`Bvfpv-ek6D%}5}%4ybreT0AHeK`(_v9;ipg7jaOWQe{QM`}OwUHo|S4i#m5;$pBP*Sgd$pHv!#sZLM&%LlfnANw0HaUBSzw5O6xq1c_-#zV7VnLKp!0c^+=EMH-nJ! zSONysTEV_yFk0VlP(08Z0D3?I0a!@@T09it$wf=5Q*6(e7V8Gz6{rA^B5VF}UmWVB z@*)a=y;%KK18l2p)H%aihGN|hEs6}qizI{WBmmp5Y{2?|wGaSi0eZmv!~VSin6h@F zzy4+b=>FX~{}h?uKzvMZou?3ZDgZY11K_#Q1&6=Awa5AbLj1ik7}U@Y&aHM>^HGzL z2v4d1mke@(^?+DkyiAiw0O$n*z^SbqWAU z^Ap$j^afzE(F5$6FK@lF3kP|Tg0fujZBhw#9-X54U#irge7EGF$1Ao3NFZF;M_$Sj)R&%`Z(@ zd#M@gerv({KU&dtxfSh~SEK#UHP}FD`?D3x?pg?Ko|b(FJ%=L72b}T8x@PNGysrm0*6LBwEW6*MRffvPV`QSnJJ%04Po0O+E$ z@T&6c4Z!%-2s&nMr`kyLM_sTesd?nicIKd;7yOKY*|cg7dv zbK6zMrQ~Z-?9WY@c3`5i{;+k92)jQBgX{Y%$$vdd#qQQ?RGe|S@lVF%AB@Le8IM0R z9)GMuQj{>jG-HTm&12BH=7=Mct zQ&wkMG<{V=5E`)dhbFB5sRiwq2*mFMLJ>_nHeOzj$$Nb;u*wp{*Epl`>l%{QCKSAz z4V#7m7*u72%vVyd@h>WVneP63tBUW|pBvEhV=d~xtzul3E9*-gAOMtpUVzds3Q+cC zA4Zx%}AAieK0>E0i?z0MlP>a@Y>#>F)to^AO z>zPK{gjFxKvf>(}D!gH>j;Q;(5?ijeD-mnwU(8Yf^eZ(-$}{oG>OycWbor(qMEOe8 zd`b8GtVAhq63YZ5oQ2HeS`K*BNd8q=&G+&Rv3jwJ7hF&7T zh?V(#*@KJK5XPd|0!c5&DIiNe$wR@1*~q(?j_fy6k@;FO(qB!4z8ir2k-Y(!+-?Mb z4NB?70@Qy|sXU?OyLz<#*nl-ZQHdYxF?RcCn6tJY(qxb7FUqjtkG0ChH~hI)S-b6z z)kHfD{mU(2UaUv(-HWMwJsN+g=~2Go(-N%us6ds$(ye*7k3#;3nUpLP{39DhAJcMt z?zWcI9ZTDO#a4)YHcEj~_O-!7M9RJ@RL6Wz%vQC)z>3gEJOgmN*5T3e=+JjLMR(xT+eBF97;_`bw??bj8E zdvXQL^7*;!>Si67rWiTnwIswpvBEGCV{*WhJ^T0(oI|9%8i&kx zl96>W71{5Kkj$v45_zs9mG7q@^KC<%536%#m&t1-2=ULXP_pvLNW?zA9GWGp0|>x~ ztYN)5AoR>qKXXoNrCXYNcqUf8pO36pQsGqXpj^wI4ToHO9hDMy76t3SW9}8<^E#1l zn1lI#4H>?g?q2l;iHcT_ek4M*sA8S*o4pYKWE8^h34%$0VMaHk(h18SU53Hg1J#Vc zt==4$UG0uv`b{42PCpbwKh{aeihjf@EqkseJWp5?+W#;>)o}ekD$cD3o0#O z1eWr7oCCU6jl_zF!m#|_WzYm@mR1>>JzfrJ;Ml_b6tV-yk@K}j-7;>*V4FBp`T@QHtx?*0@l z-mx5uPtAu}By|Yl=avu0qC5PcnNI*h^>E8~-O>wy+_%#G^khiQVwReL6q%s1b{@0F z3$yo6$AS}n2)_`F$os<({pfPUJRWHfx|m2bV=Vfy>X7c&sc>=(=!g2e00r2x*KTj|tL731@ z)Wt3~UWj69ili)2N|cidPCyWaMdZ1NamJ_4lk?^OUf@qY)P`+IK&fpM%r zkk6th5N;M3bE%~VMb>&`dIh9})jU4;=W_v`UZ$B#0G1JeqH%kB0l?khh#mlBQ)2|c zDc2E0%A7E&$qhcMxg2fdVs!I(4o4?&EH)8SWGT8+o=?Ce4ooLPONq?Pb=+y*Ov?RYoHhwVlN}i*@{2#bpde@P$PPe;^1E4=uy;M}iUc zcqmppLEd>P3^7lKBlejH#67c|F~1zKPe&m3sR+b85snp)8NMUz-XJVI>BlXzyCJNM z*1rLOssuOn0-&p_OQQe~<;eqcZ=DIV2s7w;EcC7*BLGI_mEy_Bc!Q4=1;A?t08(DM zQGKm^ItsBQCLyH&UX?VR5;CY499`#AjbrV*r%9<1O(0oX6>7*I6-(|!18{Wy<-}DTDfsD0x&e) zsdphHi1bThs-W_65eZK-2R|EwIlM4Uj0TqJ<|@A`0I0NdT3K%!M9NSF0xL2BL8`b! z=I3~JaFI+$)|rD<0W`8^7*paRE^LLSa8Q&3``xM<`Q;g zHi+s7RaO?|6JLoz(yJ_n*drK(#SxFmdn*ZoDt=_B!<#uAOKcHzCIHL0VG6o^0cPx( z46V@vhNL?7?ga#q5oN=n4dERfEQpeyX9>z4TH47}mZ6h(a3sa{)V_ut8edEIC0$xB zyEJ*sd7r}vf{{re#1o{elRG%Hocj83=BG&NA(GU6fwcA_1l~yigsCZ`xf>Mn3%Pd* z!bpHiIsF}!GXUBoE$rBXh!-TiLSwwnlK2e~h8iE`wE!U?$b{NFi{6v0flJ+RMTp_| z5%9YRIE%0)$NZu7Wj9C;7?$GPHvryMUR^paN6lB7_9!pxF7Yj7=e=bVwAorXH#sQR zmv*#(t!cr>(xOUh%C_`<0U?>^dP0|>#q`~i5yxyGBo+Bc2)QH(Asmtf+&;%pbTRjj z<((d4{m}aZ5&qCpl3xgd3B~{pLbSOAq0R=;PlhAyEjC7Mgwoz7=~7bPOi&;!-CS6hba(!}|unGtcuYJsTpqe@86et-OkPT2|cN zy^Wh<4msS~M{?|xr3MnkpXc(C!^clKhWbYaW*wQPmKZZ{odO93DOY2kWQoj+3YRdr zX9;E>nx<}#5zd*tds>h6CH1XfS`)XAAO{R6w}P%n%Q0JjMAH*8-)E@3$4Sq-Y<~$x zz&U1@LJo5|8 zwzYC|nW%ItuckG0bFsWrs{`~UT8!K2rKU5hzGCC^RX&Qp%wr7u!i=LZ0U@33t8{Tf zh~fnj1`!V~Lny5~doKZy+hZuV9G-?yhDP{<2J6Q%wTW9N)6FBF3_<@&OXyZqE}@K1jua^Zc$-J@my|Ox!t6HBFKk;+`>hT$Fem!yuGlAY33GU>d21dtM(y zQ2~H=W^~AM#JS9oDK9~}y(lasCo!(3GIaHR?vRmHoc)NMV~SJRu#Vq{Wyg=y6Pm5%=@^ zn1+MTa(GG)FeSfv6!tL|7XTaz>^g+BoU5Ev+{=hcvAq!9hv`cBf={xPt0%vk|MfWB?!=g`el3=!;y$zZMOv zT2lprWsM&5@0^RGugC>okPAM}#4T(L(Mko-m*hOBphc?EBRWZXNo+QO>Z6oa{nk9ju205Um1 zD#ZAI&jLb%=a(S(%wiT@tY||_F>jY&-vHRlS$+!v z-rOBZF(kEs2}8gt#0(4fFX$V9F&n)a%`$j98@)i4yYFxmeG>qAEY-l$BgI3?nhIXW)gVNwFdT7(+mDfB?XI0|fv(0pJ3QAmITPK~nlk z8jPnh5(Z=Uj8g0`Y`@^bT$TSb-XrPpbBDD%8a={}tug;+;^#1!c=m|Bbg^rS#3c|W2T(7l7sv*au{#qc&~W$A*?49d%+ zc*1lNlPNEFByW^Rq3frzY!!BvixbPJ;)DS7kK?T^%mVg>w#GidmUK9hjAh{gzvHuER;Gtjvpv#jg}hJb5mZ_vkCMyRIsZt9 z&wg*{S-1>eGejva^eQFN2*RxdI9kQ8HC6XWDM7EvQ{(WU1ijd`Zo6j8z#O;#{Z=aXyPn4GmP+9*(00NIJP-#%QUB@WL zMSTKrcjvjOx=fvFDg;TX1O)_HhikbMwdBfs1=EyxLk>eitlcAgo&6y@x# z9^UG#ni<3*j$Xi)*nRCtXyd7Tx*6u5n9IsA zT$Q$JM<6=^wFHrh&)`*R;zWR#oS6rUZ0;f14UTLWrt*I9o$LYbp!IKKH@JVkN`umS zSmzG%?-PLQUDr(q>RqPVcW zFtl`P(y~e%+t%37ni>o)9>klRXk}V|)(%c=IR299t!Jexf=(|`AhnE*-kmC2q!L|9oAPbc$B z+7snfT4L^(i<2KR$UtQfcYlj+pNG*+9-KWIM%NzYt_bADXjsJ%#S7-#NXc$e?kkX< zK|&&eO_IcQqzFGxL|!jvV@PzKvo-kssHc7)o)$zD#DklhPQ0YnrQk+dX=OUhF&%Cy&= zk{0p)05kq| z{nC@P`0)k&;gy>rJehJ2$#8_LOuGnx8JDA-*E*g5BLGu3OsO&D51Z5vqzHm-8B0}G zX)+|0nSal6lKh|+n6jrM6Zh=rsJO&uG~-jnCY4{v#iX>q=A8Q8th@q2HaHxNc(r<9 z#=gl2U>wW9G*Eb<8wk!2mnor==P2?h!s<>692s^f#ZPe9dW=HG4?M5{Lo?}F;`YM+ z6m5VO0~7n>KPoS8tT-J!)-uHcR_P=|0w5sBEKrD1GK5vWCG0rpbf~b0L$yI1c@Kf3 zJXTT4?O~bCTVr_7p_aGb%Rp2nw8|PXa;HUP`O+iuT8=N~xq%esX$>d0+6cC;+*aG9 z4OV+Vd;Z`_e*ENF&!6!%dJr&AZlAm{W7}lR+&+a2kEiC;Q3Q`~F_%k^j)1;nY zSaJ?$nQz9zNw0p~piQHs@_mMo`gt7hJ2WK_`gjVJ(XXIzAYsZStn}p~rd+(3MN#;} zCbMW3VKJ0gKIdrLJdV$eB6CXfcuLQs8J`;^&I}ex%(>P#hh>5}tdjXWf!DT@*T5Fo zJj@gWV+X*u$+z#N$p3~)XIGc*>b0wbUb^=D#N*eF_#L{o&wtb9Hvh2mLH+~tEd6Z? ztOI=4`$nc5Nhw%)Cbll(Y*=H+oy!^nPcCj;aCBbdoSm~9r)`|lCP$I%zl#HpxmUPup0a+z>FJxMJUo8&*vEaE$2>l^add}4ygJ4-sONI* zu~}_X&rVxA>9|+TsO@%{)=dr>woRU8ZcU5#E^M4$KP_&_$p!uoUwd%K|EA}E-~TTH c|DPf7KPzudt#kCDasU7T07*qoM6N<$g0C}uvj6}9 literal 0 HcmV?d00001 diff --git a/code/nel/tools/3d/object_viewer_qt/src/tune_mrm_dialog.cpp b/code/nel/tools/3d/object_viewer_qt/src/tune_mrm_dialog.cpp new file mode 100644 index 000000000..81af1eae3 --- /dev/null +++ b/code/nel/tools/3d/object_viewer_qt/src/tune_mrm_dialog.cpp @@ -0,0 +1,36 @@ +/* + Object Viewer Qt + Copyright (C) 2010 Dzmitry Kamiahin + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program. If not, see . + +*/ + +#include "stdpch.h" +#include "tune_mrm_dialog.h" + +namespace NLQT +{ + +CTuneMRMDialog::CTuneMRMDialog(QWidget *parent) + : QDockWidget(parent) +{ + ui.setupUi(this); +} + +CTuneMRMDialog::~CTuneMRMDialog() +{ +} + +} /* namespace NLQT */ diff --git a/code/nel/tools/3d/object_viewer_qt/src/tune_mrm_dialog.h b/code/nel/tools/3d/object_viewer_qt/src/tune_mrm_dialog.h new file mode 100644 index 000000000..74b3c9bae --- /dev/null +++ b/code/nel/tools/3d/object_viewer_qt/src/tune_mrm_dialog.h @@ -0,0 +1,52 @@ +/* + Object Viewer Qt + Copyright (C) 2010 Dzmitry Kamiahin + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program. If not, see . + +*/ + +#ifndef TUNE_MRM_DIALOG_H +#define TUNE_MRM_DIALOG_H + +#include "ui_tune_mrm_form.h" + +// STL includes + +// NeL includes + +// Project includes + +namespace NLQT +{ + +class CTuneMRMDialog: public QDockWidget +{ + Q_OBJECT + +public: + CTuneMRMDialog(QWidget *parent = 0); + ~CTuneMRMDialog(); + +private Q_SLOTS: + +private: + + Ui::CTuneMRMDialog ui; + +}; /* class CTuneMRMDialog */ + +} /* namespace NLQT */ + +#endif // TUNE_MRM_DIALOG_H diff --git a/code/nel/tools/3d/object_viewer_qt/src/tune_mrm_form.ui b/code/nel/tools/3d/object_viewer_qt/src/tune_mrm_form.ui new file mode 100644 index 000000000..ba6bd4d5e --- /dev/null +++ b/code/nel/tools/3d/object_viewer_qt/src/tune_mrm_form.ui @@ -0,0 +1,164 @@ + + + CTuneMRMDialog + + + + 0 + 0 + 576 + 87 + + + + + 476 + 87 + + + + QDockWidget::AllDockWidgetFeatures + + + Tune MRM (The maximum faces in scene) + + + + + + + + + Max (specify the max value) + + + + + + + Qt::Horizontal + + + + 40 + 20 + + + + + + + + true + + + QAbstractSpinBox::NoButtons + + + 10000000 + + + 100000 + + + + + + + + + + + Current (real final max polygon value) + + + + + + + Qt::Horizontal + + + + 40 + 20 + + + + + + + + true + + + QAbstractSpinBox::NoButtons + + + 10000000 + + + 100000 + + + + + + + + + 100000 + + + 5000 + + + 10000 + + + 100000 + + + Qt::Horizontal + + + 5000 + + + + + + + 100000 + + + 100000 + + + Qt::Horizontal + + + + + + + + + + horizontalSlider + valueChanged(int) + spinBox + setValue(int) + + + 214 + 67 + + + 232 + 47 + + + + + From 46764a3b1ee507b26d193a51d9505979696f4da0 Mon Sep 17 00:00:00 2001 From: dnk-88 Date: Thu, 27 Jan 2011 15:20:49 +0200 Subject: [PATCH 3/3] Changed: #1193 Tune MRM dialog. --- .../src/images/ico_light_group.png | Bin 5583 -> 5398 bytes .../3d/object_viewer_qt/src/main_window.cpp | 4 +- .../3d/object_viewer_qt/src/object_viewer.cpp | 8 ++-- .../object_viewer_qt/src/tune_mrm_dialog.cpp | 31 +++++++++++- .../3d/object_viewer_qt/src/tune_mrm_dialog.h | 4 +- .../3d/object_viewer_qt/src/tune_mrm_form.ui | 44 ++++++------------ 6 files changed, 55 insertions(+), 36 deletions(-) diff --git a/code/nel/tools/3d/object_viewer_qt/src/images/ico_light_group.png b/code/nel/tools/3d/object_viewer_qt/src/images/ico_light_group.png index 312f08a0f0dde4f44b14dfa837065a90123a719a..49ad8830a421ce5d27cf31a2217ba30738642028 100644 GIT binary patch delta 5354 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 IM6N<$g6r5tA^-pY delta 5538 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 diff --git a/code/nel/tools/3d/object_viewer_qt/src/main_window.cpp b/code/nel/tools/3d/object_viewer_qt/src/main_window.cpp index d2db507a3..a283eea3a 100644 --- a/code/nel/tools/3d/object_viewer_qt/src/main_window.cpp +++ b/code/nel/tools/3d/object_viewer_qt/src/main_window.cpp @@ -398,7 +398,7 @@ void CMainWindow::createMenus() _toolsMenu->addAction(_SunColorDialog->toggleViewAction()); - //_toolsMenu->addAction(_TuneMRMDialog->toggleViewAction()); + _toolsMenu->addAction(_TuneMRMDialog->toggleViewAction()); _TuneMRMDialog->toggleViewAction()->setIcon(QIcon(":/images/ico_mrm_mesh.png")); connect(_ParticleControlDialog->toggleViewAction(), SIGNAL(triggered(bool)), @@ -442,7 +442,7 @@ void CMainWindow::createToolBars() _toolsBar->addAction(_VegetableDialog->toggleViewAction()); _toolsBar->addAction(_GlobalWindDialog->toggleViewAction()); _toolsBar->addAction(_SkeletonScaleDialog->toggleViewAction()); -// _toolsBar->addAction(_TuneMRMDialog->toggleViewAction()); + _toolsBar->addAction(_TuneMRMDialog->toggleViewAction()); } void CMainWindow::createStatusBar() diff --git a/code/nel/tools/3d/object_viewer_qt/src/object_viewer.cpp b/code/nel/tools/3d/object_viewer_qt/src/object_viewer.cpp index 37df70475..ac34152fa 100644 --- a/code/nel/tools/3d/object_viewer_qt/src/object_viewer.cpp +++ b/code/nel/tools/3d/object_viewer_qt/src/object_viewer.cpp @@ -89,6 +89,11 @@ void CObjectViewer::init(nlWindow wnd, uint16 w, uint16 h) // initialize the window with config file values _Driver->setDisplay(wnd, NL3D::UDriver::CMode(w, h, 32)); + + // Create a scene + _Scene = _Driver->createScene(false); + _Scene->setPolygonBalancingMode(NL3D::UScene::PolygonBalancingClamp); + _Driver->enableUsedTextureMemorySum(); _Light = ULight::createLight(); @@ -106,9 +111,6 @@ void CObjectViewer::init(nlWindow wnd, uint16 w, uint16 h) _Driver->setLight(0, *_Light); _Driver->enableLight(0); - // Create a scene - _Scene = _Driver->createScene(false); - _PlayListManager = _Scene->createPlayListManager(); _Scene->enableLightingSystem(true); diff --git a/code/nel/tools/3d/object_viewer_qt/src/tune_mrm_dialog.cpp b/code/nel/tools/3d/object_viewer_qt/src/tune_mrm_dialog.cpp index 81af1eae3..493cfb577 100644 --- a/code/nel/tools/3d/object_viewer_qt/src/tune_mrm_dialog.cpp +++ b/code/nel/tools/3d/object_viewer_qt/src/tune_mrm_dialog.cpp @@ -20,17 +20,46 @@ #include "stdpch.h" #include "tune_mrm_dialog.h" +// NeL includes +#include + +// Project includes +#include "modules.h" + +const int sliderStepSize = 5000; + namespace NLQT { CTuneMRMDialog::CTuneMRMDialog(QWidget *parent) : QDockWidget(parent) { - ui.setupUi(this); + _ui.setupUi(this); + + connect(_ui.maxValueSlider, SIGNAL(valueChanged(int)), this, SLOT(setMaxValue(int))); + connect(_ui.currentValueSlider, SIGNAL(valueChanged(int)), this, SLOT(setCurrentValue(int))); + + _ui.maxValueSlider->setValue(_ui.maxValueSlider->maximum()); } CTuneMRMDialog::~CTuneMRMDialog() { } +void CTuneMRMDialog::setMaxValue(int value) +{ + int actualMaxValue = value * sliderStepSize; + int actualValue = float(actualMaxValue) * _ui.currentValueSlider->value() / _ui.currentValueSlider->maximum(); + + _ui.currentValueSlider->setMaximum(actualMaxValue); + _ui.currentValueSlider->setValue(actualValue); + _ui.maxValueSpinBox->setValue(actualMaxValue); +} + +void CTuneMRMDialog::setCurrentValue(int value) +{ + Modules::objView().getScene()->setGroupLoadMaxPolygon("Skin", value); + _ui.currentValueSpinBox->setValue(value); +} + } /* namespace NLQT */ diff --git a/code/nel/tools/3d/object_viewer_qt/src/tune_mrm_dialog.h b/code/nel/tools/3d/object_viewer_qt/src/tune_mrm_dialog.h index 74b3c9bae..c0e00d9f4 100644 --- a/code/nel/tools/3d/object_viewer_qt/src/tune_mrm_dialog.h +++ b/code/nel/tools/3d/object_viewer_qt/src/tune_mrm_dialog.h @@ -40,10 +40,12 @@ public: ~CTuneMRMDialog(); private Q_SLOTS: + void setMaxValue(int value); + void setCurrentValue(int value); private: - Ui::CTuneMRMDialog ui; + Ui::CTuneMRMDialog _ui; }; /* class CTuneMRMDialog */ diff --git a/code/nel/tools/3d/object_viewer_qt/src/tune_mrm_form.ui b/code/nel/tools/3d/object_viewer_qt/src/tune_mrm_form.ui index ba6bd4d5e..4f5b22c84 100644 --- a/code/nel/tools/3d/object_viewer_qt/src/tune_mrm_form.ui +++ b/code/nel/tools/3d/object_viewer_qt/src/tune_mrm_form.ui @@ -7,13 +7,13 @@ 0 0 576 - 87 + 92 476 - 87 + 92 @@ -47,7 +47,7 @@ - + true @@ -87,7 +87,7 @@ - + true @@ -105,29 +105,32 @@ - + - 100000 + 20 - 5000 + 1 - 10000 + 5 - 100000 + 20 Qt::Horizontal + + QSlider::TicksAbove + - 5000 + 1 - + 100000 @@ -143,22 +146,5 @@ - - - horizontalSlider - valueChanged(int) - spinBox - setValue(int) - - - 214 - 67 - - - 232 - 47 - - - - +