*** hl2hm *** Terrainbuilder new: GUI


(VandalL) #1

FOR THE FAST AND THE CURIOUS:

goto to http://www.kberg.ch/lkc/hl2hm/index.php4

NEWS:
2003-09-11 0.96 The GUI is ready. The pesky Bug in Imageprocessing dead. Commandline is functional again. Please report Bugs - this should become a faily stable build. Thanks.

2003-09-11 0.96 pre8 Fixed some Bugs. Major work on the new GUI. Time is precious… but the next Version will come :slight_smile:

2003-08-21 0.96 pre1 This is just a Testbuild for the GUI. Imageprocessing may be FLAWED! But to checkout your settings in realtime it might help, bevore you do the final run, with an early version (0.93 or 0.95).

2003-08-14 0.95
No, You missed nothing. 0.94 was just code-cleanup. 0.95 brings you optimised mesh arrangement. And it can drop now -normalmap and -lightmap from Your heighlinemap, too.

2003-08-08 0.93 The Assimilation Code was improved for the last time. Somaller changes in usage .The Tutorial has changed accordingly. This should be the last tesbuild. Stabilized versions should apear next week.

2003-08-06 0.92 better assimilation code. doubled the assimilation power again.

2003-08-05 0.91 I’m back in town… just fixed some bugs and doubled the power of the assimilation Code.
You will find a slightly improved Tutorial, too.

2003-07-26 0.9 and I took some days off.

INFO:

what does hl2hm?
-builds a raw .map from a Heightplanemap
-generates Heightmap-Image from Heightplanemap-Image for use in EASYGEN or TERRAGEN or to create NORMALMAPS.
-generates Normalmap-Image from Heightplanemap-Image for Tenebrae, q3map2 or Doom3
-generates Terrain Lightmap-Image for your ET map.
-> -> -> =>

what options make hl2hm different?
-assimilation (“glues” coplanar or nearly coplanar brushes (You can define the breaking-angle)
-> up to 93.75% lower Polycount - the same detail)
-snap snaps the vertex of the grid to the heightlines of the Heightplanemap.
-> less synthetic looking map with better accuracy to the heightplanemap.

what is the advantage of heightplanemaps?
-easy to generate: just trace the heigtlines of a map and floodfill it. or simply ad planes as You like.

grab it and test it:
http://www.kberg.ch/lkc/hl2hm/index.php4

a little tutorial:
http://www.kberg.ch/lkc/hl2hm/hl2hm_tutorial.php4

Have Fun
V

SCREENSHOT of the Moment:


(Julius) #2

great tool :clap:
Might come in handy if you want to create a realplace ET map


(ydnar) #3

Nice.

You can even use heightmaps generated with your tool as terrain entities with alphamap (indexmap) images and terrain shaders like the ordered-grid terrain more commonly used.

y


(Frankesk) #4

:eek:

nice work!

are you sure that this terrain will work with an alphamap and a metashader? the vertexes don’t lie on a regular matrix! this a limitation but I think that the engine expects to find the vertexes along matrix lines, or it doesn’t know how to assign shaders using the indexed alphamap :frowning:

that is, how can you assign a shader to these vertexes?

keep up good work :clap:


(Lanz) #5

Woa!!

Looks extremely interesting!

Damn shame I don’t have time to try it right away. :slight_smile:


(SCDS_reyalP) #6

It is the compiler which deals with the alphamap, and q3map2 should be able to handle ones like in your screenshot :clap:


(VandalL) #7

Hello, and thanks for the feedback.

Now that im back, i will continue on my project… at least until it fits my needs… :slight_smile:

I will post news on page one of this thread.

For the shaders:

I use tcgen, most of the time, to stretch orthophotos (with different detail) over the whole map (see shader of my tutorial 1.1 ).

V


(VandalL) #8

2003-08-06 0.92

new build with better assimilation code. doubled the assimilation power again (now 87.5%).

Greetz
V


(VandalL) #9

2003-08-08 0.93

now we’re getting closer.
Assimilation theoretically at 93.75%.
See this Mapgrid. :slight_smile:
Belongs to this Map.

enjoy the weekend! (STREETPARADE at Zürich, Switzerland)
V


(Qimen) #10

wow thats look very nice.
Downloading :moo:


(PSIonic) #11

Hey nice work!

It seems to create very detailed low-poly terrains! :clap:

I’m still a bit puzzled about the alphamap question though. Does the terrain generated support alphamaps or not? Would one large texture like you described which covers the whole terrain cause extreme memory usage and possibly have a great impact on performance for large terrains?


