Not logged inOpenClonk Forum
Up Topic Development / Art Workshop / [Material] Overhauled material textures (experimental)
- - By Saiodin [de] Date 2012-08-20 16:33
Hey everybody.

Since it's probably a big change for the engine to make the landscape more 3D-like I tried to make some of the existent textures more sculptural. They feel very plain right now and I think it doesn't fit anymore into the game like that.
The pictures that you see are experimental. On the left side is the current ingame texture with no changes, on the right side my edit.

The new texture is a cube in Cinema4D, rendered from the side with following options (I know they don't work like that for tiles, experimental - again):
- One light source with soft shadows from above
- Soft Relief for little hard shadows (looks more cartoon-like)
- Displacement map for bigger, but soft shadows and rough 3D look (+ Ambient Occlusion)
- Little specularity in material color (not in every rendering correct, you see that in tunnel.jpg, Im lazy :c )

Like I said not usable for Tiles yet. Changes for that aren't too big though:
- Light source in front of the object for consistent illumination
- Shadow source in front above the object to keep the 3D look of relief and displacement map
- edit the edges

You see in the pictures that not everything looks fitting. That's because the contrast of the textures are sometimes different and I used the same setup for every texture. That's something I can adjust seperately for every texture until it looks good.
Example:
- The snow looks much too dark,
- gold could be brighter (give that one a slight bloom effect ingame I would suggest. Would be worth a look. I saw the bloom effect in the lava thread. Is that something we can try out in the materials data?),
- sulphur too messy

In general shadows are too hard or too dark. I will adjust that. But first I want to know if there is an interest in such an overhaul of the textures. Good about this is that it works with every texture - and probably all the upcoming ones. I'm not sure what to do with water though
to make it a little bit better. I think that would need an ingame shader.

Q: Is 512*512 the biggest size the textures have? In the texture thread and in the OC ressources I couldn't find something bigger. Would be better to work with, but I guess it won't be a problem with 512*512. Maybe there's a quality loss of some percent. Not sure if that's actually noticeable though, because the texture gets more sculptural anyways.

--- EXPERIMENTAL / read above ---

brickback.jpg

earth.jpg

gold.jpg

rock.jpg

rock_cracked.jpg

sand_rough.jpg

snow1.jpg

sulphur.jpg

tunnel.jpg
Reply
Parent - - By Zapper [de] Date 2012-08-20 17:08
I am interested in whether you actually can make one of those tilable :)
One of the reasons for lower contrast in material textures was always that you can see a hole - even if it is a very small one - if that hole repeats twenty times on your screen (example here: http://wiki.openclonk.org/w/Tutorial:_Creating_Seamless_Textures )
Also note that you made all the textures darker - that will probably affect the mood too, but since I am not sure into which direction, I can't say whether that's good or not :)

>Is 512*512 the biggest size the textures have?


I think so
Parent - - By Saiodin [de] Date 2012-08-20 17:38
Need to go with the dog, answering properly later. But I wanted to post my first result here:

It's tileable, I thought there would be a little gap at the edge, but I can't see it. If anyone notices something: I tested a tiling technique and cut one pixel, but I can easily add that pixel again.
Reply
Parent - By Zapper [de] Date 2012-08-20 22:06
Looks nice - but it looks a lot like that you would get the ~same result if you just increased contrast and saturation in a image editing program :)
Parent - By AlteredARMOR [ua] Date 2012-08-21 06:27
Rock texture (though photo-realistic) looks realy weird.
(Maybe in contrast with stone background)

Finding nice (good-looking, tilable etc.) material texture is only half of the job. The real art comes when different textures place together (on the same screen) should look good as well.
Unfortunately, we still miss such an effect...

P.S. Eventually its much harder to make good-looking terrains with photo-realistic textures.
Reply
Parent - By Saiodin [de] Date 2012-08-20 19:00 Edited 2012-08-20 19:02
So. What do you mean by "hole"?



I mean - you can see that it's the same texture, just tiled. And if it's too bad for the eye because there is a detail that is "falling out of the picture" then this is a problem of the texture.
Regarding the mood I think it's not bad to have more contrast for OC. Like I already said I think it looks too flat. The objects should also have more colors and more saturation. But thats just my taste.

