PDA

View Full Version : -extra compile


tonka
2002-09-08, 16:33
Hey,

I'm finally doing my last compile ( I hope ) !!!

I'm doing a vis,light,extra compile.

It's been 2 friggin hours and the damn trace ltm (does that stand for trace light map ?) hasent moved from 0 !!

I know its working cause my comps just a chuggin and the harddrive light is blinking like a strobe light in a disco, but is it supposed to take this long !!????

or is something going wrong??

I heard the light compile stage is a bitch of a long time, but I never thought it would take days !!!
I dont want to shut it down to find out I have to start over again.

Tanks :)

Midnight_Oil
2002-09-08, 17:32
I have seen a full compile take over 22 hrs with the old q3map....

tonka
2002-09-08, 18:24
Holy F!%$ck !!!

22 hrs !!!

How do I know what version I have.. I have gtkradient 1.2.9

I quit my compile.

Detoeni
2002-09-08, 18:27
vis,light,extra, your using the old q3map, got a good book handy, its going to be a long wait.
http://dynamic4.gamespy.com/~surface/showthread.php?s=&threadid=43
you want the q3map and the wolfcompiler from here and this will help set it up
omnixs old post
OK, make sure q3map is installed properly.
cel.shader
fur.shader
q3map.shader
lightgrid.shader
shaderlab_foghull.shader
go into the scripts folder, you must add these to your shaderlist.txt in your scripts folder.

Now open the common.shader with word pad and do a search for terrain. you need to add q3map to that shader. The two entries will look like this.
textures/common/terrain
{
q3map_terrain
surfaceparm grasssteps
surfaceparm nodraw
surfaceparm nomarks
surfaceparm nolightmap
}

textures/common/terrain2
{
q3map_terrain
surfaceparm grasssteps
surfaceparm dust
surfaceparm nodraw
surfaceparm nomarks
surfaceparm nolightmap
}

If you don't have the lightgrid.shader then e-mail me and I'll send it to you as its a very awsome tool to use, I will also send you a demo of the fur.shader I will explain the lightgrid shader in a moment.

Now in the world spawn you can add the values:
key: _lightmapscale
Value: 2.0 // value of 4 would shorten compile but not as good light. experiment.....
this determins how fine the shadows will be for the whole level a value of .1 would leave crisp well defined shadows but take forever to compile. you can choose which brush faces recieve the crisp shadows.

IN compile set the options I told you. in the vis option make sure you have it set to normal or take a chance of having your map full bright if fast is checked.

make sure -meta is set in the bsp options and custom in front.

your light level is going to be based on how you made your level and the sky texture used. If you have a leak it may compile in full bright.
sample size just defines lightsamples from the grid units. need better defined light then lower the samplesize to 8 or 4 for less defined light then try a higher number.
if you like you can test your level by selecting normal on all the options and the level won't use the new q3map compile process which is completely different than having the -meta set.

Lightgrid. shader:
allows you to define where the lightgrid is processed. So, you need to use it in the parts the player has access to. this is good for maps that have alot of space the player get to as it will decress compiletimes and .bsp size greatly.

worldspawn:
key: _lightmapscale
value: 2.0

compile:
bsp phase: -meta

vis: normal

light:
-fast , -super 2

If you need the shaders down load the old version of Q3map_ydnar2, the shaders are within a folder with this.
Cant wait to see the map.
ope this helps
Dt

Omnix(or anyone whos used this), is the above still ture for the new q3map? Iv not had a chace to play with it yet.

tonka
2002-09-08, 20:58
Hey guys thanks so much for the help !!!

BUT !!!!!!>>>>:)

I downloaded q3map2, same with the .dll's.
read ydnar's read me saying it needs to be in wolf radiant in its own directory.

But when i went to compile the map it was still using the old one.

I need to point gtk to the new q3map2...how???

I'm such a neewb, I smell newb !!

But if you can help me set it up...I will send u a box of beer via e-mail!!:D :D :D

Detoeni
2002-09-08, 21:09
Remove the old Q3map, use wolfcomplier not gtk, this will ask you to point it at wolf and your new q3map, set it up as above and watch your compile times drop.
Dt

tonka
2002-09-08, 21:19
Ya hoo !!!!!!!!

I know how to change it to q3map2...

it was in the project settings in gtk.

All the compiling options that said q3map.. I changed to the q3map2 directory... it loaded !!!!!!

Now, wheww, what do I do?

