Page 1 of 17
ArtifexTerra Terrain Editor [1.2 Beta Release 10.3.14 Pg.16]
Posted: Sun Jun 29, 2008 2:36 pm
by Nauk

Hey everyone, Artifex Terra started out inspired by toying around with Cabalistic's Enhanced Terrain Manager, attaching Navi for some quick & dirty ui-elements to it so we could use it as outdoor editor for our game project. Since then I keep adding features to it, turning out to be quite useful for us. I decided to polish it up a bit and release it to the public as free software. Over the time it has been growing into a standalone project and a well matured, production-ready tool.
However Artifex Terra does not aim to be a fully fledged level editor. The object placement and editing functions are merely meant as helper to adjust your terrain properly to the objects you are planing to use.
Finally after a long wait, lots of work and over 80 fixes and improvements due to my list, it is out: 1.2 Beta is here or here on page 16. 

So what's new in 1.2?
-
New paintengine with multilayer colour painting on 8 extra layers. - Similar like in popular 2d paint programs you can turn the visibility of each layer on and off and you can change the opacity for it. All 8 layers will be rendered into one single colour texture, so no extra texture slot required.
-
Automatic lightmap generation and a GUI control for it.
-
Migrated to a lot newer versions of the libraries Artifex is based upon. Ogre 1.7 (stability), PagedGeometry 1.14 (grass can receive lighting).
-
Changed the mousepointer to native so it no longer disappears. Right mouse still works to drag GUI elements. Something many wished for.
-
Reworked and improved the existing terrain shader material.
-
New project templates: A triplanar rendering shader to avoid texture stretching upslopes. A singlepass shader without normalmapping.
-
New texture bar control to navigate through the textures for texture painting and editing.
-
Improved memory handling to reduce leaks and crashes.
-
Overhaul of most of the GUI and workflow to improve the user experience.
-
Improved the texture manipulation control and made it accessible via texture bar.
-
New system for filepath and filename handling.
So far no negative feedback from the first round of testers, albeit being a beta and after being in testing for round 3 weeks now it appears to be a lot more reliable than 1.0 was, I have yet to experience a crash. That said I am pretty sure someone will soon
- I hope not though. Check out page 16 for more.
07.04.2013 - Preview shots of the upcoming new version 1.2 and the new multilayer colourpainting - more about it on pg.15:

06.10.2012 - Preview shots of the upcoming new version - more about it on pg.13:

Features: - (V1.0 RC1 - 03.09.2012 - Free Community Edition)
-
Ogre::Terrain Scene loader : http://sourceforge.net/projects/artifex ... p/download
-
Triplanar Splatting Shader (still WIP but works)
-
Grass saving enabled for everyone 
-
Scenes can be loaded with Ogres standard Terrain Scene Manager with full splatting and normalmapping support.
-
Paged and animated grass support.
-
Support for transparent textures.
-
Open source C++ scene-loader class for easy project integration.
-
Open source PHP-GTK based artifex-scene to ogre-dotscene converter.
-
Mesh based decal cursor resembling the current brush in pattern, size and rotation.
-
180 degree brush flipping.
-
Editable project templates.
-
SQlite based storage system.
-
Normalmapping and dynamic lighting support.
-
Infinite custom object value pairs to edit game-content.
-
50 step Undosystem for all paint and terrain actions.
-
Artpad support, tested with Wacom Graphire2 and Intous3 pads.
-
Brushsystem with 10 different brushes, can be infinitely more.
-
Brushrotation, random, snap to 11.25 steps and degreewise.
-
Paintpressure is affected by the brightness of the brush you use.
-
Colourpainting with several different tools: Paint, Erase, Darken, Brighten, Blur, Sharpen, Contrast, Noise and filters: GaussianBlur, Dilate, Edge,Erode,Repair,UnsharpMask,Sharpen,Noise,Clear.
-
Terrain-shaping with 2 filters, and several different tools: Lower, Raise, Blur, Flatblur, Boil, Plane.
-
Adding and editing of meshes, rapid placement with space+click for random rotation/placement.
-
WYSIWYG texture adjusting, RGB, Saturation, Brightness, Contrast.
-
Backblending of baked splatting textures to reduce texture tile effects.
-
Texture-painting (splatting) with 9 different textures.
-
Tested with terrain-sizes of 1500015000 ogre units.
Detailed documentation and help inside the application.
Model pack with trees, plants, buildings.
WYSIWYG grass painting.
-
And more...
Screenshot UI:
The UI is completely HTML / Javascript based thanks to the use of Navi which makes it relatively simple to customize it to your own likings.


Click to enlarge.
Powerful brush-centric painting & editing:
Believing the brush is the artists most powerful tool, the brush system is carefully designed and Artifex built around it. It is very responsive and allows fine resolving sculpting and painting. There are many speed and comfort features on easy reachable hotkeys, like random brush-rotation [SPACE], brush-flipping [Ctrl+Space] or press [Enter] to get the pressure, size and shape dialogue delivered right to your mouse-pointer.