[edit]
@hole: Ah, I overread that part in the linked thread. I see what you mean, but yeah, that's what I was talking about.
Reply
Parent - - By Dragonclonk [de] Date 2012-08-20 17:09
Looks great. The current textures are really muddy when zoomed in ingame. But it seemes I remember some of this rough textures from cgtextures (right)? When they are, we can not use them because of the terms of use.
Reply
Parent - By Saiodin [de] Date 2012-08-20 18:33
This are the textures that are already in the game.
Reply
Parent - - By Newton [de] Date 2012-08-20 19:23
Perhaps you need to activate the "high resolution" option in your graphics settings?
Parent - By Dragonclonk [de] Date 2012-08-20 19:34
I have.
Reply
Parent - - By PeterW [gb] Date 2012-08-20 17:14 Edited 2012-08-20 17:33
Note that sooner or later we might be interested in doing shading in the GPU. For that, it would actually be great if the shading was not baked into the textures already, and we'd have normal maps instead. If you had such a set, I'd be interested in trying to integrate them.

Edit: See my prototypic tests.

> Q: Is 512*512 the biggest size the textures have? In the texture thread and in the OC ressources I couldn't find something bigger. Would be better to work with, but I guess it won't be a problem with 512*512. Maybe there's a quality loss of some percent. Not sure if that's actually noticeable though, because the texture gets more sculptural anyways.


Edit 2: Well, right now yes. There's no real reason for that though, technically speaking, as the engine accepts any potency of 2. Note though that just adding bigger textures will most likely cause all textures to get zoomed out, because they all need to be brought to the same size at some point. And it's hardcoded into the shader that the texture size is 128 landscape pixels (= 4x4 pixels per landscape pixel right now).
Parent - - By Saiodin [de] Date 2012-08-20 19:34
Alright, I see. I wasn't sure about that and ofc it's the better solution. I like the earth example. But I think it's still not popping out enough. The video that zorry posted shows how it could look pretty epic. I don't know if you can use that though, here is the link to the blog entry:
1. http://www.soolstyle.com/2010/02/15/2d-deferred-lightning/
2. http://www.soolstyle.com/2010/06/29/2d-lightning-continued/

I searched for a game with a style that could describe what I mean with "popping out", but I can't find anything. I'm sure I saw something like that already though :I

@texture size:
Actually I just wanted to know that to get a better quality. I would have resized it to 512*512. My bad :P
Reply
Parent - - By PeterW [gb] Date 2012-08-20 21:06 Edited 2012-08-20 21:20
Well, he's using specular lightning, which makes the texture "glossy". I'm not convinced we want that (but it wouldn't be hard - that's just shader code). Also my examples are for unidirectional lights, whereas he's using positional lights - that's something that the lights system can provide at some point down the line. Also his textures are obviously actually optimized for this kind of usage, whereas I just hacked something together.

Technically speaking, this is a relatively easy thing to do, though. The hardest part is probably to figure out a naming scheme for how to have them in Graphics.ocg side-by-side. Ugh.

> @ texture size


Not sure whether you understood me correctly. Having higher-resolution textures would actually do exactly that - improve the resolution of the textures shown. So upgrading to, say, 1024x1024 textures would be completely feasible. The only question here is at what point we're going to run into hardware or file size constraints.
Parent - By Saiodin [de] Date 2012-08-23 13:31
@ texture size:
You still got me wrong. I dont care about 1024*1042 resolution textures in the game. I just wanted them to work with. Outside of the game. nvm
Reply
Parent - By Clonkonaut [ie] Date 2012-08-20 19:44
Since the old textures aren't lost, we could replace them until 'when it's done' ;)
Reply
Parent - - By Pyrit Date 2012-08-20 17:23 Edited 2012-08-20 17:25
I think I'll throw in my textures here...

On another note, are there thoughts about ingame bump mapping?

