Jump to content

Some mapping questions...


Recommended Posts

After many years, I've installed GtkRadiant again. In the early days of Jedi Academy, I did some mapping before (personal projects for fun), so it's not a new territory to me.

Long story short, I have some questions about certain features and how to integrate them into a map.

 

1. How can I make a wall you can just walk through, like in the Jedi Outcast mission where you are chasing Desann?

 

2. What is the best way to properly light a map (placement of the lights and compiling)? It's just a basic map, so it doesn't need to be sophisticated.

 

3. How can I move a brush with force push (or use) and keep its position?

Link to comment

1. There is a shader parm to make surfaces with that shader nonsolid, that's what I would use.

 

2. I think the best way will be to use light emitting shaders instead of placing random point lights.

This will also force you to think about where you place your lights.

When it comes to compiling there isn't a single "best" preset of command switches you should use. It mostly boils down to personal preference and how much time you are willing to invest into the compile.

 

3. Iirc you could do this with a func_useable linked to a movetarget entity.

Link to comment

about three, there is some entities, like func_static and func_door also, if i remember, that allow with to move with force pull\push.

ah yep, func static allow to be moved with push and pull. after move, it remain the place you pushed \ pulled... but if the two spawnflags are checket at some time, you can move forward and backward with force. :)

Link to comment
  • 6 months later...

Okay, here's another question. It's not for me, but for @@Lwkill, who did this Dagobah map recently: https://jkhub.org/files/file/3517-duel-dagobah-xwing-landing/

 

If you take a look at the screenshots, you can see that he added fog to the map. The problem: The X-Wing is affected from the fog shader as well.

My question is: Is there a way to isolate the fog from certain objects, so they don't look like as if they are part of it?

Link to comment

Okay, here's another question. It's not for me, but for @@Lwkill, who did this Dagobah map recently: https://jkhub.org/files/file/3517-duel-dagobah-xwing-landing/

 

If you take a look at the screenshots, you can see that he added fog to the map. The problem: The X-Wing is affected from the fog shader as well.

My question is: Is there a way to isolate the fog from certain objects, so they don't look like as if they are part of it?

thanks nice that you post this for me 

Link to comment

I don't think that the xwing itself is causing the problem here, at least judging from the screenshots. The problem seems to be that the water is not covered by fog the same way as everything else, which creates this stark contrast between the black water and the xwing. As when you compare the xwing to the surrounding foliage around the water it doesn't look out of place.

 

I'll see if I can figure out why this happens.

Link to comment
  • 2 weeks later...

Okay!
 
I played with this a bit and it seems like my assumption was right, the problem is indeed caused by the watershader, take a look at this gallery. I made a simple map using the same fog shader and the same water shader as you used on your Dagobah map, but I also added 5 extra pools of water - each with a different shader. I also spawned a swamptrooper in every pool of water to see what would happen.
 
If you take a look at this picture you can see your water shader, 'h_evil/lakewater' on the left in the back row and right next to it I used 'bespin/water2' which might not look as muddy but in conjunction with the fog it gives the better result.
4gUTJpql.png
 
There are a few key differences between these two shaders:
 
textures/h_evil/lakewater

 

    qer_editorimage    textures/h_evil/wfn2
    surfaceparm    nonsolid
    surfaceparm    nonopaque
    surfaceparm    water
    surfaceparm    trans
    q3map_material    Water
    cull    twosided
    {
        map textures/h_evil/wf3
        blendFunc GL_SRC_ALPHA GL_ONE_MINUS_SRC_ALPHA
        tcMod scroll 0.03 -0.13
    }
    {
        map textures/h_evil/wfn2
        blendFunc GL_SRC_ALPHA GL_ONE_MINUS_SRC_ALPHA
        tcMod stretch sin 1 0.02 0 0.1
        tcMod turb 1 0.02 0 0.15
        tcMod scroll -0.03 -0.1
    }
    {
        map textures/h_evil/waterf1
        blendFunc GL_SRC_ALPHA GL_ONE_MINUS_SRC_ALPHA
        tcMod turb 1 0.03 0 0.12
        tcMod scroll 0 -0.17
    }
    {   
        map $lightmap                         //This shader is lightmapped
        blendFunc GL_DST_COLOR GL_ZERO   
    }

 

 

