Advanced Landscape Editor (ALE) Demo Released

Community Forums/Developer Stations/Advanced Landscape Editor (ALE) Demo Released

Skitchy(Posted 2004) [#1]

Highlights :
Use up to 6 individual textures with individual settings to paint directly onto the landscape.
Textures are automatically blended together seamlessly using vertex alpha.
Use any color on any combination of vertex and texture.
Terraform the landscape in realtime.
Import / Export heightmaps.
Setup the sun and lightmap the entire terrain.
Preview the highly optimized results from within the editor (click Preview->Preview Optimized Level).
Auto-smooth function - makes landscape look even better.
'Spraypaint'-like operation couldn't be any easier. Uses the same controls for building and painting.


Download here ->
www.dyvision.co.uk/ALEDemo.zip


wmaass(Posted 2004) [#2]
whoohoo!, checking it out now...


dangerdave(Posted 2004) [#3]
Looks Good Skitchy.

A few things:
-- The red highlight that shows if you are raising or lowering terrain shows above the menu. (Just the red rectangle, nothing else)

-- I couldn't click on the 'brush size' arrows to move the slider (I could click and drag the slider, though)

-- [statement] - the optimize preview takes a long time (using the default terrain and textures)

-- [feature request] - Could you make an option to inverse the mouse movement?

-- [feature request] - Could you make an option that that toggle raise/lower? (example, hold shift while left-clicking to toggle the raise/lower terrain function.)

=================
This is looking good.

I don't see any info on your site.
Do you have a price set yet?


Skitchy(Posted 2004) [#4]
No price or website yet 'cos I wanted to get some feedback first.
The optimize preview does take a while, but the extra FPS are worth the wait believe me :) In the final version, this operation will also take place before export, ensuring the lowest possible poly-count and the least overdraw.

There is an 'inverse mouse' option already. Go to Options->Show Options and check/uncheck "Invert Y". Perhaps I should rename it?

I think I know what's going on with those other things - will fix.

Thanks for the feedback :)


Daz(Posted 2004) [#5]
I just downloaded the demo and I am very very impressed. This will certainly be on my "to-buy" list.

I have to admit that, while my 2d programming skills are okay, my 3d skills are still in its infancy - so please forgive me if my following questions are either basic or are just plain stupid.

My aim to help me learn Blitz 3d is to get a lot of the tools to integrate. So, could I create a multi-texture terrain using your excellent tool, import this into TerraEd then, finally, utilise the functionality of BlitzGrass and BlitzTree?

One thing TerraEd allows you to do when creating a new environment is to import a heightmap and a colourmap. I see your excellent application can save a heightmap but I didn't see an option for export of a colourmap. Is this possible?

Regards,
Daz.

Thanks in advance.

Daz.


Skitchy(Posted 2004) [#6]
This works in a very different way to TerraEd, because of the ability to use multiple textures. ALE uses custom meshes.

You *can* export heightmaps from ALE if you want, but the finished product will be able to export .b3d model(s) anyway, that you then load into your own game with LoadMesh() - its just that easy :) The heightmaps should be compatible with pretty much every other terrain editor too.

I don't see any reason why BlitzTree or BlitzGrass wouldn't work - the landscape can be treated as a standard mesh (it is NOT a crap Blitz-Terrain).

If the author of those systems could comment on that I'd be grateful :)

Depending on the success of the product as it stands I *MIGHT* add 'dropper-style' placement tools so that you can put in trees/buildings/whatever on the fly.


Barnabius(Posted 2004) [#7]
I've been waiting for this for quite some time. Can't wait to purchase the full version. Well done, Skitchy! :)

Barney


TartanTangerine (was Indiepath)(Posted 2004) [#8]
Put me down for a copy.


Warren(Posted 2004) [#9]
Hey Skitchy,

I see that you're using vertex alpha ... Is this using the method I outlined in my worklog (multiple surfaces on a mesh, vertex alpha for blending) or something else? Can you give a quick tech rundown for those of us interested in this sort of thing?


Rob(Posted 2004) [#10]
A few things I didn't like:

I didn't like the workflow of left click to lower and then having to click another button to raise. To my mind this is a little bit retarded. You can probably use a wacom pen as in code archives, where the eraser is actually pull and pen is push. Or vice versa. Pressure sensitive...

Or do it like torque, you merely hold the mouse down and then move the mouse up and down to raise. Mousewheel could then change the area of effect.

I love the functionality but I feel the design needs looking at - rather the workflow takes too long unneccesarily.

The actual idea is great though and I am curious.

Also, reverse mouse is probably a minority these days. I find it impossible to use a reverse mouse look. Fix that please...

Don't forget good old modulate2x though!


wmaass(Posted 2004) [#11]
Skitchy,

Tired it and I like it. Does it allow for higher detail or density in some areas to make it possible to have a more defined shape? For instance if I'd like to be able to have a relatively round shaped patch of grass?


Warren(Posted 2004) [#12]
I didn't like the workflow of left click to lower and then having to click another button to raise. To my mind this is a little bit retarded. You can probably use a wacom pen as in code archives, where the eraser is actually pull and pen is push. Or vice versa. Pressure sensitive...

We did the two button approach in UnrealEd for terrain editing and it works wonderfully. Left button increases the current tool, right button decreases it. This applies in a generic way to editing the heightmap, painting textures, smoothing, ets.

Having to constantly switch modes to raise/lower is a productivity killer.


Skitchy(Posted 2004) [#13]
Ok, I'll alter it. I did it that way to have the RMB available for 'mouselook' : you have to consider people without a 3rd mouse button.
The original used RMB=Lower, LMB=Raise, MMB=MouseLook. Would that be acceptable?

As I've alreday stated, there *IS* an 'Invert Y' option in the Options->Controls panel (I saw that one coming a mile off ;)

I'm not going to be supporting GFX tablets directly.

@EpicBoy re: tech stuff : I'm afraid I don't read worklogs, so I don't know if our methods are the same.
But yes, this is a vertex alpha solution. It works in a 'special super no.1 top secret' way that took me ages to figure out. I don't really want to give away too much ATM (that would just be silly), but the bit I'm especially proud of is the optimisation routines that take place before export / preview. :)

@wmaass - the mesh detail is fixed, but you can 'paint in' fine detail very easily. Just set the "Brush Size" slider to the lowest setting. That will give you control over individual verts for painting and terraforming. Also, use a low "Spray Rate" setting to slowly 'grow' the grass into the scene (hold down the left mouse button over the area you want to paint and you'll see what I mean).


Warren(Posted 2004) [#14]
Skitchy

Well, check it out and let me know if you think we're on the same page or not. :) I'm just curious is all...

http://www.blitzbasic.com/logs/userlog.php?user=4761&log=248

As for the mouse controls, if you make it so you have to be holding down the CTRL key to use the tool you can have the best of both worlds. With the key pressed, do the painting/editing. Without the key pressed, move the camera.


sigi(Posted 2004) [#15]
I mmmust have it. Between 200 and 300 fps, that is great.
Have not thought that this is possible in Blitz. Ok,
the Terrain is not so big as in the Torque Demo. But i
think it`s fast enough for greater Terrains too.
But i don`t like "WASD", please make this User configurable.
So i can use the Cursor keys.
Can`t wait, hurry up :)


ashmantle(Posted 2004) [#16]
I must have it also.. very nice indeed!

I would like a way to decrease lightmap opacity to make editing easier.. right now I don't see what happens in the shadow areas.

Perhaps a way to mold the heightmap with different "brush" forms? Like a "bulb" or "pinch" slider? pinch affecting the center most and the outer least and bulb the other way around.
I would also like the ability to raise/lower individual "tiles" or quads at once.. no smoothing. Could have a smooth tool included aswell?


Red Ocktober(Posted 2004) [#17]
taking a look now Skitch...

--Mike


Warren(Posted 2004) [#18]
Skitch

Something that I've found to be very useful is to have 2 radii instead of 1. You have an inner and outer radius that the designer can set.

Anything inside of the inner radius is affected at full strength and anything outside of the inner but inside the outer is affected with linear falloff (starting from the edge of the inner radius).

Check out UnrealEd for a working example to see it in action. It really works nicely.


ashmantle(Posted 2004) [#19]
Yeah thats what I meant about pinch/bulb ^^


dangerdave(Posted 2004) [#20]
Will the program write some basic Blitz3D code
that will load the mesh, textures
so we'll have the proper blending, scaling,
and other properties set?
----------------------
I did not see the Invert Y option there. Thanks for pointing it out.
=======================
I noticed that I could create a new light map and give it a name but it wouldn't save anything to it.
Because it's a demo, maybe the option to start a new lightmap should be disabled?

----------------
Will there be an option to set the scale/density of the terrain?
I don't see an option.


Thanks,
Dave


Skitchy(Posted 2004) [#21]
Hopefully the entire thing will be exported as one .b3d model. All required parameters will be set for you internally. I'm this <-> close to having the exporter do this, but worst case scenario you'll have 2 LoadMesh() commands instead of 1. :)

@Epic - Yes, I think we're using similar methods, but probably not identical ;)

Would a config file be ok for key-defining purposes? I could do it all in the GUI, but I don't want to clutter up the interface - I've tried to keep it really clean.

@Ash - How about a 'Hide Lightmap' tickbox?

For better control I'm thinking :
LMB=Raise/Paint (depending on mode)
RMB=Lower
MMB / CTRL = MouseLook
MouseWheel = Change Brush Size

What say y'all?


Dreamora(Posted 2004) [#22]
you just load the mesh and it's done i think :)


Skitchy(Posted 2004) [#23]
Oh, and bear in mind more feature requests = later release date ;)
But ATM I'm looking at about a week.


Binary_Moon(Posted 2004) [#24]
I've just started an editor that works like this one as well. Was considering releasing it as a stand alone app but think I will keep it as a game specific one now that this is being made :)


Dreamora(Posted 2004) [#25]
Really cool one

I started writing something similar myself ( just to train and test different terrain stuff I am learning at the moment ) but in this case I don't need to write an editor and just let my code stay as it is :)


Jager(Posted 2004) [#26]
Looking good skitchy but needs some more work and polishing.

* Needs a level option to flatten areas or whole map.
* file selection box doesn't read all files especially it you go back and forth between directories.
* moving the sun doesn't seem to work, not sure if that's a demo problem only?
* use arrow keys rather than letter keys.


Skitchy(Posted 2004) [#27]
The file requester is from Xlnt2 - Yappy if you're here could you take a look?

Flatten is coming...

You're probably not using the sun control correctly. Here's how altitude/azimuth works :
http://astrosun2.astro.cornell.edu/academics/courses//astro201/alt_az.htm
Those controls move the sun *marker* (big yellow sphere).

The lightmap doesn't update in realtime (I'm good, but not *that* good :) , you have to select Functions->Calculate Lightmap to update it. Does that help?


Jager(Posted 2004) [#28]
With terrains, whats the benefits / disadvantages with using a height map compared to a mesh terrain?


Filax(Posted 2004) [#29]
ALE + Terraed = good stuff ! for creating map !

Very good job !


Dreamora(Posted 2004) [#30]
Jager: the blitz3d terrain is extremely fast compared to a terrain mesh and it has bad looking "pop ins" when it changes from the lowest detail degree one up ...

to make a mesh terrain as slow as the terrain sys you can have more than 128k poly on the mesh terrain ...


ashmantle(Posted 2004) [#31]
Dreamora: I think you just contradicted yourself? *confused*

How many polys does the mesh comprise of when using so many different textures?


Skitchy(Posted 2004) [#32]
I know it can seem confusing, but imagine you want to have a 'road' on your terrain. Or snow on the tops of mountains, grass at the base, rock in-between, dirt in the dry river beds, cobbled streets in the village etc. Then imagine using vertex coloring to make patches of 'dead' grass, or 'mossy' rocks, or 'dirty' cobbles.

Up 'till now, there wasn't a tool for Blitz that could do this.

Basically :
ALE terrain=faster, lightmapped, 6 discreet textures with vertex alpha blending and coloring + realtime WYSIWYG terraforming & painting.

;)


semar(Posted 2004) [#33]
[Feature Request]
Skitchy,
would be nice also to have the ability of placing placeholders for objects that would be later managed by the application.

Example.

Imagine you would like to put a house on a hill; so you have to search in your map the right coordinates, and then put the object there.

If you can just put a box on the hill from within your editor, and save it in an external file with its properties - as Droplet does - then would be very handy in my opinion.

By the way, great application, I'm deeply impressed !

Sergio.


Skitchy(Posted 2004) [#34]
@Semar - yes, that's a definite possibility :)
I've got several things planned, but obviously I'm going to have to see how much people like ALE before I go adding lots of stuff to it (I made that mistake with LightBulb).


semar(Posted 2004) [#35]
Well, if this helps, count me in !

:)

Sergio.


Dreamora(Posted 2004) [#36]
If the editor is affordable for me as little student them I'm in for sure :)

Request:

possibility of tile texturing for things like roads and the same that should not blend surounding tiles.

other brushsizes than 1x1 - 3x3 ... like 2x2


semar(Posted 2004) [#37]
Some feature request and info:

1) calculating lightmap is very slow, and actually ends with a memory violation error

2) optimizing the map for a preview, requires also lots of time

3) a minimalistic help file, which describes how a terrain is created by your application, would be nice. Also, how the textures are applied and modified, if you can explain this would also be nice

4) instead of clicking on two buttons to have hills or crates, which requires the mouse to be then repositioned, would be better a key toggle - for example left shift key, if you press once you have hills, press it again and you have crates, and so on. You can give also a visual status of this by enlighting the relevant led, label or whatever.

5) All the keys should be redefinable, and the association between key and function, should be saved in a plain text config file

6) F1 to toggle help

7) Window mode

8) Option to abort long calculations

9) ESC should also be used to quit a submenu, and if it is pressed from the main, then should quit the entire application - if you get my drift. Perhaps you can't know the active menu window, but you can know the order in which the windows are opened, and close the latest at each ESC pressure, and so on.. Example:
the user opens the Sun Position menu
then the user opens the Options menu
esc is pressed: the Options menu should disappear
esc is pressed: the Sun Position menu should disappear
esc is pressed: the Application quits.
Eventually, you can add a Shift+ESC which will quit the application at any time.

10) At the moment is not possible to create a map from scratch - am I missing something from the menu ?

11) The red frame which surrounds the buttons for hills and crates, overlaps the drop down file menu, same for the next menu.

12) The arrow buttons located in the scrollbar under each texture bitmap, do not increase/decrease any value - the texture scaling can be changed only by dragging the cursor with the mouse.

13) UNDO - Please !

14) Different pre-set views of the entire map would be nice, it should be callable by 4 function keys. Alternatively, you can give the ability to set some '3D bookmark' where to put the camera once the related key is pressed, as well as a 'reset camera' key.

:)

Sergio.


Skitchy(Posted 2004) [#38]
4, 11 & 12 are fixed :)
5 is coming soon.

An abort option for lengthy calculations would make them even more lengthy as I'd have to keep testing for clicks/keys. I'll consider it, but bear that in mind.

I'll probably add a 'quit' option to the menu (ESC is just standard practice with Blitz demos).

I'll include a 'blank' map for you in the finished version. I had the default one look that good just to show the program off a bit :)



You can 'quit' a submenu by clicking X in the normal way. They're floating 'tool' menus though, so you can keep them active and still use the main program.

Optimizing is a lenghthy, process-intentive operation, but you should only need to use it when your map is completed.

Did you select a filename for the lightmap? Is C: your root drive? Can you reproduce the error and tell me the steps you took please?

Preset views are a good idea (topdown ortho?)

As for UNDO - its a nightmare. The program would basically have to save every time you click anything. How about an autosave system that works on 30sec intervals - would be almost as good right?

Thanks again for all the good feedback + bug reports :)


Jager(Posted 2004) [#39]
Undo is essential in graphics packages where people will make a change, see what it looks like then go back and try something else.

It shouldn't be too difficult to implement, just save current details in memory before a change is made.

Also, get rid of those dark shadows. I loaded in a BMP height map file and those shadows were still there .. and I couldn't get rid of them.

Another fix, when I clicked the sliders on any texture shown, the map would change but not the shown texture? How does this work?


SabataRH(Posted 2004) [#40]
Well well had a play with this tonight.... Must say well-done Skitchy!

Only problem Im having is this thing isnt released yet! :(
I'm in dire need of a terrain solution ATM and haven't time to code out a builder such as this.. There's one other tool I have my eye on and coming close to buying but I really prefer this one... Any ETA on release? Maybe allow us to buy a copy as-is and update later? hehe (worth a try i guess)

Nice work Skitchy.


Skitchy(Posted 2004) [#41]
The sliders under the texture thumbnails are the texture scale across the mesh (so some can be 'detail' textures and others more sprawling.

Umm... to get rid of the shadows from the previous level just recalculate the lightmap. If you don't want shadows at all, set the sun to maximum altitude (ie. 12pm 'high-noon). I set it low in the sky because I think its more dramatic, that's all. I am putting in a 'hide lightmap' feature though :)

The exporter is now finished. The entire landscape can be exported to a single .b3d file with all settings intact!!! It wasn't easy but I got there after mucho tweaking.

just save current details in memory before a change is made
Unfortunately, as simple as it sounds, there is a hell-of-a-lot of data that needs saving. Its do-able, but without multi-threading it would cause a distinct pause every time you do something. I'll look into it some more though...


Skitchy(Posted 2004) [#42]
@Alienhead - thanks a lot for your support :)

It'll be out in less than a week - provided BMT Micro don't take too long setting up the 'new product' for me ;) I sell other stuff through them though so it shouldn't be a problem.

Oh, and I was meaning to ask everybody (and note the careful phrasing of this next section) :

How much do you think I should charge? What would you charge (and be honest) if *you'd* written it and wanted to sell it?

Note I did not say : how much do you WANT me to charge - I know the answer to that :)


SabataRH(Posted 2004) [#43]
Nice, i use BMicro as well, usually takes that guy about 4-8 hours to set something up.. hes quite fast.

To answer your question.... i'll pay $50 for it tonight... and $29.00 anytime after.. :)>>


Barnabius(Posted 2004) [#44]
$50 if I can get the source so that I can include limited (specialized) terrain creation into my application.

$30 for non-source version

Barney


Dreamora(Posted 2004) [#45]
At the moment I would not really pay much ( <=20$ in best case) as there is no possibility for a layer that is not blended, for stuff like ways etc


SabataRH(Posted 2004) [#46]
Any new 'news' Skitchy ?


Skitchy(Posted 2004) [#47]
Well, I've got a fully working version sitting here in front of me. I want to put in .dbo format export, but I'll release the Blitz version first 'cos that might take a while (and it might be impossible...depends if dbo supports vertex alpha). Rob sent me the specs - thanks hugely for that - but I'll give a *FREE* copy of ALE to the first person who sends me a working dbo export function written in Blitz :)

'Flatten land tool' is in, and it works beautifully. As with the other tools is works with the 'sprayrate' slider so that you can gradually flatten an area as much as you want.
I've optimized the optimizer (!) so it runs a bit faster.

I've been tinkering with .x export as well, but I can't seem to get vertex alpha to show up. Does Blitz actually recognise vertex alpha in .x files? I *really* don't like writing exporters :/ When something doesn't work there always seems to be about 10,000,000 different things that could be wrong, like a misplaced ; or a tab that should be a space, or an int that should be a float etc...

Added a 'New' option to the file menu that lets you start with a blank map. Also a 'quit' option.

Re-wrote some internal stuff for extra speed (the bit that decides what verts you're working with).

Added a 'Hide Lightmap' function to the menu so that you can see what you're painting in darker areas.

Fixed a couple of minor XLNT bugs for the GUI.

Changed the mouse control scheme to something more intuitive. LMB raises land, RMB lowers it, MMB activates mouselook, scroll-wheel alters brushsize - so you don't have to go back to the toolbox at all now!

Are you sure appears before 'quit' and 'new'.

Oh, and I've written a launcher that allows you to set GFX modes and settings, and also redefine keys (that seemed to be a popular request).

Sound good? ;)


SabataRH(Posted 2004) [#48]
These additions sound great, I can hardly contain myself as today I must start some map code and need a terrain... I can wait no longer! hehe

Got an email addy? I got Treemagik pro to export dbo by means of a simple conversion method.. I don't need a free copy of ALE, i just need a copy period..

But if you are interested in my dbo approach then let me know.. My email is in the info link.


Skitchy(Posted 2004) [#49]
I've just posted an optimized .b3d mesh exported from ALE and a small viewer app :-
http://www.blitzbasic.com/Community/posts.php?topic=34173

This is to demonstrate what actually comes out of the program to put in your game ;)