TextureStudio:
Here you can see the redvalue of the drygrass texture adjusted. You can adjust the 3 different colourvalues, brightness, contrast, saturation and see the effect right away on the terrain. This feature makes it incredibly easy to adjust a set of textures to eachother.
Click to enlarge.
BackBlending of baked textures:
This is something I found by accident toying around with ETMs baked texture. Taking that texture, increasing the brightness by 145% and using it as colourpass, gives a rather nice effect reducing the disturbing tile-effect of splatting textures a great deal. You can see the difference in the screenshot where I deleted a square part of the colourlayer again. I recommend doing that when you are done with most of the splatting before you start colourpainting.

Click to enlarge.
Future plans:
* Some more surprises... 
Artifex Terra 3D 1.0 RC1 is freeware see installer or download-section for license details.
You can find the latest version (104mb), updates and a sample scene loader here: Download
and the homepage here: http://www.3d-terrain-editor.com
It requires Win2000/XP (no clue about Vista), DX9, VC++ Express 2005 SP1 runtime, 2GHZ+ CPU, 1 GB+ Ram and a PS2.0 able Gfx-card, Nvidia 7600 GT works fine. So far it has been tested fine with various NVidia, ATI and Intel cards.
Enough Blah-Blah, suggestions, wishes, critics and feedback are most welcome, but be gentle - I am sensitive 
Edit Preview of the new Ogre::Terrain loader:

Posted: Sun Jun 29, 2008 2:53 pm
by Xavyiy
Looks awesome!!
85fps on Nividia 8600.
Xavi
Posted: Sun Jun 29, 2008 3:07 pm
by nikki
Nice looking editor! What did you use to design your UI (I know you used Navi, I mean, what did you use to code the HTML)?
Posted: Sun Jun 29, 2008 3:39 pm
by my.name
nice
Posted: Sun Jun 29, 2008 4:59 pm
by madmarx
lots of sweet features !
Posted: Sun Jun 29, 2008 5:02 pm
by Kencho
Looks very neat and professional. I'm specially attracted by the tablet support feature

Maybe have an open plug-in extension modification design?
Posted: Sun Jun 29, 2008 5:43 pm
by Lee04
Maybe have an open plug-in extension modification design?
So we can add thing seven if we don't have all the code?
Really nice work.
Posted: Sun Jun 29, 2008 5:56 pm
by Wolfmanfx
Nice work

Is there a tablet SDK?
Posted: Sun Jun 29, 2008 8:15 pm
by Nauk
thanks for the nice feedback everyone
@Nikki: just Notepad++ and good old handcoded HTML, don't look at it too close, it's still not really cleaned up. The colourpicker was a readymade widget i found on the net, the url should be in the gui folder, there is a license notice + link in the header of the file. The design is also done by hand in photoshop6.0, the logo is made with Gimp because it has the way better font-rendering.
@Lee: I definately have in mind to make it more useful and attractive for other projects, a plugin system and scriptable in- and export are on the todo list. I might even opensource it, right now I just want to let it sink in a bit and go back to gamecoding and brood over it - either way, one or the other is en route.
Posted: Sun Jun 29, 2008 9:00 pm
by ajs15822
Hey this is really neat! Insane amount of features, super-amazing painting utilities, verbose and helpful manual, intuitive hotkeys, and a great interface-- you've designed a really powerful tool here. Extra kudos considering this is your first bigger C++ project; I can't wait to see what you're going to make with it!

Posted: Sun Jun 29, 2008 10:04 pm
by Crash
Wow thats nice

Will it be open sourced maybe?
EDIT: I got an error
Code: Select all
23:05:11: Texture: statusBarMaskTexture: Loading 1 faces(PF_A8R8G8B8,640x48x1) with 0 generated mipmaps from Image. Internal format is PF_A8R8G8B8,640x48x1.
23:05:11: OGRE EXCEPTION(2:InvalidParametersException): Mask dimensions must be greater than or equal to the dimensions of the Navi's internal texture. Mask Dimensions: 640x48, Texture Dimensions: 1024x64 in Navi::setMask at .\Source\Navi.cpp (line 738)
Posted: Sun Jun 29, 2008 10:22 pm
by ajs15822
Crash wrote:Wow thats nice

