Geomorph - a height field
editor for Linux
Welcome
Release
of update 0.63 (February 2021)
Release of update 0.62
(April 2016)
Release of update 0.60.1 (August
2012)
Release of version 0.60 (December
the 20th, 2010)
Copyright
infringement, a reminder
Release of
version 0.50 (August the 1st, 2008)
Fixing
a crash related to the continuous pen (March the 17th,
2007)
Release of version
0.40 (February the 21st, 2007)
Older
news
Welcome to the Geomorph
site
The Geomorph site gathers all guides and tutorials written since
the 0.11 release, in 2003.
If it's your first encounter with Geomorph, do not forget to read
the introduction, which explains
among other things how are generated the height fields.
See also the guides and tutorials list in the documentation index.
And last but not least, do not miss the gallery!
Release of update
0.63 (February 2021)
Update 0.63 of Geomorph fixes
segmentation faults at startup with recent distributions (Ubuntu
18.04 LTS and 20.04 LTS or equivalent).
Release of update
0.62 (April 2016)
Update
0.62 of Geomorph fixes a few bugs, like an incomplete
install of POV-Ray scripts, non closable document windows and a
too dark OpenGL preview.
Compilation and use have been tested on Ubuntu 14.04, 15.04 and 16.04.
A good news : since 2014 Geomorph is integrated to Fedora, thanks to Didier Fabert. Merci Didier!
Release of
update 0.60.1 (August 2012)
Update
0.60.1 to Geomorph fixes configuration scripts to allow
compilation under recent systems like Ubuntu 12.04. With v. 0.60
of December 2010, libgtkglext makes the compilation stop.
I also added a
precompiled 64-bit package. It has been tested under an
Ubuntu 12.04 Live CD.
Geomorph 0.60.1 adds no feature and fixes no other bug. If
Geomorph already works fine for you, you don't have to upgrade it.
When testing, I noticed that PovRAY is no more provided with
Ubuntu 12.04. I don't know what happens for other distributions. I
found no Ubuntu PPA repository for it (Personal Package Archive),
as of August 2012. You can install PovRAY from the sources on www.povray.org, or use the
previous packages as
explained here for a 64-bit system, post #3.
PovRAY 3.6 under Ubuntu 12.04 and the Unity windows manager still
displays translucent windows. The fix is the same as before: use
Compiz, install the "Compiz Config Settings Manager", activate
"Windows Rules", write class=Povray in "No ARGB visuals".
Case is important for class=Povray! And yes, you can use
the Compiz cube with Unity. It's unrelated to Geomorph, but it's
cool.
If you have any problem, please contact me. Geomorph development
has been suspended, but I want the software to continue to work
with current distributions.
Thanks for your support
Patrice St-Gelais
August 2012
Release
of version 0.60 (December the 20th, 2010)
Geomorph 0.60 provides a lot of fixes and
improvements, particularly these ones:
The drawing interface has been simplified. An other improvement relates to the way the lines cross themselves : by default they now intersect rather than add, avoiding "bumps". The add behaviour is an option.
There is now a water plane in the OpenGL preview. This plane is transmitted to Pov-Ray in the new simple_terrain.pov scene. If you upgrade from 0.50, I suggest that you copy this scene manually to your /home/../geomorph directory. You can also run the install-user script, which reinits all the scenes, copying the older ones under a new name.
Now an "altitude" ("alt") merging option is available in all merging sub-dialogs. You can see the result in the new Geomorph home page: the background is a mountainous terrain, smoothed then superimposed over himself. The lower part of the smoothed version was combined with the higher part of the source version, using "altitude merge", to simulate how the waves smooth a shore. I wish I'll have time to write a tutorial in the future...
Geomorph can now read any external RGB or grayscale PNG file as long as they are square with a power of 2 size. This includes 16-bit and 8-bit RGB or grayscale, with or without an alpha channel.
The scale cursors do not "stick" anymore, a problem which appeared with recent versions of the GTK+ 2.x librairies. Sometimes the interface became hard to use because of this.
The memory management, a difficult part in C or C++ programs, has been completely reviewed. I used Valgrind for testing and I developped my own tracking functions. Now Geomorph should be more stable, that is: it should crash more scarcely with a "segmentation fault" error. This was a huge "under the hood" work.
There was a display problem after changing the display scale and undoing a change on the terrain. Now this is solved.
There was a "segmentation fault" when using the "fault" tool over huge terrains (2048x2048), which is now fixed (it was a memory allocation problem, a dumb one...).
The undo / redo stack management and the auto-accept of changes when switching context have been reviewed. Both should work more consistently now.
There are 2 points that should be added in the FAQ :
When using Compiz, the Pov-Ray rendering window may be translucent, depending on your video setup. To avoid this, go into the Compiz configuration manager (compizconfig), then into the "Windows management" category, then into the "Window Rules"subcategory, and there, in the option "No ARGB visual", write class=Povray . With this option, the Pov-Ray window would be displayed without an alpha channel, which causes the transparency.
In a Geomorph dialog, when the "Apply" button does not work because it's dimmed out, try "Repeat" if there is one. It's a rare phenomenon I am not able to reproduce at will, so I can't diagnose it and fix it.
I tested this version by creating two "splash screens", including the home page of this web site and the image displayed when choosing "Application and author" in the main menu. After these tests there are a few annoying things I was not able to fix:
When using Geomorph with the integrated GPU of the Intel i3 unit, the video memory may become full. Geomorph stops. I don't know if it's a problem with the Xorg Intel driver or with my OpenGL programming. Speaking of OpenGL, I see an important slowdown after playing an OpenGL game like Extreme Tux Racer for a few minutes, so it may be a driver problem. Conclusion: save your work regularly!
The "fault" tool still produced a segmentation fault over a large terrain (1024x1024 or more), but only once. Unfortunately I was not able to reproduce the error (no, it's not the one I fixed!). Sorry if I repeat: save your work!
I didn't update the documentation this time. I am too short on spare time.
That's all for now. I don't forget what I have written about future improvements. Also one user asked for import / export plugins. I have less spare time, but I hope to do some work to clean the code further and make Geomorph more friendly at the programming interface level.
Thanks for your interest in Geomorph.
Patrice St-Gelais
Québec City, December the 18th 2010.
Copyright
infringement: a reminder
Huge parts of the page Anatomy of a Povray file for using Geomorph
has been copied word for word by two college teachers from
Romania, for a conference related to computer science.
The text in Word format can be found with Google. I found it by
chance when searching for a fog tutorial with Pov-Ray.
The Geomorph site is published under a Creative Commons license,
which allows free reuse and integration of any part of it for non
commercial purposes, as long as one complies with the
"attribution" clause, which means that the source should be
mentioned.
Unfortunately the authors reused my text without any reference to
the Geomorph site. Worst, nothing in the document says that
Geomorph is a Linux program and where it can be found. Without
that context, their document looks almost pointless. And
their paper contains a bibliography, listing research articles and
web sites. Why doesn't it list also the Geomorph site?
Actually the Geomorph site extracts are so predominant that their
8-page paper would be reduced to 5 paragraphs without it, 2 in the
introduction and 3 in the conclusion. This looks more like
intellectual fraud than a technical error.
I asked the authors to modify their document or to remove it from
any public repository. I received a message from one of them,
making apologies and indicating they are willing to comply. On
December the 19th 2010, the document is still publicly available.
My main recourse against this infringement is to publish the
facts. This is what I am doing today and what I will repeat, maybe
elsewhere, if required.
Release of version 0.50 (August the 1st, 2008)
I'm glad to announce version 0.50 . Besides
fixing some bugs, it provides these improvements:
A new "Fourier Explorer" shows a 3D image of the Fourier transform of a height field and allows to finely control its frequencies. Read on to know more. I must give credit to Antonio Larrosa Jiménez to let kfourier available for reuse, even if it does not work anymore with current systems. I translated its FFT ("Fast Fourier Transform") program from C++ to C for the core processing.
A new "Integrated interface" option is provided, if you don't like the Gimp-style multiple windows. Read here how to set it in the geomorphrc file. If you're installing Geomorph for the first time, you don't have to worry, it's the default.
The installation script of the desktop icon has been made compliant to the freedesktop.org standard. It should now work with all recent distributions.
With the previous Gimp-style interface, a new option allows to integrate the menu bar in each document window. It can be set in the geomorphrc file.
A new option in the geomorphrc file controls the type of terrain displayed when creating a new document. The default for a new install is now a "Subdivision 2" terrain. If you prefer the older grey canvas (provided for drawing hills and valleys), read here how to set the default.
The management of the default directories, which can be set in the geomorphrc file, has been revised.
Geomorph has been tested and adapted under Ubuntu 7.10 64 bits. Version 0.40 was compilable without errors on x64 systems, but some features were not working as expected.
Many small interface improvements have been implemented, like scrollable windows in the option dialog and the removal of the "activate" button in subdivision 2.
The FAQ has been completed with a question related to a situation where POV-Roy does not work.
The documentation contains 3 new pages. Apart from the introduction to the Fourier Explorer and the description of the option file geomorphrc, check the short "egg box" tutorial.
I also tried to improve the site by using CSS.
I sincerely thanks Simon Donike again who, in addition to
translating the dialogs to german, found a lot of problems when
testing the preliminary 0.50 version.
For the next versions, I hope to work on on import / export and
scaling functions. There are required at the same time, because
Geomorph only processes square images, with a power of 2 size. I
would also like to add selection tools in the mask style and tools
to help the landscape design process. There could also be a
surprise, if I have enough spare time. And I will consider any
suggestion which speaks to me!
Fixing a crash related to the continuous pen
(March the 17th, 2007)
With version 0.40, trying to modify the size scale or the level
scale in the continuous pen
produces a crash (segmentation fault) on some systems. The bug was
detected on an x64 system, but it can happen on any system.
Until a new version is launched, it can be fixed by replacing
"draw_dialog.c" before compiling the 0.40 package with this file:
http://geomorph.sourceforge.net/misc/draw_dialog.c
After downloading the file, open a console and copy it in your
Geomorph source tree:
cp draw_dialog.c
~/geomorph-0.40/src/hf/draw_dialog.c
Best thanks to Sanne for submitting the bug and testing my
solutions!
The 0.40 version
is here, finally! (February the 21st, 2007)
After more than one year, here is Geomorph
0.40, at last. It provides some important new features, a
lot of small improvements and fixes, plus a richer
documentation.
Here are the main new features:
A crack network creation tool, mainly inspired from the article Image-Guided Fracture from David Mould.
A tool for raising the edges of flat surfaces.
A tool which increases the noise on the height field. This is the equivalent of the "sharpen" tool in a paint program.
New Povray scripts are provided for taking advantage of these tools. See the scripts index.
The new crack network tool can be used to create
"normal maps" which can be tiled infinitely
Geomorph is not a program which can be used as
intuitively as a word processor. Tutorials and guides are
generally required. This version provides some new or updated
documentation:
A page about how to use the "water maps", which contains links to three short tutorials.
A guide about the use of the crack network tool and the Povray script index already quoted.
A "Getting started" page which has been largely updated and which describes, among other things, the different subidivision techniques used in Geomorph pour créer un terrain.
An updated tools index.
A FAQ and a downloading / installing .
New tutorials and new Povray scripts feature the use of "water maps".
Finally, a lot of fixes and improvements have been
made, including many when preparing the tutorials. Here are some
of them :
The rain erosion algorithm has been improved a lot. Some explanations are given in the tools index.
Configuration scripts have been updated to allow compilation under x64 CPUs and some recent distributions (thanks to Andy Pfiffer).
In the "wave" tool , the randomisation parameter does not create discontinuities anymore.
The reliability of the automatic committing mechanism, when switching between different dialogs or different windows, has been improved.
About the document window:
the (x,y) position and the altitude under the mouse cursor are not always displayed in the top left corner, not only when a pen is used;
after a zoom in, the height field is now centered in the window.
Messages and dialogs have been translated to German by Simon
Donike, like for the most recent versions.
See you later, during the next year, I hope!
Top
Contact: Patrice St-Gelais