Enhancing graphics

Started by
5 comments, last by marcClintDion 10 years, 10 months ago

My game currently looks like this: http://puu.sh/2PTkA.jpg

I made it in Java using lwjgl. As you can see it doesn't really look nice. So my question is, does anyone have tips for enhancing it? (I kinda know glsl)

Advertisement
Better textures would help immensely. Shaders can only take you so far.

It's very difficult to even tell what the material on those walls is supposed to be. It has very harsh normals, some weird specular that makes it look moist and shiny, etc... I assume it's supposed to be stone, but it just doesn't look like stone.

The first rule of texture creation: work from reference. Try to find a photo or two of the exact type of rock you want represented on your walls, and when creating your texture keep that reference open and handy. Refer to it often; that's why it's called reference. Try to study it to see how the light falls on it, how the crystalline planes and fractures are formed, what the surface coloration and reflectivity do to the lighting and shading.

In your texture I see mistakes that a lot of technical people make, because they approach the aesthetics of a texture or scene from a technical or programmer's perspective, rather than an artist's perspective. Technical people (and I am as guilty of this as anyone) often think that more is better. Do you use normal-mapping? MOAR NORMALS!! Specular? MOAR SPECULAR!!! It sometimes seems like, "I spent all this effort writing the normal-mapping shader, so I need to really enhance those normals so that people notice how awesome and bumpy things look now." The result, of course, being an overly-shaded mess, as demonstrated in your screenshot.

Rather than MOAR NORMALS and MOAR SPECULAR, though, what you need is APPROPRIATE NORMALS and APPROPRIATE SPECULAR. You need to use a light touch with these things, add appropriate detail that subtly enhances rather than overwhelms. You also need to ensure that you generate your normal maps so that the normals are scaled appropriately to the detail and form of the surface, otherwise the lighting just looks off. You can see how off it looks in your screenshot, where you have moderately rough geometry appropriate to a rough-hewn stone block, but the shading is more appropriate for something as rough as a newly-cooled lava flow.

Tone down the specular a bit, unless the rock is intended to look wet. Specular is a scalpel, not a broadsword. Its use, just as with normal mapping, needs to be subtle and precise, and appropriate.

Also, you might want to vary your materials in the wall as well. From what I can see the wall is man-made, with mortal layers in between the rocks. However, the mortar layers have the exact same material as the blocks, so it doesn't look like a man-made wall at all. The mortar would be grayer, smoother, differently-shaded and much less specular. Even wet, mortar tends to have a dull, matte appearance due to the sand in the mix.

Spot on, the grainyness.

Artistically speaking, what looks pretty? Clever variation.

I think you could improve things by adding some lightsources (even if "baked", such as with lightmaps) and use subtle vertex-coloring to add some color to corners and bits of walls.

If you have normal-mapping going on, it's a good idea to add a clearly recognizable lightsource so we visually understand why the walls are lit like that. It's consistent.

Download Blender and fix your gun. Ewww...

Reduce the graininess with mip-mapping and linear filtering

A bit more colour variation in the textures would look great. I think the normal scale has turned out alright in this case, whether that's by luck or coincidence. You could do with a little ambient light - a light in that enclosed space wouldn't leave the away-facing parts of the wall pitch black.

What the former two said is really true for you. I think textures are so important for graphics,it will help you to catch people's eyes at their first sights.So,do this part firstly.

http://www.game-silkroad.com
info_game@silkroadcg.com

Hi,

Textures from actual photographs (in digital file format such as Bitmap and JPEG) are typically the best to use, sometimes looking exactly like real life surfaces of objects. Shaders and in particular procedural mapping of textures and shaders have come a long way but will likely never have the consistency of the good image texture mapping by an artist one at a time. Humans can detect flaws and inferior appearance, but procedural generation of surfaces will never notice the things which the human mind can. The disadvantage of "live" textures would be that creating many objects or much terrain is much more expensive in labor, time, and cost because each texture must be applied manualy if you want the very best.

On the other hand, I have worked with artists using procedurally generated surfaces which look realistic. Development of these procedures can be time consuming of themselves but worth it for large scenes with many objects or much terrain. Many games use both procedural and manual made surfaces, which allows the best technique for each need.

Get used to coding for both procedural and image applications.

Clinton

Personal life and your private thoughts always effect your career. Research is the intellectual backbone of game development and the first order. Version Control is crucial for full management of applications and software. The better the workflow pipeline, then the greater the potential output for a quality game. Completing projects is the last but finest order.

by Clinton, 3Ddreamer

You mentioned that you are using a shader for this. To me it looks like maybe there is a conditional switch causing a sharp cutoff for the specular highlights.

Look for a conditional like this in the fragment shader. Get rid of the 'if' statement if it's there, the highlights will look better and the shader will run faster as well.

if(diffuse > 0.5)

{

specular = dot(halfVec, shininess);

}

Also, turn down shininess, it will spread the highlight out a bit so it spreads out around bumps a bit more, it'll flicker less.

If you are using normal maps, blur them a bit in a 2D image editor and this will reduce the harsh flickering even more.

Consider it pure joy, my brothers and sisters, whenever you face trials of many kinds, 3 because you know that the testing of your faith produces perseverance. 4 Let perseverance finish its work so that you may be mature and complete, not lacking anything.

This topic is closed to new replies.

Advertisement