Oh yea, deteoni, my map is not that great. Actually because this is my first map, If I had the chance I would start it much differently. I would like that lightgrid shader you spoke of. And some technique's.

Man this is getting more harder, but fun.

But Im going to compile now, just to see what the hell it looks like without vlight,

and thanks alot deteoni, registered, you didnt have to, but u did.

:)

tonka
2002-09-08, 21:31
hey I got wolf compile going too...

Im gonna try it out with the option u said deteoni....

Let u know what happens !!!

yahooo!!!:) :) :) :D :D :D

Midnight_Oil
2002-09-08, 21:59
Now your cookin!
You can get the lightgrid shader from omnix's tut map. Now all you have to do is get a handle on caulk hull. I had a link now where is it......

tonka
2002-09-08, 22:39
I dont see how the light grid shader will work for me.

Its a ship, all areas need to be lit, except for the sea.
And ominxs tut map, well, i did dl it a while back, i dont get it.

How do u lay down the lighgrid brushes??

or is it one big brush encasing an area?

Detoeni
2002-09-08, 23:21
Your ships in a large box, 70% of this box the players cant get to so it dont need lightgrid in them areas, maplighting and lightgrid are two diffrent parts of the level lighting one lights texture and the other models. Reduce the size of the lightgrid and your file size will drop and the level will work alot better. only place lightgrid in areas that the models/players can get to.

Heres a link to hull-caulking
http://www.quake3world.com/ubb/Forum6/HTML/020488.html
Ill send you the lightgrid texture and shader. send me a mail and Ill return
detoeni@lineone.net
Dt

tonka
2002-09-09, 00:52
I've read that post 100 times....

some of it is like greek to me.:confused:

Detoeni
2002-09-09, 10:29
Good Day all
Which bits are you have a problem with?
edited
This exspains better how to use the lightgrid.
http://homepage.ntlworld.com/tina.smith8/lightgriddt.jpg
The lightgrid needs to be inside the boat and under the sea.
Dt

tonka
2002-09-10, 02:52
This is the email I sent you , I know, but I think others will need to know what u are teaching me too.

It like in the readme I read in ydnar's ( I think) q3map2...

We share, because those before us shared, you will sleep better at night.
:D
I didnt see your other post that was at the end !!!

Thanks Deteoni, :) :) :)

So to recap...
I would lay down 2 brushes...

A thin one for the ocean, under the sea???

Inside the boat???

or couldnt I just make one big brush to encompass the whole ship????

Actually, I dont want the ocean to be lit, it a very dark night map, I would prefer that it stayed a little dim .
As of know, I have an alpha shader the casts a shadow over the ocean, it hides the map boundary, where the ocean and the sky meet.

Too many question I know, but I have to get it right !!

I just spent the night hull-caulking my ship. Practically redid everything. I think it will be better off now because I corrected some over-lap brushes. I think I know the reasoning behind hull caulking, but when I'm finished I will let u know what happened.

I edited this post 3 times already. I hope it makes sense some what, I'm really tired, too much caulking is making me spin !! lol

Thanks again bro.:D :D

Midnight_Oil
2002-09-10, 05:39
Your useing your filters right? That makes hull calking much easyer. Also use the save and load .prt file to see what is happening it works in the camera view now. Also use the showtris and rspeeds commands to check performence.
Glad its coming together for you, cant wait to see it.

tonka
2002-09-10, 10:09
Yes I believe so....

Alt6 to view caulk on/off.
The method I'm using is this...

First in caulk, then clone, texture clone, alt6 to see if its all there properly, then ctrl m to make it detail. I realize something, or I think I did, that the detailed clone must be selected last for it to show up before the caulk. I dont know how this will look when its in the game, havent gotten that far yet. But it makes changing or fixing easy, because when u click a brush, the last selected brush (not caulk) but the textured detail brush will show up.

So far its been good, but I had to totally do over my deck and some lower decks too. I dont really know if its even improved preformance, coz like I said, I havent tested the map in /r_speeds or even tris.
But I got fewer brushes now and the map is seal extremly tight in caulk.

When I did a showtris before this, I was getting tris rendering behind walls and into other rooms, because I found out, that caulk must meet caulk to be effective.
Vis works right thru anything that isnt caulk, so even if u have a little piece of textured brush showing in a wall, vis will go thru that and into another room.

Well, Im off to work, wish I had my map at the office, work wouldnt seem so bad !!:D

I should be finished hull-caulking tonight. Do a tris rspeeds count.
Let u know what happens.

