paysages: More UI polishing + top down render preview + configurable preview scaling.
git-svn-id: https://subversion.assembla.com/svn/thunderk/paysages@292 b1fd45b6-86a6-48da-8261-f70d1f35bdcc
This commit is contained in:
parent
81cbbb9880
commit
6099241ec9
13 changed files with 310 additions and 111 deletions
2
TODO
2
TODO
|
@ -1,6 +1,6 @@
|
|||
- Make colorgradation dialog sizable (and reduce minimum size).
|
||||
- Make all UI more sizable.
|
||||
- Implement scaling and scrolling on previews.
|
||||
- Implement scrolling on previews.
|
||||
- Add a material editor dialog.
|
||||
- Replace FILE* by a custom type for Save and Load.
|
||||
- Water and terrain LOD moves with the camera, fix it like in the wanderer.
|
||||
|
|
|
@ -44,6 +44,7 @@ BasePreview::BasePreview(QWidget* parent) :
|
|||
this->conf_scroll_ymax = 0.0;
|
||||
this->conf_scale_min = 1.0;
|
||||
this->conf_scale_max = 1.0;
|
||||
this->conf_scale_init = 1.0;
|
||||
this->conf_scale_step = 0.0;
|
||||
this->scaling = 1.0;
|
||||
this->xoffset = 0.0;
|
||||
|
@ -86,6 +87,21 @@ QColor BasePreview::getColor(double x, double y)
|
|||
return QColor(0, 0, 0);
|
||||
}
|
||||
|
||||
void BasePreview::configScaling(double min, double max, double step, double init)
|
||||
{
|
||||
double size = (double)width();
|
||||
|
||||
if (size >= 1.0)
|
||||
{
|
||||
conf_scale_min = min / size;
|
||||
conf_scale_max = max / size;
|
||||
conf_scale_step = step / size;
|
||||
conf_scale_init = init / size;
|
||||
scaling = init / size;
|
||||
redraw();
|
||||
}
|
||||
}
|
||||
|
||||
void BasePreview::start()
|
||||
{
|
||||
this->updater->start();
|
||||
|
@ -121,13 +137,6 @@ void BasePreview::handleRedraw()
|
|||
lock_drawing->unlock();
|
||||
}
|
||||
|
||||
void BasePreview::setScaling(double scaling)
|
||||
{
|
||||
// TODO Follow conf_scale
|
||||
this->scaling = scaling;
|
||||
redraw();
|
||||
}
|
||||
|
||||
void BasePreview::resizeEvent(QResizeEvent* event)
|
||||
{
|
||||
QImage* image;
|
||||
|
@ -207,16 +216,39 @@ void BasePreview::renderPixbuf()
|
|||
|
||||
void BasePreview::wheelEvent(QWheelEvent* event)
|
||||
{
|
||||
double factor;
|
||||
|
||||
if (event->modifiers() & Qt::ShiftModifier)
|
||||
{
|
||||
factor = 5.0;
|
||||
}
|
||||
else if (event->modifiers() & Qt::ControlModifier)
|
||||
{
|
||||
factor = 0.2;
|
||||
}
|
||||
else
|
||||
{
|
||||
factor = 1.0;
|
||||
}
|
||||
|
||||
if (event->orientation() == Qt::Vertical)
|
||||
{
|
||||
if (event->delta() > 0 && scaling > 0.19)
|
||||
if (event->delta() > 0 && scaling > conf_scale_min)
|
||||
{
|
||||
scaling -= 0.1;
|
||||
scaling -= conf_scale_step * factor;
|
||||
if (scaling < conf_scale_min)
|
||||
{
|
||||
scaling = conf_scale_min;
|
||||
}
|
||||
redraw();
|
||||
}
|
||||
else if (event->delta() < 0 && scaling < 10.0)
|
||||
else if (event->delta() < 0 && scaling < conf_scale_max)
|
||||
{
|
||||
scaling += 0.1;
|
||||
scaling += conf_scale_step * factor;
|
||||
if (scaling > conf_scale_max)
|
||||
{
|
||||
scaling = conf_scale_max;
|
||||
}
|
||||
redraw();
|
||||
}
|
||||
event->accept();
|
||||
|
|
|
@ -18,11 +18,11 @@ public:
|
|||
void doRender();
|
||||
void redraw();
|
||||
|
||||
void setScaling(double scaling);
|
||||
|
||||
protected:
|
||||
virtual void updateData();
|
||||
virtual QColor getColor(double x, double y);
|
||||
|
||||
void configScaling(double min, double max, double step, double init);
|
||||
|
||||
double xoffset;
|
||||
double yoffset;
|
||||
|
@ -56,6 +56,7 @@ private:
|
|||
|
||||
double conf_scale_min;
|
||||
double conf_scale_max;
|
||||
double conf_scale_init;
|
||||
double conf_scale_step;
|
||||
|
||||
signals:
|
||||
|
|
|
@ -18,6 +18,8 @@ public:
|
|||
_noise_original = noise;
|
||||
_noise_preview = noiseCreateGenerator();
|
||||
_level = -1;
|
||||
|
||||
configScaling(0.05, 2.0, 0.05, 2.0);
|
||||
}
|
||||
|
||||
void setLevel(int row)
|
||||
|
@ -54,6 +56,8 @@ public:
|
|||
{
|
||||
_noise_original = noise;
|
||||
_noise_preview = noiseCreateGenerator();
|
||||
|
||||
configScaling(0.05, 2.0, 0.03, 2.0);
|
||||
}
|
||||
protected:
|
||||
void updateData()
|
||||
|
@ -97,12 +101,10 @@ DialogNoise::DialogNoise(QWidget *parent, NoiseGenerator* value):
|
|||
previewLevel = new PreviewLevel(previews, _current);
|
||||
previews->layout()->addWidget(new QLabel(tr("Level preview")));
|
||||
previews->layout()->addWidget(previewLevel);
|
||||
previewLevel->setScaling(1.0 / 127.0);
|
||||
previewLevel->start();
|
||||
previewTotal = new PreviewTotal(previews, _current);
|
||||
previews->layout()->addWidget(new QLabel(tr("Total preview")));
|
||||
previews->layout()->addWidget(previewTotal);
|
||||
previewTotal->setScaling(1.0 / 127.0);
|
||||
previewTotal->start();
|
||||
|
||||
form = new QWidget(this);
|
||||
|
|
|
@ -17,6 +17,8 @@ public:
|
|||
{
|
||||
_renderer = rendererCreate();
|
||||
_preview_definition = atmosphereCreateDefinition();
|
||||
|
||||
configScaling(100.0, 1000.0, 20.0, 200.0);
|
||||
}
|
||||
protected:
|
||||
QColor getColor(double x, double y)
|
||||
|
|
|
@ -21,6 +21,8 @@ public:
|
|||
_renderer.render_quality = 3;
|
||||
|
||||
_preview_layer = cloudsLayerCreateDefinition();
|
||||
|
||||
configScaling(100.0, 1000.0, 20.0, 200.0);
|
||||
}
|
||||
protected:
|
||||
QColor getColor(double x, double y)
|
||||
|
@ -79,6 +81,8 @@ public:
|
|||
_renderer.maskLight = _maskLight;
|
||||
_renderer.customData[0] = &_preview_layer;
|
||||
_renderer.customData[1] = &_lighting;
|
||||
|
||||
configScaling(100.0, 400.0, 20.0, 200.0);
|
||||
}
|
||||
protected:
|
||||
QColor getColor(double x, double y)
|
||||
|
|
|
@ -4,9 +4,91 @@
|
|||
#include <QMessageBox>
|
||||
#include "dialogrender.h"
|
||||
#include "inputcamera.h"
|
||||
#include "tools.h"
|
||||
#include "../lib_paysages/render.h"
|
||||
#include "../lib_paysages/scenery.h"
|
||||
|
||||
/**************** Previews ****************/
|
||||
class PreviewRenderLandscape:public BasePreview
|
||||
{
|
||||
public:
|
||||
PreviewRenderLandscape(QWidget* parent):BasePreview(parent)
|
||||
{
|
||||
_renderer = rendererCreate();
|
||||
_renderer.applyTextures = _applyTextures;
|
||||
_renderer.getTerrainHeight = _getTerrainHeight;
|
||||
_renderer.applyLightingToSurface = _applyLightingToSurface;
|
||||
_renderer.maskLight = _maskLight;
|
||||
_renderer.camera_location.x = 0.0;
|
||||
_renderer.camera_location.y = 50.0;
|
||||
_renderer.camera_location.z = 0.0;
|
||||
|
||||
_terrain = terrainCreateDefinition();
|
||||
_textures = texturesCreateDefinition();
|
||||
_lighting = lightingCreateDefinition();
|
||||
_water = waterCreateDefinition();
|
||||
|
||||
_renderer.customData[0] = &_terrain;
|
||||
_renderer.customData[1] = &_textures;
|
||||
_renderer.customData[2] = &_lighting;
|
||||
_renderer.customData[3] = &_water;
|
||||
|
||||
configScaling(0.5, 200.0, 1.0, 50.0);
|
||||
}
|
||||
protected:
|
||||
QColor getColor(double x, double y)
|
||||
{
|
||||
Vector3 down = {0.0, -1.0, 0.0};
|
||||
Vector3 location;
|
||||
double height = terrainGetHeight(&_terrain, x, y);
|
||||
|
||||
if (height < _water.height)
|
||||
{
|
||||
location.x = x;
|
||||
location.y = _water.height;
|
||||
location.z = y;
|
||||
return colorToQColor(waterGetColor(&_water, &_renderer, location, down));
|
||||
}
|
||||
else
|
||||
{
|
||||
return colorToQColor(terrainGetColor(&_terrain, &_renderer, x, y, scaling));
|
||||
}
|
||||
}
|
||||
void updateData()
|
||||
{
|
||||
sceneryGetTerrain(&_terrain);
|
||||
sceneryGetLighting(&_lighting);
|
||||
sceneryGetTextures(&_textures);
|
||||
sceneryGetWater(&_water);
|
||||
}
|
||||
private:
|
||||
Renderer _renderer;
|
||||
TerrainDefinition _terrain;
|
||||
WaterDefinition _water;
|
||||
TexturesDefinition _textures;
|
||||
LightingDefinition _lighting;
|
||||
|
||||
static double _getTerrainHeight(Renderer* renderer, double x, double z)
|
||||
{
|
||||
return terrainGetHeight((TerrainDefinition*)(renderer->customData[0]), x, z);
|
||||
}
|
||||
|
||||
static Color _applyTextures(Renderer* renderer, Vector3 location, double precision)
|
||||
{
|
||||
return texturesGetColor((TexturesDefinition*)(renderer->customData[1]), renderer, location, precision);
|
||||
}
|
||||
|
||||
static Color _applyLightingToSurface(Renderer* renderer, Vector3 location, Vector3 normal, SurfaceMaterial material)
|
||||
{
|
||||
return lightingApplyToSurface((LightingDefinition*)renderer->customData[2], renderer, location, normal, material);
|
||||
}
|
||||
|
||||
static Color _maskLight(Renderer* renderer, Color light_color, Vector3 at_location, Vector3 light_location, Vector3 direction_to_light)
|
||||
{
|
||||
return terrainLightFilter((TerrainDefinition*)(renderer->customData[0]), renderer, light_color, at_location, light_location, direction_to_light);
|
||||
}
|
||||
};
|
||||
|
||||
/**************** Form ****************/
|
||||
FormRender::FormRender(QWidget *parent) :
|
||||
BaseForm(parent, true)
|
||||
|
@ -20,6 +102,9 @@ FormRender::FormRender(QWidget *parent) :
|
|||
|
||||
_renderer_inited = false;
|
||||
|
||||
_preview_landscape = new PreviewRenderLandscape(this);
|
||||
addPreview(_preview_landscape, QString(tr("Top-down preview")));
|
||||
|
||||
addInput(new InputCamera(this, tr("Camera"), &_camera));
|
||||
addInputInt(tr("Quality"), &_quality, 1, 10, 1, 1);
|
||||
addInputInt(tr("Image width"), &_width, 100, 2000, 10, 100);
|
||||
|
|
|
@ -33,6 +33,7 @@ private:
|
|||
CameraDefinition _camera;
|
||||
Renderer _renderer;
|
||||
bool _renderer_inited;
|
||||
BasePreview* _preview_landscape;
|
||||
};
|
||||
|
||||
#endif // _PAYSAGES_QT_FORMRENDER_H_
|
||||
|
|
|
@ -22,6 +22,8 @@ public:
|
|||
{
|
||||
_renderer = rendererCreate();
|
||||
_preview_definition = skyCreateDefinition();
|
||||
|
||||
configScaling(0.5, 5.0, 0.5, 2.5);
|
||||
}
|
||||
protected:
|
||||
QColor getColor(double x, double y)
|
||||
|
@ -29,7 +31,7 @@ protected:
|
|||
Vector3 eye = {0.0, 0.0, 0.0};
|
||||
Vector3 look;
|
||||
|
||||
look.x = 100.0;
|
||||
look.x = 1.0;
|
||||
look.y = -y;
|
||||
look.z = x;
|
||||
|
||||
|
@ -52,6 +54,8 @@ public:
|
|||
{
|
||||
_renderer = rendererCreate();
|
||||
_preview_definition = skyCreateDefinition();
|
||||
|
||||
configScaling(0.5, 5.0, 0.5, 2.5);
|
||||
}
|
||||
protected:
|
||||
QColor getColor(double x, double y)
|
||||
|
@ -59,7 +63,7 @@ protected:
|
|||
Vector3 eye = {0.0, 0.0, 0.0};
|
||||
Vector3 look;
|
||||
|
||||
look.x = -100.0;
|
||||
look.x = -1.0;
|
||||
look.y = -y;
|
||||
look.z = -x;
|
||||
|
||||
|
|
|
@ -18,6 +18,8 @@ public:
|
|||
PreviewTerrainHeight(QWidget* parent):BasePreview(parent)
|
||||
{
|
||||
_preview_definition = terrainCreateDefinition();
|
||||
|
||||
configScaling(0.5, 200.0, 1.0, 50.0);
|
||||
}
|
||||
protected:
|
||||
QColor getColor(double x, double y)
|
||||
|
@ -40,16 +42,54 @@ class PreviewTerrainColor:public BasePreview
|
|||
public:
|
||||
PreviewTerrainColor(QWidget* parent):BasePreview(parent)
|
||||
{
|
||||
LightDefinition light;
|
||||
TextureLayerDefinition* texture;
|
||||
|
||||
_renderer = rendererCreate();
|
||||
_renderer.applyTextures = _applyTextures;
|
||||
_renderer.getTerrainHeight = _getTerrainHeight;
|
||||
/*_renderer.applyLightingToSurface = _applyLightingToSurface;*/
|
||||
_renderer.applyLightingToSurface = _applyLightingToSurface;
|
||||
_renderer.maskLight = _maskLight;
|
||||
|
||||
_lighting = lightingCreateDefinition();
|
||||
light.color.r = 0.7;
|
||||
light.color.g = 0.7;
|
||||
light.color.b = 0.7;
|
||||
light.amplitude = 0.0;
|
||||
light.direction.x = -0.5;
|
||||
light.direction.y = -0.7071;
|
||||
light.direction.z = 0.5;
|
||||
light.filtered = 0;
|
||||
light.masked = 1;
|
||||
light.reflection = 0.0;
|
||||
lightingAddLight(&_lighting, light);
|
||||
light.color.r = 0.3;
|
||||
light.color.g = 0.3;
|
||||
light.color.b = 0.3;
|
||||
light.amplitude = 0.0;
|
||||
light.direction.x = 0.5;
|
||||
light.direction.y = -0.7071;
|
||||
light.direction.z = -0.5;
|
||||
light.filtered = 0;
|
||||
light.masked = 0;
|
||||
light.reflection = 0.0;
|
||||
lightingAddLight(&_lighting, light);
|
||||
lightingValidateDefinition(&_lighting);
|
||||
|
||||
_terrain = terrainCreateDefinition();
|
||||
_textures = texturesCreateDefinition();
|
||||
texturesAddLayer(&_textures);
|
||||
texture = texturesGetLayer(&_textures, 0);
|
||||
texture->material.base = COLOR_WHITE;
|
||||
texture->material.reflection = 0.0;
|
||||
texture->bump_height = 0.0;
|
||||
texturesLayerValidateDefinition(texture);
|
||||
|
||||
_renderer.customData[0] = &_terrain;
|
||||
_renderer.customData[1] = &_textures;
|
||||
_renderer.customData[2] = &_lighting;
|
||||
|
||||
configScaling(0.5, 200.0, 1.0, 50.0);
|
||||
}
|
||||
protected:
|
||||
QColor getColor(double x, double y)
|
||||
|
@ -59,12 +99,13 @@ protected:
|
|||
void updateData()
|
||||
{
|
||||
terrainCopyDefinition(&_definition, &_terrain);
|
||||
sceneryGetTextures(&_textures);
|
||||
//sceneryGetTextures(&_textures);
|
||||
}
|
||||
private:
|
||||
Renderer _renderer;
|
||||
TerrainDefinition _terrain;
|
||||
TexturesDefinition _textures;
|
||||
LightingDefinition _lighting;
|
||||
|
||||
static double _getTerrainHeight(Renderer* renderer, double x, double z)
|
||||
{
|
||||
|
@ -75,6 +116,16 @@ private:
|
|||
{
|
||||
return texturesGetColor((TexturesDefinition*)(renderer->customData[1]), renderer, location, precision);
|
||||
}
|
||||
|
||||
static Color _applyLightingToSurface(Renderer* renderer, Vector3 location, Vector3 normal, SurfaceMaterial material)
|
||||
{
|
||||
return lightingApplyToSurface((LightingDefinition*)renderer->customData[2], renderer, location, normal, material);
|
||||
}
|
||||
|
||||
static Color _maskLight(Renderer* renderer, Color light_color, Vector3 at_location, Vector3 light_location, Vector3 direction_to_light)
|
||||
{
|
||||
return terrainLightFilter((TerrainDefinition*)(renderer->customData[0]), renderer, light_color, at_location, light_location, direction_to_light);
|
||||
}
|
||||
};
|
||||
|
||||
/**************** Form ****************/
|
||||
|
@ -86,7 +137,7 @@ FormTerrain::FormTerrain(QWidget *parent):
|
|||
previewHeight = new PreviewTerrainHeight(this);
|
||||
previewColor = new PreviewTerrainColor(this);
|
||||
addPreview(previewHeight, QString(tr("Height preview (normalized)")));
|
||||
addPreview(previewColor, QString(tr("Textured preview (no shadow)")));
|
||||
addPreview(previewColor, QString(tr("Lighted preview (no texture)")));
|
||||
|
||||
addInputNoise(tr("Noise"), _definition.height_noise);
|
||||
addInputDouble(tr("Height"), &_definition.height_factor, 0.0, 20.0, 0.1, 1.0);
|
||||
|
|
|
@ -34,6 +34,8 @@ public:
|
|||
_renderer.customData[0] = &_terrain;
|
||||
|
||||
_preview_layer = texturesLayerCreateDefinition();
|
||||
|
||||
configScaling(0.5, 200.0, 1.0, 50.0);
|
||||
}
|
||||
protected:
|
||||
QColor getColor(double x, double y)
|
||||
|
@ -91,15 +93,17 @@ public:
|
|||
_renderer.camera_location.x = 0.0;
|
||||
_renderer.camera_location.y = 20.0;
|
||||
_renderer.camera_location.z = 0.0;
|
||||
|
||||
configScaling(0.1, 10.0, 0.1, 1.0);
|
||||
}
|
||||
protected:
|
||||
QColor getColor(double x, double y)
|
||||
{
|
||||
Vector3 location;
|
||||
location.x = x * 0.01;
|
||||
location.x = x;
|
||||
location.y = 0.0;
|
||||
location.z = y * 0.01;
|
||||
return colorToQColor(texturesGetLayerColor(&_preview_layer, &_renderer, location, this->scaling * 0.01));
|
||||
location.z = y;
|
||||
return colorToQColor(texturesGetLayerColor(&_preview_layer, &_renderer, location, this->scaling));
|
||||
}
|
||||
void updateData()
|
||||
{
|
||||
|
|
|
@ -24,6 +24,8 @@ public:
|
|||
{
|
||||
_water = waterCreateDefinition();
|
||||
_terrain = terrainCreateDefinition();
|
||||
|
||||
configScaling(0.5, 200.0, 1.0, 50.0);
|
||||
}
|
||||
protected:
|
||||
QColor getColor(double x, double y)
|
||||
|
@ -77,6 +79,8 @@ public:
|
|||
_renderer.applyLightingToSurface = _applyLightingToSurface;
|
||||
_renderer.customData[0] = &_water;
|
||||
_renderer.customData[1] = &_lighting;
|
||||
|
||||
configScaling(10.0, 1000.0, 10.0, 250.0);
|
||||
}
|
||||
protected:
|
||||
QColor getColor(double x, double y)
|
||||
|
|
|
@ -93,62 +93,62 @@ Cliquez avec le bouton droit sur un point pour le supprimer.</translation>
|
|||
<context>
|
||||
<name>DialogNoise</name>
|
||||
<message>
|
||||
<location filename="../gui_qt/dialognoise.cpp" line="98"/>
|
||||
<location filename="../gui_qt/dialognoise.cpp" line="102"/>
|
||||
<source>Level preview</source>
|
||||
<translation>Aperçu du composant</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../gui_qt/dialognoise.cpp" line="103"/>
|
||||
<location filename="../gui_qt/dialognoise.cpp" line="106"/>
|
||||
<source>Total preview</source>
|
||||
<translation>Aperçu du total</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../gui_qt/dialognoise.cpp" line="112"/>
|
||||
<location filename="../gui_qt/dialognoise.cpp" line="114"/>
|
||||
<source>Noise components</source>
|
||||
<translation>Composants du bruit</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../gui_qt/dialognoise.cpp" line="121"/>
|
||||
<location filename="../gui_qt/dialognoise.cpp" line="123"/>
|
||||
<source>Add component</source>
|
||||
<translation>Ajouter un composant</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../gui_qt/dialognoise.cpp" line="125"/>
|
||||
<location filename="../gui_qt/dialognoise.cpp" line="127"/>
|
||||
<source>Remove component</source>
|
||||
<translation>Supprimer un composant</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../gui_qt/dialognoise.cpp" line="129"/>
|
||||
<location filename="../gui_qt/dialognoise.cpp" line="131"/>
|
||||
<source>Component height</source>
|
||||
<translation>Hauteur du composant</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../gui_qt/dialognoise.cpp" line="141"/>
|
||||
<location filename="../gui_qt/dialognoise.cpp" line="143"/>
|
||||
<source>Component scaling</source>
|
||||
<translation>Echelle du composant</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../gui_qt/dialognoise.cpp" line="157"/>
|
||||
<location filename="../gui_qt/dialognoise.cpp" line="159"/>
|
||||
<source>Validate</source>
|
||||
<translation>Valider</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../gui_qt/dialognoise.cpp" line="161"/>
|
||||
<location filename="../gui_qt/dialognoise.cpp" line="163"/>
|
||||
<source>Reset</source>
|
||||
<translation>Recommencer</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../gui_qt/dialognoise.cpp" line="165"/>
|
||||
<location filename="../gui_qt/dialognoise.cpp" line="167"/>
|
||||
<source>Cancel</source>
|
||||
<translation>Annuler</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../gui_qt/dialognoise.cpp" line="169"/>
|
||||
<location filename="../gui_qt/dialognoise.cpp" line="171"/>
|
||||
<source>Paysages 3D - Noise editor</source>
|
||||
<translation>Paysages 3D - Editeur de bruit</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../gui_qt/dialognoise.cpp" line="220"/>
|
||||
<location filename="../gui_qt/dialognoise.cpp" line="222"/>
|
||||
<source>Component %1</source>
|
||||
<translation>Composant %1</translation>
|
||||
</message>
|
||||
|
@ -220,32 +220,32 @@ Maintenir Ctrl : Plus rapide</translation>
|
|||
<context>
|
||||
<name>FormAtmosphere</name>
|
||||
<message>
|
||||
<location filename="../gui_qt/formatmosphere.cpp" line="62"/>
|
||||
<location filename="../gui_qt/formatmosphere.cpp" line="64"/>
|
||||
<source>Color preview</source>
|
||||
<translation>Aperçu de la couleur</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../gui_qt/formatmosphere.cpp" line="64"/>
|
||||
<location filename="../gui_qt/formatmosphere.cpp" line="66"/>
|
||||
<source>Start distance</source>
|
||||
<translation>Distance de début</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../gui_qt/formatmosphere.cpp" line="65"/>
|
||||
<location filename="../gui_qt/formatmosphere.cpp" line="67"/>
|
||||
<source>End distance</source>
|
||||
<translation>Distance de fin</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../gui_qt/formatmosphere.cpp" line="66"/>
|
||||
<location filename="../gui_qt/formatmosphere.cpp" line="68"/>
|
||||
<source>Masking power</source>
|
||||
<translation>Opacité maximale</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../gui_qt/formatmosphere.cpp" line="67"/>
|
||||
<location filename="../gui_qt/formatmosphere.cpp" line="69"/>
|
||||
<source>Lock color on haze</source>
|
||||
<translation>Verrouiller sur la couleur de la brume</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../gui_qt/formatmosphere.cpp" line="68"/>
|
||||
<location filename="../gui_qt/formatmosphere.cpp" line="70"/>
|
||||
<source>Color</source>
|
||||
<translation>Couleur</translation>
|
||||
</message>
|
||||
|
@ -253,72 +253,72 @@ Maintenir Ctrl : Plus rapide</translation>
|
|||
<context>
|
||||
<name>FormClouds</name>
|
||||
<message>
|
||||
<location filename="../gui_qt/formclouds.cpp" line="145"/>
|
||||
<location filename="../gui_qt/formclouds.cpp" line="149"/>
|
||||
<source>Layer coverage (no lighting)</source>
|
||||
<translation>Couverture de la couche (sans éclairage)</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../gui_qt/formclouds.cpp" line="146"/>
|
||||
<location filename="../gui_qt/formclouds.cpp" line="150"/>
|
||||
<source>Color and lighting</source>
|
||||
<translation>Echantillon éclairé</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../gui_qt/formclouds.cpp" line="148"/>
|
||||
<location filename="../gui_qt/formclouds.cpp" line="152"/>
|
||||
<source>Start altitude</source>
|
||||
<translation>Altitude de début</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../gui_qt/formclouds.cpp" line="149"/>
|
||||
<location filename="../gui_qt/formclouds.cpp" line="153"/>
|
||||
<source>Max density altitude</source>
|
||||
<translation>Altitude de densité maximale</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../gui_qt/formclouds.cpp" line="150"/>
|
||||
<location filename="../gui_qt/formclouds.cpp" line="154"/>
|
||||
<source>End altitude</source>
|
||||
<translation>Altitude de fin</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../gui_qt/formclouds.cpp" line="151"/>
|
||||
<location filename="../gui_qt/formclouds.cpp" line="155"/>
|
||||
<source>Noise</source>
|
||||
<translation>Bruit</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../gui_qt/formclouds.cpp" line="152"/>
|
||||
<location filename="../gui_qt/formclouds.cpp" line="156"/>
|
||||
<source>Coverage</source>
|
||||
<translation>Couverture</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../gui_qt/formclouds.cpp" line="153"/>
|
||||
<location filename="../gui_qt/formclouds.cpp" line="157"/>
|
||||
<source>Scaling</source>
|
||||
<translation>Echelle</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../gui_qt/formclouds.cpp" line="154"/>
|
||||
<location filename="../gui_qt/formclouds.cpp" line="158"/>
|
||||
<source>Base color</source>
|
||||
<translation>Couleur de base</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../gui_qt/formclouds.cpp" line="155"/>
|
||||
<location filename="../gui_qt/formclouds.cpp" line="159"/>
|
||||
<source>Light reflection</source>
|
||||
<translation>Facteur de réflexion de la lumière</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../gui_qt/formclouds.cpp" line="156"/>
|
||||
<location filename="../gui_qt/formclouds.cpp" line="160"/>
|
||||
<source>Light reflection shininess</source>
|
||||
<translation>Concentration de la réflexion de lumière</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../gui_qt/formclouds.cpp" line="157"/>
|
||||
<location filename="../gui_qt/formclouds.cpp" line="161"/>
|
||||
<source>Transparency depth</source>
|
||||
<translation>Distance de transparence</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../gui_qt/formclouds.cpp" line="158"/>
|
||||
<location filename="../gui_qt/formclouds.cpp" line="162"/>
|
||||
<source>Light traversal depth</source>
|
||||
<translation>Distance de traversée de la lumière</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../gui_qt/formclouds.cpp" line="159"/>
|
||||
<location filename="../gui_qt/formclouds.cpp" line="163"/>
|
||||
<source>Minimum lighting</source>
|
||||
<translation>Eclairage minimal</translation>
|
||||
</message>
|
||||
|
@ -353,47 +353,52 @@ Maintenir Ctrl : Plus rapide</translation>
|
|||
<context>
|
||||
<name>FormRender</name>
|
||||
<message>
|
||||
<location filename="../gui_qt/formrender.cpp" line="23"/>
|
||||
<location filename="../gui_qt/formrender.cpp" line="106"/>
|
||||
<source>Top-down preview</source>
|
||||
<translation>Aperçu plongeant</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../gui_qt/formrender.cpp" line="108"/>
|
||||
<source>Camera</source>
|
||||
<translation>Caméra</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../gui_qt/formrender.cpp" line="24"/>
|
||||
<location filename="../gui_qt/formrender.cpp" line="109"/>
|
||||
<source>Quality</source>
|
||||
<translation>Qualité de rendu</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../gui_qt/formrender.cpp" line="25"/>
|
||||
<location filename="../gui_qt/formrender.cpp" line="110"/>
|
||||
<source>Image width</source>
|
||||
<translation>Largeur de l'image</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../gui_qt/formrender.cpp" line="26"/>
|
||||
<location filename="../gui_qt/formrender.cpp" line="111"/>
|
||||
<source>Image height</source>
|
||||
<translation>Hauteur de l'image</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../gui_qt/formrender.cpp" line="28"/>
|
||||
<location filename="../gui_qt/formrender.cpp" line="113"/>
|
||||
<source>Start new render</source>
|
||||
<translation>Démarrer un rendu</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../gui_qt/formrender.cpp" line="30"/>
|
||||
<location filename="../gui_qt/formrender.cpp" line="115"/>
|
||||
<source>Show last render</source>
|
||||
<translation>Voir le dernier rendu</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../gui_qt/formrender.cpp" line="32"/>
|
||||
<location filename="../gui_qt/formrender.cpp" line="117"/>
|
||||
<source>Save last render</source>
|
||||
<translation>Sauvegarder le dernier rendu</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../gui_qt/formrender.cpp" line="111"/>
|
||||
<location filename="../gui_qt/formrender.cpp" line="196"/>
|
||||
<source>Choose a filename to save the last render</source>
|
||||
<translation>Choisissez un nom de fichier pour le rendu</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../gui_qt/formrender.cpp" line="115"/>
|
||||
<location filename="../gui_qt/formrender.cpp" line="200"/>
|
||||
<source>The picture %1 has been saved.</source>
|
||||
<translation>L'image %1 a été sauvegardée.</translation>
|
||||
</message>
|
||||
|
@ -401,47 +406,47 @@ Maintenir Ctrl : Plus rapide</translation>
|
|||
<context>
|
||||
<name>FormSky</name>
|
||||
<message>
|
||||
<location filename="../gui_qt/formsky.cpp" line="84"/>
|
||||
<location filename="../gui_qt/formsky.cpp" line="88"/>
|
||||
<source>West preview</source>
|
||||
<translation>Aperçu de l'ouest</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../gui_qt/formsky.cpp" line="86"/>
|
||||
<location filename="../gui_qt/formsky.cpp" line="90"/>
|
||||
<source>East preview</source>
|
||||
<translation>Aperçu de l'est</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../gui_qt/formsky.cpp" line="88"/>
|
||||
<location filename="../gui_qt/formsky.cpp" line="92"/>
|
||||
<source>Day time</source>
|
||||
<translation>Heure du jour</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../gui_qt/formsky.cpp" line="89"/>
|
||||
<location filename="../gui_qt/formsky.cpp" line="93"/>
|
||||
<source>Sun color</source>
|
||||
<translation>Couleur du soleil</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../gui_qt/formsky.cpp" line="90"/>
|
||||
<location filename="../gui_qt/formsky.cpp" line="94"/>
|
||||
<source>Sun radius</source>
|
||||
<translation>Diamètre apparent du soleil</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../gui_qt/formsky.cpp" line="91"/>
|
||||
<location filename="../gui_qt/formsky.cpp" line="95"/>
|
||||
<source>Zenith color</source>
|
||||
<translation>Couleur du ciel au zénith</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../gui_qt/formsky.cpp" line="92"/>
|
||||
<location filename="../gui_qt/formsky.cpp" line="96"/>
|
||||
<source>Haze color</source>
|
||||
<translation>Couleur de la brume</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../gui_qt/formsky.cpp" line="93"/>
|
||||
<location filename="../gui_qt/formsky.cpp" line="97"/>
|
||||
<source>Haze height</source>
|
||||
<translation>Hauteur apparente de la brume</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../gui_qt/formsky.cpp" line="94"/>
|
||||
<location filename="../gui_qt/formsky.cpp" line="98"/>
|
||||
<source>Haze smoothing</source>
|
||||
<translation>Facteur de lissage de la brume</translation>
|
||||
</message>
|
||||
|
@ -449,27 +454,31 @@ Maintenir Ctrl : Plus rapide</translation>
|
|||
<context>
|
||||
<name>FormTerrain</name>
|
||||
<message>
|
||||
<location filename="../gui_qt/formterrain.cpp" line="88"/>
|
||||
<location filename="../gui_qt/formterrain.cpp" line="139"/>
|
||||
<source>Height preview (normalized)</source>
|
||||
<translation>Aperçu de la hauteur (normalisée)</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../gui_qt/formterrain.cpp" line="89"/>
|
||||
<source>Textured preview (no shadow)</source>
|
||||
<translation>Aperçu du rendu (sans ombres)</translation>
|
||||
<translation type="obsolete">Aperçu du rendu (sans ombres)</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../gui_qt/formterrain.cpp" line="91"/>
|
||||
<location filename="../gui_qt/formterrain.cpp" line="140"/>
|
||||
<source>Lighted preview (no texture)</source>
|
||||
<translation>Aperçu éclairé (sans texture)</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../gui_qt/formterrain.cpp" line="142"/>
|
||||
<source>Noise</source>
|
||||
<translation>Bruit</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../gui_qt/formterrain.cpp" line="92"/>
|
||||
<location filename="../gui_qt/formterrain.cpp" line="143"/>
|
||||
<source>Height</source>
|
||||
<translation>Hauteur</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../gui_qt/formterrain.cpp" line="93"/>
|
||||
<location filename="../gui_qt/formterrain.cpp" line="144"/>
|
||||
<source>Scaling</source>
|
||||
<translation>Echelle</translation>
|
||||
</message>
|
||||
|
@ -477,7 +486,7 @@ Maintenir Ctrl : Plus rapide</translation>
|
|||
<context>
|
||||
<name>FormTextures</name>
|
||||
<message>
|
||||
<location filename="../gui_qt/formtextures.cpp" line="128"/>
|
||||
<location filename="../gui_qt/formtextures.cpp" line="132"/>
|
||||
<source>Coverage preview</source>
|
||||
<translation>Aperçu de la couverture</translation>
|
||||
</message>
|
||||
|
@ -486,77 +495,77 @@ Maintenir Ctrl : Plus rapide</translation>
|
|||
<translation type="obsolete">Rendu en couleur</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../gui_qt/formtextures.cpp" line="129"/>
|
||||
<location filename="../gui_qt/formtextures.cpp" line="133"/>
|
||||
<source>Lighted sample</source>
|
||||
<translation>Echantillon éclairé</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../gui_qt/formtextures.cpp" line="131"/>
|
||||
<location filename="../gui_qt/formtextures.cpp" line="135"/>
|
||||
<source>Surface noise</source>
|
||||
<translation>Bruit de surface</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../gui_qt/formtextures.cpp" line="132"/>
|
||||
<location filename="../gui_qt/formtextures.cpp" line="136"/>
|
||||
<source>Surface noise height</source>
|
||||
<translation>Hauteur du bruit</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../gui_qt/formtextures.cpp" line="133"/>
|
||||
<location filename="../gui_qt/formtextures.cpp" line="137"/>
|
||||
<source>Surface noise scaling</source>
|
||||
<translation>Echelle du bruit</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../gui_qt/formtextures.cpp" line="134"/>
|
||||
<location filename="../gui_qt/formtextures.cpp" line="138"/>
|
||||
<source>Base color</source>
|
||||
<translation>Couleur de base</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../gui_qt/formtextures.cpp" line="135"/>
|
||||
<location filename="../gui_qt/formtextures.cpp" line="139"/>
|
||||
<source>Light reflection</source>
|
||||
<translation>Réflexion de lumière</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../gui_qt/formtextures.cpp" line="136"/>
|
||||
<location filename="../gui_qt/formtextures.cpp" line="140"/>
|
||||
<source>Light reflection shininess</source>
|
||||
<translation>Concentration de la réflexion de lumière</translation>
|
||||
<translation>Concentration de la lumière réfléchie</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../gui_qt/formtextures.cpp" line="139"/>
|
||||
<location filename="../gui_qt/formtextures.cpp" line="143"/>
|
||||
<source>Soft minimal height</source>
|
||||
<translation>Altitude minimal (adoucie)</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../gui_qt/formtextures.cpp" line="138"/>
|
||||
<location filename="../gui_qt/formtextures.cpp" line="142"/>
|
||||
<source>Hard minimal height</source>
|
||||
<translation>Altitude minimale</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../gui_qt/formtextures.cpp" line="141"/>
|
||||
<location filename="../gui_qt/formtextures.cpp" line="145"/>
|
||||
<source>Hard maximal height</source>
|
||||
<translation>Altitude maximale</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../gui_qt/formtextures.cpp" line="140"/>
|
||||
<location filename="../gui_qt/formtextures.cpp" line="144"/>
|
||||
<source>Soft maximal height</source>
|
||||
<translation>Altitude maximale (adoucie)</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../gui_qt/formtextures.cpp" line="143"/>
|
||||
<location filename="../gui_qt/formtextures.cpp" line="147"/>
|
||||
<source>Soft minimal slope</source>
|
||||
<translation>Pente minimale (adoucie)</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../gui_qt/formtextures.cpp" line="142"/>
|
||||
<location filename="../gui_qt/formtextures.cpp" line="146"/>
|
||||
<source>Hard minimal slope</source>
|
||||
<translation>Pente minimale</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../gui_qt/formtextures.cpp" line="145"/>
|
||||
<location filename="../gui_qt/formtextures.cpp" line="149"/>
|
||||
<source>Hard maximal slope</source>
|
||||
<translation>Pente maximale</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../gui_qt/formtextures.cpp" line="144"/>
|
||||
<location filename="../gui_qt/formtextures.cpp" line="148"/>
|
||||
<source>Soft maximal slope</source>
|
||||
<translation>Pente maximale (adoucie)</translation>
|
||||
</message>
|
||||
|
@ -564,72 +573,72 @@ Maintenir Ctrl : Plus rapide</translation>
|
|||
<context>
|
||||
<name>FormWater</name>
|
||||
<message>
|
||||
<location filename="../gui_qt/formwater.cpp" line="173"/>
|
||||
<location filename="../gui_qt/formwater.cpp" line="177"/>
|
||||
<source>Coverage preview</source>
|
||||
<translation>Aperçu de la couverture</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../gui_qt/formwater.cpp" line="174"/>
|
||||
<location filename="../gui_qt/formwater.cpp" line="178"/>
|
||||
<source>Rendered preview (without/with lighting)</source>
|
||||
<translation>Aperçu du rendu (sans/avec éclairage)</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../gui_qt/formwater.cpp" line="176"/>
|
||||
<location filename="../gui_qt/formwater.cpp" line="180"/>
|
||||
<source>Height</source>
|
||||
<translation>Hauteur</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../gui_qt/formwater.cpp" line="177"/>
|
||||
<location filename="../gui_qt/formwater.cpp" line="181"/>
|
||||
<source>Surface color</source>
|
||||
<translation>Couleur de la surface</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../gui_qt/formwater.cpp" line="178"/>
|
||||
<location filename="../gui_qt/formwater.cpp" line="182"/>
|
||||
<source>Light reflection</source>
|
||||
<translation>Réflection de la lumière</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../gui_qt/formwater.cpp" line="179"/>
|
||||
<location filename="../gui_qt/formwater.cpp" line="183"/>
|
||||
<source>Shininess to light</source>
|
||||
<translation>Concentration de la lumière réfléchie</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../gui_qt/formwater.cpp" line="180"/>
|
||||
<location filename="../gui_qt/formwater.cpp" line="184"/>
|
||||
<source>Transparency</source>
|
||||
<translation>Transparence</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../gui_qt/formwater.cpp" line="181"/>
|
||||
<location filename="../gui_qt/formwater.cpp" line="185"/>
|
||||
<source>Reflection</source>
|
||||
<translation>Reflets</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../gui_qt/formwater.cpp" line="182"/>
|
||||
<location filename="../gui_qt/formwater.cpp" line="186"/>
|
||||
<source>Transparency distance</source>
|
||||
<translation>Distance maximale de transparence</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../gui_qt/formwater.cpp" line="183"/>
|
||||
<location filename="../gui_qt/formwater.cpp" line="187"/>
|
||||
<source>Depth color</source>
|
||||
<translation>Couleur en profondeur</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../gui_qt/formwater.cpp" line="184"/>
|
||||
<location filename="../gui_qt/formwater.cpp" line="188"/>
|
||||
<source>Light-through distance</source>
|
||||
<translation>Distance de filtrage de la lumière</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../gui_qt/formwater.cpp" line="185"/>
|
||||
<location filename="../gui_qt/formwater.cpp" line="189"/>
|
||||
<source>Waves noise</source>
|
||||
<translation>Bruit des vagues</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../gui_qt/formwater.cpp" line="186"/>
|
||||
<location filename="../gui_qt/formwater.cpp" line="190"/>
|
||||
<source>Waves height</source>
|
||||
<translation>Hauteur des vagues</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../gui_qt/formwater.cpp" line="187"/>
|
||||
<location filename="../gui_qt/formwater.cpp" line="191"/>
|
||||
<source>Waves scaling</source>
|
||||
<translation>Echelle des vagues</translation>
|
||||
</message>
|
||||
|
|
Loading…
Reference in a new issue