Will it be open sourced maybe?
EDIT: I got an error
Code: Select all
23:05:11: Texture: statusBarMaskTexture: Loading 1 faces(PF_A8R8G8B8,640x48x1) with 0 generated mipmaps from Image. Internal format is PF_A8R8G8B8,640x48x1.
23:05:11: OGRE EXCEPTION(2:InvalidParametersException): Mask dimensions must be greater than or equal to the dimensions of the Navi's internal texture. Mask Dimensions: 640x48, Texture Dimensions: 1024x64 in Navi::setMask at .\Source\Navi.cpp (line 738)
Ah this isn't totally Nauk's fault-- it looks like your video-card doesn't fully support non-power-of-two texture dimensions and so Navi has internally compensated for this by bumping up the actual dimensions to a power-of-two size which then violated the mask dimensions rule. This has all been fixed in v1.6 but Nauk hasn't updated yet because of a certain bug that I am trying to resolve.

Posted: Sun Jun 29, 2008 11:49 pm
by Nauk
@AJ: Thanks for the nice comment & jumping in AJ

I totaly missed that Navi 1.6 has solved the power of 2 problem, and I really love the performance boost coming with Astral, maybe I'll do a workaround for that one control in question untill you found the solution, so people with Intel and other cards not being able to run the editor right now can do so.
@Crash: Thanks for the nice feedback. I am very indifferent about opensourcing or not, or going for a plugin system or both. I really am a great fan of opensource and its power of producing great quality driven pieces of software, just never thought it through for myself yet, but on it now. As for the located bug, what card are you using?
Posted: Mon Jun 30, 2008 6:36 am
by Jerky
Wow, looks sweet. Too bad the Fx 5200 I am using crashes too

. I'll wait for a fix or an upgrade. Looks like a really excellent piece of work from here.
Posted: Mon Jun 30, 2008 2:28 pm
by Crash
I'm using ATI Radeon X1600.
Posted: Mon Jun 30, 2008 10:39 pm
by DarkScythe
Same problerm here, my card is x1950pro
Posted: Tue Jul 01, 2008 12:15 am
by Nauk
Upgrading to Navi 1.6 right now that will hopefully do it. Thanks for testing and patience

Posted: Tue Jul 01, 2008 12:41 am
by ajs15822
Nauk wrote:Upgrading to Navi 1.6 right now that will hopefully do it. Thanks for testing and patience

Make sure to get the latest SVN-- it has a fix for your first issue (focus management). As for your second issue (i-frame compatibility), I've replied to your thread.

Posted: Tue Jul 01, 2008 6:36 pm
by Nauk
Thanks AJ for the quick and great support

. I migrated to Navi1.6 now and butchered in the new control based on your optionPane demo, which will hopefully fix the issue.
You can find the latest version here:
http://www.out-online.com/smf/index.php ... 15#msg5115
There is also an update, roughly 8MB for those that already downloaded it.
Posted: Tue Jul 01, 2008 8:46 pm
by ajs15822
You're welcome.
Just tested it out, works great here-- a few minutes of playing around:

Posted: Wed Jul 02, 2008 1:09 am
by Crash
Now it works! Very nice tool
Btw how did you do the decal cursor? Is it a mesh decal or do you use projective texturing?
Posted: Wed Jul 02, 2008 9:20 am
by MadLion
Really nice what you have done there. ^^
To bad it's windows only...
Because i'm working on my own editor for our project bases on ETM and Qt i'm very interessted in your source. You have really nice features. ^^
So please keep thinking about opensource it. ^^
EDIT: I just want you to know this (about opensource it). It's not my intend to beg for source. *s*
Posted: Wed Jul 02, 2008 5:21 pm
by dudeabot
very nice

but i have some suggestions
1) instead of having to click on the button (that is like one pixel size), you could make to be possible to click on the tab/title bar
2) theres no scrollbar?
3) make it more clear in what mode it is, and make it apparent shortcuts for changing modes, as the user will use it more (i think)

Posted: Wed Jul 02, 2008 10:35 pm
by Nauk
Very nice shot AJ
@Crash: Thanks a lot

The code for the decal can be found here:
http://www.ogre3d.org/phpBB2addons/viewtopic.php?t=6371 there are several posts and a wiki entry about it too.
@Madlion: Thanks, glad you like it, right now are at least half of the components windows based not sure how easy it would be to make it x-platform and I so far have no experience coding for linux either. And no I didn't take it as code-begging, don't worry.
@dudeabot: Thank you, and you are absolutely right, the tabs should be clickable not the small buttons, and the clickable elements should be bigger.
I skipped the scrollbars for wanting as little eventhandling code in the ui as possible for performance reasons, my impression was they are pretty resource hungry. Looking at the new optionPane scroller it appears to be quite ok tho, I have to check it out again.
As for the editmodes you can see it in the statusbar and in the editmode -tab what mode you are in, top left-corner, also nearly anything is shortcut driven, the only thing that isn't are the terrainwide colourfilters, but you can access every edit-mode with Ctrl+somekey, check the manual F1 -> Hotkeys.
Thanks for the suggestions

I am writing a todo-list right now for 0.9 and am happy for more input.
Posted: Wed Jul 02, 2008 11:44 pm
by Crash
Argh, so it's a projective decal