Detoeni
2002-09-10, 14:28
Good Day to You
It can be a little confusing at first, but making maps using hull-caulking will make the map run better and with the correct construction you can go mad putting in detail that would not normally be possible.

First lightgrid
The lightgrid must be used in all areas that the players can get to.
The smaller the area covered by the lightgrid the smaller your map file, You could get away with inclosing the ship in lightgrid but it would be much better to apply the light grid to each room. This will reduce the file size further.
If the players can not get to the sea then a lightgrid in these areas may not be needed.
Shoot1.
http://homepage.ntlworld.com/tina.smith8/lightgridjpg.jpg

Is an illustration of how the lightgrid works to light models. Each square has a different light value (smaller the _lightmapscale the smaller the squares, the more information that is in the file). This also means that all lighting can be done with textures so reducing the number of entities.

Hull-caulking.
Your hull must be simple in construction, my Theodor map has over 1500 brushes in its hull construction so size and complexity are not a problem but the hull must be very carefully made. The hull brushes should not overlap and should never have any bevels in its construction (its ok to clip detail brushes inside the map but I would advise against having bevels within the hull walls).
Here is a test map for you to look at, its just the map, it will be quicker for you to compile the bsp than to down load it. I have also included the _lightgrid shader and texture
dthulltest (http://homepage.ntlworld.com/tina.smith8/hullmap.zip)

Gets the map running in wolf, drop down the console and type the following “/bind q toggle r_showtris” close the console and then hit “q”. You will now be able to see what the game engine is drawing. As you move round the map you will be able to see parts of rooms but not what is in that room until you have line of sight. There are no hint brushes in this map.
If you open the map in rad’ you will see I have detailed brushes within the hull walls, each drawn face has its own brush. Only brushes within the hull need to be done like this, (any detail brush within the room will have every face drawn by default). If the map construction is done well only what can be seen will be drawn.
At the end of the day this is the goal, if the game engine is only drawing the parts of the map that can be seen you will have a great deal of freedom in how detailed you want to make you map and it will run well.

ope this helps
Dt

Ghast
2002-09-10, 18:20
Detoeni - Compile how? I am finding this thread muy interesting! Which version of gtkradiant? (1.2.10?) and ydmar's Q3map (2+?)and what options (-extra ,-meta?) using wolfcompile? (or a batch file, in radiant?) did you use so we can get the same results you are referring too? OR could you zip up the compiled version too, please? (would be faster than including a readme? *G*)

Detoeni
2002-09-10, 19:24
Iv added the bsp to the above zip.
I am using GTKradient 1.2.9, wolfcompile 2.0.0 Beta 1 and Q3map_ydnar_2.1.0_b1(still using the old ones, I was going to up grade after I finish Theo')
I have it set up as in the post, but for the _lightmapscale which is 2.5
Dt

tonka
2002-09-10, 21:11
God Damn Deteoni !!!

Man, u sure go out of your way to help someone !!!

Mucho, Mucho gracious !!!

I'm such a newb !! I saw the way u built your rooms too, I even got that wrong. Next map !! hehe

But I see the way the lightgrid is applied. I will do it like that.
But something else got my attention ( other than I know very little, but learning very much )..

When u said " This also means that all lighting can be done with textures so reducing the number of entities."

All my lighting is from textures I made. I have light juniors underneath them but no entity( point) lighting. Is this bad !!!

Thanks so much for the lightgrid shader, tuts and your time.

All I can say is that : you're in my read-me !! "
Yahoo for u, eh??!! lol
:D :D :D

Detoeni
2002-09-10, 21:35
No worries
If you are using texture lighting you dont need the lighting juniors. They only give extra lighting to models.Iv never used light juniors, iv had a play with them but not found any use for them.
One big plus to using texture lighting, its easer to change light levels in a map if its one or two lines in a shader.
Dt

tonka
2002-09-11, 01:00
Good stuff then !!!

And I know what u mean about the light change, way easier, I found that very early on.
LOL.. i dont have any questions !!!

I'm still caulking, but I feel one coming on...no wait....nope....no questions !! :D :)

Well back to the ship...damn thing has got to set sail soon, or rust starts to happen.

Question !!!!! hahaa.. knew there was one in here some where!!

When doing rspeeds, there is the shader count, whats the limit on that ?? I remember someone saying something about 1000 is tops.

Hey I'm going to down load ur map when I get the chance, its just right now, I just got to finish and get my life back !!!
:D

editor666au
2002-09-11, 11:46
Take heart Tonka - you are where I will be in about a month. I'm still at the stage of trying to bend cylinders successfully, rather than hapharzardly!

This lightgrid stuff is all good grist for the mill, so keep it coming!

Regards

Editor

Midnight_Oil
2002-09-11, 12:14
A shader count of 1000 is about the most you want. rspeeds should stay under 10000 and should never go over 20000. Remember that when you get a few players, that will add to the poly count. If you stick to those guidelines your map should run well on about any rig.

editor666au
2002-09-11, 13:15
Wow. This is a truly excellent thread. I've pulled deteoni's map apart from every angle for the last two hours just so that I can learn new things.

Inevitably, some questions:

(1) The caulk hull has nothing to do with tris not be visible from other rooms right? This is just a function that no two leaf portals are visible from one room, due to the offset corridors between each room. Am I correct?

(2) The map doesn't use the lightgrid shader that deteoni supplied, it uses the common/lightgrid texture. Why do I think this? Because the lightgrid shader in the textures console of gtk doesn't have a white border. Am I right?

(3) Why is using a lightgrid better than point lights? Is it efficiency of compile, or just easier to manage?

(4) Making rooms out using the hull method seems to take twice as long. What is the reason for doing it?

(5) So going by what deteoni was saying earlier, if I have a room with a bevel in it, it is not suitable for caulk hull. Does this apply to patch mesh as well?

Damn, I was going to map tonight, and all I've done is look at other people's maps! ;-)

Regards

Editor

Midnight_Oil
2002-09-11, 16:22
1) Structural brushes make the breaks in the vis. If a face of the neighboring portal cannot be seen the portal beond it will not be drawn. Caulk does not block vis but if it is structural it will make a split. Textured brushes do block vis but if they are detail they will not cause a split. So... The structural caulk brush makes the split and the textured detail brush blocks the vis. I am not quite sure why this is more efficient but it seems it is.