I hereby license the files under the CC-BY license
Parent - By Saiodin [de] Date 2012-08-20 18:52
I like the sand texture, it's really soft - like a sand dune.
Reply
Parent - By Newton [de] Date 2012-08-20 18:56
I like the sand texture. So far we only have this rough looking texture, not too fitting for a real "sandy" desert.
Parent - By Newton [de] Date 2012-08-20 19:21
I made some minor changes to the texture and committed it in the repository under your name

http://hg.openclonk.org/openclonk/rev/fe8b16e750c5
Parent - - By zorry [de] Date 2012-08-20 18:19
how about normal maps to make the textures look 3d?

something like this:


(could be great to merge with the new light system)
Parent - By Pyrit Date 2012-08-20 18:23
I was thinking about exactly the same thing with the bump mapping!^^ Could look really cool on tunnel background.
Parent - By Saiodin [de] Date 2012-08-20 19:36 Edited 2012-08-20 20:56
This looks great if it can be implemented like that.
Reply
Parent - - By Newton [de] Date 2012-08-20 19:52 Edited 2012-08-20 19:54
I don't find them too fitting actually. The baked "height" doesn't look too much like it has anything to do with the actual texture (see f.e. rock texture). Generally, I agree with PeterW that we shouldn't try to bake (even more) 3d-ness into the textures but long-term rather go with normal maps instead.

PeterW is already creating the prerequisites for enabling such a lightning, not saying that he will ever find the time to do it, but as a prospect we can already research in the direction on how to create good normal maps and give him something to experiment with. In the past we (or at least I) tried various "normal map" plugins for GIMP etc. but the result often turned out somewhat awkward. The proper way to create normal maps is not to create it from the color map, but model it.

So this is where your C4D skills could come in. With some diligence, you could try to model all the rocks and cracks, crooked pieces, holes and raisings of a few textures and as a result bake a normal map out of it. Of course, the mesh would be put into our resources-repository then so that it can be refined or changed later. The normal map is just the outcome which will be committed in the standard repository.

But beware, this is a work that needs to be done very meticulously as it is really all about quality with normal maps, normal maps tend to look pretty shitty when not done perfectly. I see here that you already tried to model the heights according to the texture. However, this is really far too rough and blurred to look convincing.
So as I said, I think it would be quite a challenge to model such a map. But if you are ready to take it, I would be very glad. :-)
Parent - - By Saiodin [de] Date 2012-08-20 21:26

>The baked "height" doesn't look too much like it has anything to do with the actual texture


Well, it actually shouldn't. But I agree with you two about the normal maps.

Yes. Normally it is like modelling low poly for the mesh and high poly for the normal map. But there is no low poly and remodelling a texture with a resolution of 512*512, trying to recreate the height of such a landscape sounds insane to me. I don't think that it's possible to get a good result like that. It sounds more realistic for me to create a completely new model then.

This is the displacement map (left side; low res top, a bit high res bottom. right side the same texture on the object) that can be created with a texture in C4D. I used that for all textures above to get the details "popping out", depending on their brightness.



I unfortunately have to say that I'm not ready to take such a challenge ^^ It's not possible (at least for me) model a normal map exactly like the height of the texture. With the bricks is less a problem, but look at the rock texture, earth or sulphur. I think that's a waste of dozens of hours. And I'm sure in the end it looks not a lot better, if even as good as automatically created... hm... really remodelling? Maybe I try it. But actually I have not a lot experience with texturing.

> but the result often turned out somewhat awkward


Btw I like the earth in that example.

I really don't know now. Everything feels pretty random.
Reply
Parent - By Newton [de] Date 2012-08-20 21:49
Perhaps I exaggerated a bit about the automatic creation of normal maps. My experience is just that the real problem with this automatic generation of those maps is that at the end, the original texture would need to be altered to to really only act as a color-map after the "bumps" have been extracted. Otherwise the linked "awkward" effect occurs.
Parent - - By Saiodin [de] Date 2012-08-20 21:30
Uhm. When we're already on it. It's not possible to make it actually a 3d model that gets influenced by light and stuff. And digging or just covers that model? ... Or something like that. Like the landscape is 2D, but the materials are covered by a 3d model that ... like I said gets covered. Since I think removing/remodelling the actual model would be too intensive... or voxel... or w/e...