textures/bespin/water2

 

	qer_editorimage	textures/bespin/water1
	surfaceparm	nonsolid
	surfaceparm	nonopaque
	surfaceparm	water
	surfaceparm	fog
	surfaceparm	trans
	q3map_material	Water
	q3map_nolightmap                                      //no lightmap!
	q3map_onlyvertexlighting                              //Only recieves Vertex lighting instead.
	fogparms	( 0.113725 0.137255 0.380392 ) 1024.0 //this shader utilises its own fog parms, while the otther does not!
    {
        map textures/bespin/water1
        blendFunc GL_ONE GL_ONE_MINUS_SRC_ALPHA
        rgbGen exactVertex
        alphaGen const 0.2                                    //Very low alpha value => High Transparency
        tcMod scroll 0.005 0.01
        tcMod turb 1 0.03 0 0.3
    }
    {
        map textures/bespin/water1
        blendFunc GL_ONE GL_SRC_ALPHA
        rgbGen exactVertex
        alphaGen const 0.2                                    //Very low alpha value => High Transparency
        tcMod scroll -0.005 -0.01
        tcMod turb 0 -0.03 0.5 -0.3
    }

 



Pic with no fog and improved lighting to demonstrate the transparency difference:
b2fThOxl.png


So I ended up making a shader that was a bit of a hybrid between the two, which I then kept tweaking for a while until I found something I liked.
In the end it became a copy of h_evil/lakewater, now titled dagobah/lakewater, that I added the fogparms from the hoth/hoth_fog shader to (In order to ensure a consistent result) and
after messing with that for a while I decided to slightly modify the texture colors in the shader (using rgbGen const ( R G B ) on each stage) in order to darken them and to add a slightly more greenish tint to the surface.
I also made sure not to intersect my global fog volume brush and the brushes with the new watershader to avoid "stacking" the fog effects, which made the surface look very washed out and pretty much plain grey.

Here's what the result looks like:
j3gKrwel.png

and here's the shader:

 

textures/dagobah/lakewater
{
	qer_editorimage	textures/h_evil/wfn2
	surfaceparm	nonsolid
	surfaceparm	nonopaque
	surfaceparm	water
	surfaceparm	fog
	surfaceparm	trans
	q3map_material	Water
	fogparms	( 0.435294 0.486275 0.709804 ) 6800.0
	cull	twosided
    {
        map textures/h_evil/wf3
	rgbGen const ( 0.2 0.3 0.3 )
        blendFunc GL_SRC_ALPHA GL_ONE_MINUS_SRC_ALPHA
        tcMod scroll 0.03 -0.13
    }
    {
        map textures/h_evil/wfn2
	rgbGen const ( 0.2 0.3 0.3 )
        blendFunc GL_SRC_ALPHA GL_ONE_MINUS_SRC_ALPHA
        tcMod stretch sin 1 0.02 0 0.1
        tcMod turb 1 0.02 0 0.15
        tcMod scroll -0.03 -0.1
    }
    {
        map textures/h_evil/waterf1
	rgbGen const ( 0.2 0.3 0.3 )
        blendFunc GL_SRC_ALPHA GL_ONE_MINUS_SRC_ALPHA
        tcMod turb 1 0.03 0 0.12
        tcMod scroll 0 -0.17
    }
    {
        map $lightmap
        blendFunc GL_DST_COLOR GL_SRC_COLOR
    }
}

 



I hope this helps @@Lwkill @@Lancelot

Lwkill, Jeff, Langerd and 2 others like this
Link to comment

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...