2) The light grid texture is just to define where the lightgrid shader will be applied. The shader must be placed in the scripts folder and added to the shader list for it to show the white border indicating the texture has a shader. This shader doesnt ship with radient and must be added manually.

3)The lightgrid shader is not a source of light, but a way of applying the effect of lighting to a brush. (correct me if im wrong on this one)

4) see # 1

5) Patches do not cause splits in the vis. They are affectively detail. I think that they do block vis however. If your room has a bevel you can make the room square in the hull and add the patch or bevel with detail brushes.

I think what he was refering to was the practice of mitering the corners of the room to prevent overdraw.

Detoeni
2002-09-11, 19:09
Good Day All
Question 3.The lightgrid shader(Q3 toy) is for applying lighting to models/players with in the map.It does not light the models, light sorce like entity or textures do that, the lightgrid is used to transfer the maplighting affects to the model It’s the lightmap that applies lighting to textures on brushes (I think,not too clued up on this technical stuff).

You can use bevels within the map but not within the hull. If you dont keep the hull simple, it will never compile properly.

Note on Theodor
This map was made the same way as the testmap above, its made up of large rooms (some with buildings in) connected by corridor sections.

If you are going to make a hullcaulk map start by making the hull (just structural), once the hull is done copy it to a new map. In the copy apply textures to the inside of the hull(sky on the roof of all rooms will take care of lighting then anything on the rest), then do a full compile and test the map with showtris. It’s a lot easier to make changes and to get the vis working right at this stage. If you have any areas that you know will have lots of detail in make sure that they are controlled well. Its not worth putting in hints at this stage, if your construction is done right you wont need too many. Once you happy that all is working well caulk the lot and start adding the detailed brushes

Dt

tonka
2002-09-12, 04:02
very interesting tecnique.
:)

editor666au
2002-09-12, 23:27
[QUOTE]
[B]5) Patches do not cause splits in the vis. They are affectively detail. I think that they do block vis however. [B]

I'm pretty sure patches don't block vis, but I am willing to stand corrected.

Regards

Editor

tonka
2002-09-13, 02:31
I dont think patches block vis either,

its why u have to place caulk behind them.

Midnight_Oil
2002-09-13, 03:32
Well, I could very well be wrong. : )
I do know they act as detail, and will not seal a map from leaks.
My understanding was that any textured surface would block vis if it was on a portal split as in the caulk hull technique.

tonka
2002-09-13, 17:56
I could also be wrong,
but a patch cant hold any surface parms, none.
Even a regular textured wall, has a default surface parmater, to block vis.
This is my understanding anyway.