God. What the ... :/
Reply
Parent - - By PeterW [gb] Date 2012-08-20 21:50
Uhm, why are you asking? As you said, I'd bet it would make your job harder, too. Once you have models, any decent 3D program should be able to make normal maps out of that.

On the engine side - well, technically possible. Realistically, you'd have to find somebody that's confident in getting it to work. Don't look at me, sorry :)
Parent - By Saiodin [de] Date 2012-08-23 13:31
It was just a thought.
Reply
Parent - - By Günther [de] Date 2012-08-21 01:05
For gameplay reasons, textures have to be recognizable in incredible small chunks, ideally in 1x1 landscape pixel size (which as mentioned above translates to 4x4 texture pixels at the moment). Otherwise you can't always tell whether some pixels blocking your path can be dug out or have to be blasted, which results in frustration. This really limits our options and basically requires low contrast textures with a distinctive color, and shadows based on the shape of the landscape in the game.
Reply
Parent - By Saiodin [de] Date 2012-08-23 13:32
That sounds pretty legit.
Reply
Parent - - By Pyrit Date 2012-08-24 22:49 Edited 2012-08-24 22:52
I'm in complete agreement there. Textures should be more saturated and shouldn't have such a high contrast like the sulphur texture. Also in some cases I would recommend to reduce the texture to one color only. (e.g. to make rock only grey, instead of grey with some other colors here and there.) And they should be in png or jpeg with a relatively low compression, so that you can't see the artefacts when you zoom in.
Sulphur replaced with http://www.texturemate.com/content/free-texture-granite-2010091201
Parent - By Ringwaul [ca] Date 2012-08-25 00:03
This is a fairly good point, and I think I prefer these ones to the current textures. The only one that doesn't look so good is the water texture. I feel as though it should just be a single, solid colour. Without noise.

Can you upload the modified textures into a diff for someone to upload to the repos? :) Or just the textures in a zip. Whatever is easiest for you.
Reply
Parent - - By Newton [de] Date 2012-08-25 11:58
As the one who created most of the textures we have for materials and put a considerable amount of work in it, my first reaction to your proposal to rob all the textures of their contrast and colors is rejection. And after thinking about it actually, I still veto against this. Here is why:

I understand Günther's argument that materials should be recognizable even in small chunks.
Though firstly, there is not really a requirement to know exactly which material there is for very small chunks like 1-4 pixels (=3-12 pixels of the texture) since such small chunks will most likely not produce any resources anyway. Also we agreed on that the times of "mine every pixel of material X" goals should be over in OC, so being able to spot every single material pixel of a given material is not necessary.
Second, chunks of that size do normally not occur naturally as the scenario designer sets the zoom rate to about 5-10 (=15-30 pixels of the texture), so, given that players have a short time memory, it is likely that they already know which material it is that remains at the edge of a large gold vein.

Having that said, I still agree with Günther that materials need to be recognizable from their color. But I don't see a problem with the current textures as this is the case for them - you'll never mistake sulphur for gold or rock for ore. The slight color modifications within the textures (like the left rock) move within a range that is far from looking like another material. This is not coincidence, but I carefully painted them that way to fulfil this condition.

Looking at the textures in the clonk folder, I reckon the problem are not the colors and the variation of colors within one texture but the dark spots within a few textures resulting from too high contrast. This contrast has been used to make the textures look more 3D. Namely the sulphur texture and perhaps also the snow and ashes texture. This problem will be solved when we can use normal maps because the height information will then move into the normal map so that the color map will be free of these high contrasts. I would rather push into the direction of converting the current textures to heightmap-colormap pairs - until then I'd like to refrain from modifying the textures because I want to preserve the height information to be able to create proper normal/height maps out of them.

