Outerra forum

Outerra Engine => Development screen shots and videos => Topic started by: cameni on January 24, 2013, 02:48:33 pm

Title: Normal mapping on terrain textures
Post by: cameni on January 24, 2013, 02:48:33 pm
Experiment with normal mapping applied to terrain textures. The source terrain textures (diffuse, 512x512) are actually unchanged, there's no higher detail in colors, but there are additional 2048x2048 normal maps applied atop of it for a higher lighting detail. It dynamically changes with sun position, and will allow also other effects applied later - specular highlights etc.

Note these normal maps are first versions and will require more tuning.

On the left - normal mapping, on the right - existing mode without terrain normal maps.

(http://i.minus.com/jw9YEi01ELhba.jpg) (http://minus.com/lw9YEi01ELhba)(http://i.minus.com/jyzO45tnO8iQZ.jpg) (http://minus.com/lyzO45tnO8iQZ)
(http://i.minus.com/jbaXEQ9OholM8r.jpg) (http://minus.com/lbaXEQ9OholM8r)(http://i.minus.com/jbj3QOk33wNAtn.jpg) (http://minus.com/lbj3QOk33wNAtn)
(http://i.minus.com/jb1Smxs4b9mF1W.jpg) (http://minus.com/lb1Smxs4b9mF1W)(http://i.minus.com/jxCKp27DsV1oc.jpg) (http://minus.com/lxCKp27DsV1oc)
Title: Re: Normal mapping on terrain textures
Post by: Abc94 on January 24, 2013, 02:59:23 pm
Wow that's quite a difference!  Looks way better.
Title: Re: Normal mapping on terrain textures
Post by: ZeosPantera on January 24, 2013, 04:01:13 pm
Couldn't let Kelvin get the spotlight even for a second could you.. Raining on his parade...

Freakin' Amazing comes to mind.
Title: Re: Normal mapping on terrain textures
Post by: KelvinNZ on January 24, 2013, 05:21:43 pm
Hope I haven't started anything here :)

My reworked textures purely shows the technology behind the textures that I put up. Nice work Cameni and Angrypig. It's been a while since we have seen some "under the hood" work like this.

Looking forward to this effect being applied.
Title: Re: Normal mapping on terrain textures
Post by: cameni on January 26, 2013, 08:28:45 am
Some more screens from the ongoing change in terrain rendering.

Runway surface with a part of white marker. Notice that the markers now actually have thickness and use material with a different pattern than the asphalt.
(http://i.minus.com/jvMZCSUvSfmIL.jpg) (http://minus.com/lvMZCSUvSfmIL)

Runway surface with gravel border. That gravel type is probably more suitable for a riverbed :)
White marker thickness is also visible here.
(http://i.minus.com/jCLMe2VmC6SUa.jpg) (http://minus.com/lCLMe2VmC6SUa)
Title: Re: Normal mapping on terrain textures
Post by: Jagerbomber on January 26, 2013, 10:28:07 am
The road itself could probably use those cracks seen in the paint too.
Title: Re: Normal mapping on terrain textures
Post by: ZeosPantera on January 26, 2013, 01:11:13 pm
You go girlfriend.
Title: Re: Normal mapping on terrain textures
Post by: KelvinNZ on January 26, 2013, 03:48:32 pm
This looks very pleasing to the eye, nice job! One more step forward.
Title: Re: Normal mapping on terrain textures
Post by: pico on January 26, 2013, 05:21:19 pm
I love it.  :)
Title: Re: Normal mapping on terrain textures
Post by: Bartolomeus on January 27, 2013, 11:50:58 am
That looks really awesome!

Marko
Title: Re: Normal mapping on terrain textures
Post by: Steve.Wilson on January 27, 2013, 01:20:12 pm
Agreed, lovely.

Query:  Will there be a myriad of roads, some in good condition, some not, and the same for runways?  Seems like there needs to be a fractal variance there too.  Take for example the comment on cracks in the asphalt just like the cracks in the paint.  Welll.. some newer runways might not have that.  Conversely, older runways might have fresh, uncracked paint!  Also, road and runway widths are not necessarily uniform. 

Nuances underscore the belief that one is in a living world.  We're getting lots of 'em. 

And just think: No mosquitoes or flies!!  :D
Title: Re: Normal mapping on terrain textures
Post by: cameni on January 27, 2013, 01:48:25 pm
The deterioration is supposed to be parametrizable, from a completely new construction to a barely recognizable shape, overtaken by the nature. The parameter is going to drive the generator that probabilistically determines what type of material to place when making roads (or other civilization artifacts). There will have to be some auxiliary maps that control how the structure decays, cracks and patches appearing, initially with the border material (gravel), then vegetation etc.

Obviously the parameter could be also driven dynamically, for some games where the wear time would be accelerated for it to be visible, but in other cases it would be just used at design mode to specify the age of the road.
Title: Re: Normal mapping on terrain textures
Post by: Steve.Wilson on January 27, 2013, 03:37:34 pm
Nice.  I should stop suggesting things you've already got planned!!  ;)
Title: Re: Normal mapping on terrain textures
Post by: cameni on January 28, 2013, 12:06:06 pm
Accidentally got it simulated, in part :)

(http://i.minus.com/jtAsLHrB4K5Qm.jpg) (http://minus.com/ltAsLHrB4K5Qm)
Title: Re: Normal mapping on terrain textures
Post by: Steve.Wilson on January 28, 2013, 12:11:37 pm
SUPER!  Time to bring out the simulated repavers and preserve that runway!  :D
Title: Re: Normal mapping on terrain textures
Post by: ZeosPantera on January 28, 2013, 03:02:00 pm
Too thick to be that broken. It would need to fade down a bit.

I would fire that worker.
Title: Re: Normal mapping on terrain textures
Post by: Bartolomeus on January 28, 2013, 03:17:32 pm
That's nice! ;)

Marko
Title: Re: Normal mapping on terrain textures
Post by: Midviki on January 29, 2013, 03:05:00 am
Query:  Will there be a myriad of roads, some in good condition, some not, and the same for runways?

Cameni about what Steve Wilson said... I was thinking of a suggestion.Of course in my opinion.

I remember you saying something about... vehicles leaving tire tracks on the snow, dirt, tire break marks... etc, you know stuff like that.And of course this can be implemented on every object that has a weight.

And about what Steve Wilson said.Runways, roads and stuff like this will not end there.There will be other complex things on other surfaces.

Have you thought about the method used for leaving marks on the ground for "snow, dirt, tire break marks...etc" to give the possibility of the user to make his own asphalt in a more entertaining way?For example using the same method of leaving marks the user can use an asphalt compactor ( throwing asphalt with a shovel by a few AI's (AI's programmed by developers of course) and the asphalt made by particles or something will be crushed on your way with the asphalt compactor ) or any other vehicle of that kind like a bulldozer.And even the painting of the roads should be made manually by the user.

I'm saying, taking the problem of details to its core.Cause there will be a lot of materials that you will work on, textures and stuff, wouldn't that be easier to be solved by the help of others, not needing the developer to work his a** off till the end of times on improving things all the time?So... what do you think about it?..Any thoughts?

And btw... great job on the updates!It looks very pretty, and more realistic.  ;D
Title: Re: Normal mapping on terrain textures
Post by: cameni on January 29, 2013, 04:26:10 am
You know, technically everything is a hack in game engines, and likening it to real life can only go so far. Roads aren't assembled from bits of asphalt and gravel, but they are created by the road geometry generator that takes spline data points and modifies terrain heights and materials to create the road.

The road generator can do a plenty of other things - just painting new materials, or just modifying the heights, removing grass & trees, or putting them in, removing snow and so on. It's the same road generator that will be used to leave tracks on the snow and dirt. As vehicles drive around, splines for tracks will be created dynamically under their wheels and terrain regenerated to show the changes.

Obviously this can lead to a lot of regenerating so it needs a better hardware otherwise there will be a lag (static rendering performance won't be affected though).

This generator can be also used when you want to take a shovel and build your stuff bit by bit, creating lots of tiny patches. It would not be very effective for the generation of terrain and structures. But regardless of the performance, I can't quite imagine how you'd use it to create large structures ...
Title: Re: Normal mapping on terrain textures
Post by: Midviki on January 29, 2013, 05:45:22 am
I can't quite imagine how you'd use it to create large structures ...

Well sand+cement+water in the brick factory = bricks ... the bricks come in packs to the workers ( aka the AI ) and you basically build after some predefined schematics made by the devs for that game.But this is like a very minecrafty tycoon game.

If you have a game where you don't need so much content to satisfy the population.You have some towns in some parts of the planet... and the rest basically you play it on the physics of the vehicles.

I don't really care about the hack's that are played on the naked eye.As long as they are very convincing.I'm just making a point that can advantage you or others, about the commercial like of the user.But its just an opinion and a free idea coming from my side.Here we like to think that we just talk anyway.  :P
Title: Re: Normal mapping on terrain textures
Post by: cameni on January 29, 2013, 10:38:46 am
No problem discussing ideas ;)

We've been pondering about a system for OT where you could actually craft stuff from some basic blocks, such a game/system would be pretty cool if it could be combined with the rest of OT. But thus far I don't see it elegantly fitting with the engine. Maybe a voxel geometry generator block working within the engine would be a way to go, plugged in via something that mods the existing procedural geometry in a way that allows for parts of the world to be voxelized.
Title: Re: Normal mapping on terrain textures
Post by: Abc94 on January 29, 2013, 02:13:20 pm
OuterraCraft?    8)

Instead of using blocks, maybe make everything volumertic?
Title: Re: Normal mapping on terrain textures
Post by: ZeosPantera on January 29, 2013, 02:51:17 pm
All building materials are just shapes. If you could manufacture shapes with their appropriate weight, strength, texture you would just pile them up to build like real life.
Title: Re: Normal mapping on terrain textures
Post by: colinhect on January 29, 2013, 03:49:40 pm
I've read pretty much all of your blog posts but I don't remember ever seeing in detail how the texturing works in its current state.  Have you posted detailed information on this?  I've always assumed that you generate something like a splat map per-patch which selects which textures to use.  But I can never find any noticeable tiling.
Title: Re: Normal mapping on terrain textures
Post by: cameni on January 30, 2013, 01:39:47 am
I'm generating a map of textures to use, and that map is created from the available terrain info (primarily the local and global slope, curvature, elevation and latitude), plus auxiliary parallel fractal data that select the sub-type, generating the dirt patches, the variance in the grass colors etc. You don't see a tiling because those fractal data are unique.