normal map question
normal map question
I noticed, with the last forum, That it was mentioned rf has normal mapping now. Is this the same as bumpmapping or something totally different? I would like to get doom 3 normal mapping if possible. How does this work in rf? I know in bumpmapping and environment mapping you have to have a couple separate textures, is this the same for normal mapping?
normal mapping technically is bumpmapping, as is environment bump mapping. to my knowledge, they are all simply "versions" of bump mapping, ways to achieve similar results.
yes, you can achieve d3 normal mapping with rf. what you need (i believe, i havent used normal mapping much, i use embm most of the time) are two textures for dot3 (normal) mapping: BN0_<yourtexture'sname>, which is the actual texture, and BNB(or maybe BNN)_<yourtexture'sname> for the normal map, which you will have to generate from either a higher poly version of your model or from a height map (see below). this can only be used on actors; no level geometry.
with embm bumpmapping (environment bump mapping), you will need either 2 or 3 textures, it varies by case. for level geometry, you can have 2 OR three: BM0_<yourtexture'sname>, the actual texture, BMB_<yourtexture'sname>, the heightmap (a version of the texture which tells the engine what is high and low, in the case of rf, black is highest and white is lowest, note its normally inverted in other engines), and, optionally, BMS_<yourtexture'sname>, the specular map, which acts as a lightmap. this is optional for level geometry, and if it is present and the surface with the bm0 texture is set to gaurad (spelling?), it will use the bms texture as it's lightmap; otherwise, it will use those generated by the compile's light process. for actors, it works the same way, except that the BMS texture is mandatory.
hope this helps, feel free to post again if you have any questions.
oh, and welcome to rf!
yes, you can achieve d3 normal mapping with rf. what you need (i believe, i havent used normal mapping much, i use embm most of the time) are two textures for dot3 (normal) mapping: BN0_<yourtexture'sname>, which is the actual texture, and BNB(or maybe BNN)_<yourtexture'sname> for the normal map, which you will have to generate from either a higher poly version of your model or from a height map (see below). this can only be used on actors; no level geometry.
with embm bumpmapping (environment bump mapping), you will need either 2 or 3 textures, it varies by case. for level geometry, you can have 2 OR three: BM0_<yourtexture'sname>, the actual texture, BMB_<yourtexture'sname>, the heightmap (a version of the texture which tells the engine what is high and low, in the case of rf, black is highest and white is lowest, note its normally inverted in other engines), and, optionally, BMS_<yourtexture'sname>, the specular map, which acts as a lightmap. this is optional for level geometry, and if it is present and the surface with the bm0 texture is set to gaurad (spelling?), it will use the bms texture as it's lightmap; otherwise, it will use those generated by the compile's light process. for actors, it works the same way, except that the BMS texture is mandatory.
hope this helps, feel free to post again if you have any questions.
oh, and welcome to rf!
thanks andy. I guess what im wondering with normal mapping is how to get this on your actor. I use milkshape, I know you have to export the .bdy and mot files, but where do u put you bno_ textures? not really sure how to do this. Thanks, great forum. Also, reading through the docs. You cant bumpmap level geometry, like the walls in my level? no biggie, just curious
you can bumpmap level geometry, and i have several screenshots, it looks quite amazing although it produces annoying white dots occasionally for some buggy reason. you can use embm for level geometry, but not dot3(normal mapping).
to get it onto an actor, you use the BN0_ texture as the main texture, and apply it to your actor in milkshape. then, in astudio, you add the BNN (or is it BNB? cant remember, try both) texture as an extra texture.
one thing to stress: i went through this to find out what i did wrong: NAME THE MATERIAL IN MILKSHAPE BN0_ SUCHANDSUCH, NOT ONLY THE BMP FILE. i struggled with this.
to get it onto an actor, you use the BN0_ texture as the main texture, and apply it to your actor in milkshape. then, in astudio, you add the BNN (or is it BNB? cant remember, try both) texture as an extra texture.
one thing to stress: i went through this to find out what i did wrong: NAME THE MATERIAL IN MILKSHAPE BN0_ SUCHANDSUCH, NOT ONLY THE BMP FILE. i struggled with this.
Good explaination
Good explaination... I'm sorry I don't get as much time to work on RF but I am still working on it and as time permits I will try to get normal mapping working for level geometry...
I'll have to run my sample levels through RF72A... In my test with my development softwae it does work with static lights... what I'll do is gather my test levels together and post them if everything is o.k. in RF72A... Your correct in that it only calculales one light at a time... I don't think this is big deal but I would like it to move between lights much smoother than it does instead of the "popping" between lights it does now...GD1 wrote:nuh-uh. If you try using regular level lights it shows up completely black. you have to use dynamic lights to get any lighting at all. and even then, it seems to only calculate for one light at a time, it won't accept mulitple dynamic light sources.
i just tried again, still cant get it to work. no matter what it always calculates for the direction of the last dynamic light to hit it. it'll probably turn out to be a ME problem instead of an RF problem though. calculating one light isn't a big deal, im just letting you know what i found out.
i think normal mapping really does a lot for RF, i really like what it can do. the next thing we need as far as graphics go is specular highlights for normal mapped actors, thats what i would really like to see.
on a side note, one thing i just noticed though is that even though static meshes dont cast stencil shadows, they recieve them really well. opens up a lot of possibilities for terrain. the normal mapped actor i was using recieved them too.
i think normal mapping really does a lot for RF, i really like what it can do. the next thing we need as far as graphics go is specular highlights for normal mapped actors, thats what i would really like to see.
on a side note, one thing i just noticed though is that even though static meshes dont cast stencil shadows, they recieve them really well. opens up a lot of possibilities for terrain. the normal mapped actor i was using recieved them too.
I disagree, it looks very odd to have an actor being lit from the back when its standing in a space where it should be lit from the front.calculating one light isn't a big deal
In the first pic the actor on the right is normal mapped, the left is not. Here the lighting looks pretty good. In the second pic, you can see how odd it looks to be standing under a light, but receiving no light from it.
[/img]
- Attachments
-
- example2.jpg (30.41 KiB) Viewed 1753 times
-
- example1.jpg (38.75 KiB) Viewed 1753 times