So as a conclusion, I am also for making the textures more clear in what material they represent, even in small chunks, but I want to have it done properly and this involves extracting all the height information from the textures and crafting a pair of height- and colormap out of them.
Parent - - By Pyrit Date 2012-08-25 17:13
And so everyone's favourite topic surfaces again!^^
I have to say I'm more at the site of the people who like the comic-like look, not the realistic one. I think the realistic textures look a little... weird. I think this is because they don't really fit together. Some look like close-up images (ore) others look more distanced (earth rough).

Does the 'normal maps' thing mean bump mapping depending on the dynamic light system that's worked on right now? Like when the light changes, the shadows on the walls change, too? I have seen that the bump maps are either greyscale or red and blue colored. I suppose the red and blue ones have even more information about depth?

And how much information do we really need? Is it such a no-go to loose, let's say, 20% of depth information in the simple textures ?

Hm, I would say the photorealistic textures + shadow maps are too much. What about making bump maps from the realistic textures and apply them to the simplitized (a little cartoonish, if you like to call it that) material-textures?

A little OT:
I'll add an overlay material to the wishlist. :) Clonks can swim in the water instead in front of it.
Parent - By PeterW [gb] Date 2012-08-25 19:25

> Does the 'normal maps' thing mean bump mapping depending on the dynamic light system that's worked on right now? [...]


Yes, that's the idea. Right now the shadow map only tracks how much hits every point - but I think I can somewhat easily extend that so it tracks where the light is coming from at every point as well.

Quick primer on what normal maps mean: They give the orientation of the surface at that point. So if the red channel is 0, this means "facing left", whereas 255 means "facing right". The blue channel, respectively, means "facing top"/"facing bottom" respectively. That's really useful for lights calculations, as I just have to cross-check that with my "where is the light coming from" information.

Bump maps, on the other hand, give the "height" at that point - that's roughly the same type of information (the normal map is actually just the X and Y partial derivates). Theoretically, you can calculate one from the other. In practice, due to only 255 height values being available, normal maps derived from bump maps contain a lot of artifacts. I tried to do it in the GPU for the landscape, and it's really not pretty. Normal maps are superior for what we're doing, hands down.
Parent - By PeterW [gb] Date 2012-08-25 19:33 Edited 2012-08-25 19:36
Well, let's not begin this discussion on the wrong foot then. Trying to get a "cartoonish" look is something we don't not want, so it's great to see people experiment. But in contrast to the technical argument Günther gave, that's largely a matter of taste. So let's discuss some side-by-side game screenshots, because that's the only way to resolve this. I, for one, am not convinced that just turning some saturation knobs is the magic recipe to get a better look here. But if it's easy and cheap, it doesn't hurt to try.

Speaking of easy knobs: I still feel like everything in OC is way too dark. I had a shader bug for a while where the landscape was essentially double the normal brightness - and I didn't notice it too much, really. I think just brightening everything up 50% could do wonders. Don't forget, most people play in brighter room than we develop in.

Also, my branch will suck a lot of brightness out of the graphics anyway. So if we start low, we might end up in muddy land :)
Parent - By Günther [de] Date 2012-08-25 22:54
Yes, you only really need to be always able to distinguish materials that can be shoveled from those that can't, and not to identify the exact material, but for slightly bigger chunks you do. I think our current textures manage to land on the right side of that line, but they're close. In edge cases maybe too close, but I didn't test that. We definitely shouldn't add more shadows to them.
Reply
Parent - - By Matthias [de] Date 2012-08-25 14:25
Can you upload an ingame comparison?
Reply
Parent - - By Pyrit Date 2012-08-25 19:04
Hm.
Parent - By Caesar [de] Date 2012-08-26 17:59
Upon seeing that: A slight (even slighter than that middle version) reduction of contrast for the sulphur might not hurt. The rest should stay, imho.
Parent - By Pyrit Date 2012-08-27 16:07
Hmm, I dunno. Seeing the big screenshots I thought the bright textures looked bad. But ingame, it looks decent, I think.
Parent - By Nachtfalter [de] Date 2012-08-27 16:40
[x] 1
Reply
Up Topic Development / Art Workshop / [Material] Overhauled material textures (experimental)

Powered by mwForum 2.29.7 © 1999-2015 Markus Wichitill