Detoeni
2002-09-13, 18:13
Good Day All
Caulk is placed under patches to stop z-fighting/texture clash at the point where it joins a brush.

In hullcaulk maps it’s the structural caulk hull that splits vis, every thing else is detail or should be treated as detail.
Dt

Midnight_Oil
2002-09-13, 18:40
Take that, q3world! No dummies here : )

omnix32
2002-09-13, 20:53
OK, errrr...
Hull Caulking. I had a file in the tutorial section will all the files you needed at one time if EyeRoniK still has it up there that shows Hull Caulking and Has a copy of the lightgrid.shader......

Nothing blocks vis per say...... Just because you have a caulk bush as a wall does not mean the engine can't see the other side. Vis is broken up into Leafnodes. If the leafnod the player is standing in can see the one next to it then vis will draw that room or area even if the player can't see it from where there standing. each Leafnod is connected to another leafnod through a portal. A portal is where the Leafnods meet. So its possible for the engine to draw a entire level if the leafnods can see into each other. thats where hint brushes come in. Hint brushes are invisible structural brushes that are not solid that break up leafnodes and create more portals. The idea is to place the hint brush so that it will split a Leafnod so that the portals will not see into each other. A Well designed level will not need to many hint brushes and hint brushes could possibly create problems if placed wrong. Nib has a good tutorial on explaing on how they work.

Detail Brushes:
Making a brush detail makes vis pass over it and cause it not split leafnodes.. This is good if you have a room full of beds or stuff made of structural brushes that create alot of portals causing the engine to work harder. So if the engine can see into the other room and the player can't, just making the stuff in the room detail is enough alot of times to make R_speed accecptable...

Hull Caulking: With Hull caulking your making eveything detail with a caulk brush inside the detial brush. This greatly speeds compile times and R_speed, but caulk brushes split Leafnodes. So you have to decide if you want to keep the wall detail with no caulk brush. If I have structural pillars for example in a room I would not probley caulk hull them but keep them detail. I would always caulk hull the outside walls touching the void except for the sky texture.
q3map2: there is now no need to use mitered joints with q3map2 as it compiles the bushes together in a triangle soup instead of the old fan method. Using mitered joints may slow things down. You can also have caulk now overlap as q3map2 no longer considers caulk. So, you can now have a brick wall made of individual brushes, then turn them to detail and caluk hull them to make vis consider them just one large brush so to speak.......

you can find the example I made with a copy of the lightgrid shader Here. I also cliped the floor to pervent texture overdraw, but thats another topic.
http://old.fileplanet.com/dl/dl.asp?/planetwolfenstein/surface/vis.zip

Ghast
2002-09-13, 22:14
and q3map2 starts with which version of GtkRadiant and does this only work for the -meta compile?

tonka
2002-09-16, 02:08
Ghast...
q3map2 is seperate from gtkradient.

Let me explain how to set it up. Its not hard.

go here.....

http://shaderlab.com/q3map2/2.3[/url]

download the q3map2..i have version .a13 because I saw thats what ominxs32 was using, the newer ones might be better.

download the dll's---dont forget this--- they are on the same page near the bottom of the shaderlab page.

Now when thats done, go into ur rtcw/radiant folder.
Create a new directory, call it q3map2.
Put the new q3map2 in there, along with the new dll's.

Now in radient, go to project settings, see all the compile options
highlight the ones u usually use, ( me personally, I only have the vis, vlight on q3map2 cause I use wolfcompile) but anyway...

highlight the one u want, hit the button "change" next to it...u will see the command line for that compile.
Now, where ever u see the old" q3map" in that line, change it to q3map2\q3map2. Do that all the way down the command line. Use ur arrow key to scroll down the line, it is pretty lengthy.

Now ur all set.

In wolfcompile, just change the target directory. I forgot how to do this with wolf for, its been a while and I've been drinking !! lol
:D

But trust me, its way better and faster.

Ghast
2002-09-16, 03:11
http://www.tramdesign.net/cgi-bin/ultimatebb.cgi?ubb=get_topic;f=2;t=001559

tonka
2002-09-18, 01:59
Well I dont know about that ghast.

To really know which q3map is the best u have to try them all.
I found q3map2.a13 to be just fine.
Grant it, it doesnt seem to like the colour black as it tends to make it grey. But thats ok, when it comes to alpha shaders.

Roll those dice,take a chance.