(VandalL) #12

Thanks PSIonic,

about alphamap:
Honestly, I did not try it yet. I look into that issue next week, when i have to use it myself to build the final terrain for my next map :).

about one large texture:
I build the terrainshaders like this:
Layer 1: a picture taken from aeroplane (Size 512x512 or 1024x1024, depends on availability and performance) spreading over the whole map.
Layer 2: Detailtexture like rock, sand or grass.

see ydnar’s shaderlab for more info.
seek TCGEN VECTOR in the news.

I would not try to make one huge texure for performace reasons… but with faster rigs we can get a little more curious, about what else we could do…

Greets V


(sock) #13

Your terrain brushwork generator looks very impressive, but the single texture stretched over the complete terrain has limits. Max texture size is 2048x2048 (I think, but its 1024 on older video cards) and when stretched 2 or 3 times can look very blurry up close. Obviously with a detail texture up close the blurry effect can be minimized but ultimately the system is limited by graphic card memory.

Battlefield 1942 used this idea very well with complete maps made from a patchwork of big textures. This did cause alot of low end systems to moan and slow down but it does produce excellent results.

We originally played with this idea but when we applied it to maps the size of mp_fueldump it just looked too bad in quailty. Plus the time to generate a complete terrain texture is alot of hard work. The best comprise we found was to generate a normal terrain mesh and add decal textures (like the road) to key areas to give impressions of detail.

Sock
:moo:

EDIT: But thinking about it, several valleys or small sections of terrain linked together, coated in small buildings, foilage+tree’s would certainly rock. Alot of work, but certainly would look very good and realistic.


(VandalL) #14

@sock:

do you have an idea on how the gameengine handles _indexmap / alphamap internally? If must somehow create an internal shader per face (with the texture-blending etc). The same could be achived externally (resulting in an impressive shaderfile…)

@PSIonic:

I just read trough a lot of stuff about _indexmap/alphamap. The conclusion is: even if it was possible, it would produce unexpectet results. Example: witch shader should be applied, if there where asigned multiple across an assimilated Area?

But I’m working on this…

V


(sock) #15

You really need to speak to ydnar about this. Try posting a thread on the q3map2 forum here or hopefully ydnar will catch this thread and post a reply.

Sock
:moo:


(Frankesk) #16

I see advantages and disadvantages. To be constructive I’ll post them here:

  • advantages:
  • detail
  • optimization of the mesh
  • disadvantages:
  • texture sizes as sock said
  • standard alphamap system will not work, imho.
    At this point I think that another system to assign shaders to vertexes could be implemented, maybe a script file in substitution to a pcx image for these cases, in which for instance every line holds the 2d coords of a vertex (121.45, 465.45) and the name of the shader assingned to it (“textures/bigmap/terrain_2”). Btw, This could be a pain to do by hand. In substitution, using the current alphamap system could be said to assign the same shader to the nearest group of vertexes
  • one pass generation, i.e. if you want to heavily tweak some zones, you must do a complete recalculation/optimization that could lead to changes in brushes where you wouldn’t expect and you must re-adjust buildings over them.

(system) #17

I think this one is really cool for use with Skyportals or smaller Maps so you can comepnsate the “blurry-effect”.

I think it’s definitly a tools to keep. :wink:


(VandalL) #18

@ all: Thank You for Your feedback.

@ Frankesk:

I agree that the shaders I used are only good for “sublayer” of the real texture, for they are not detailed enough.

No it does not.

I’m actually doing some tests in a automatic scripter, whitch does write a shaderfile, using the _indexmap on the generated mesh (using the most used shader on assimilated faces). But it gets really big, because if there are no two brushes alike, there has to be a shader for every brush. I am not yet sure, how the gameengine handels such shaderfiles… :slight_smile:

That is partly correct. You will possibly have alterations in the mesh up to a radius of 4 intersections around the modified point in the heightplanemap, due to other results in assimilation. The rest of the mesh will not alter.

Greets
V


(VandalL) #19

Version 0.95 is up for testing. Tutorial and help page will be updated in the next 12h :). Till then have a look at the batch-file for how-to.

Checkout the -normalmap and -lightmap functions…

cu

V


(system) #20

:bump:

I nearly finished my map and want to add your nice feature in a skyportal for a environment model.

I couldn’t find any orthograpic sources in google? do you have a hint for me?

And is it possible to export direct to an .ase file?