Necros
#12553 posted by SleepwalkR on 2013/03/17 08:15:49
I'm not sure about this, but I suppose it was a programming error on some editor. The algorithms for both variants are exactly the same except for a < in one and a <= in the other. This is TB's implementation which is basically the same as the one in the compilers and in Radiant:
unsigned int bestIndex = 0;
float bestDot = 0.0f;
for (unsigned int i = 0; i < 6; i++) {
float dot = faceNormal.dot(*BaseAxes[i * 3]);
// no need to use -altaxis for qbsp
if (dot > bestDot) {
bestDot = dot;
bestIndex = i;
}
}
BaseAxes is an array of 3-tuples of vectors. This is the version to use without -altaxis/-oldaxis. The other version has dot <= bestDot.
Thanks
#12554 posted by necros on 2013/03/17 14:27:33
So it looks like the original treeqbsp had the 'wrong' projection code as well? Or the creator used an editor with the wrong projection and thought it was the correct on..?
Angle On A Trigger
#12555 posted by Mike woodham on 2013/03/17 15:38:59
I've just noticed that one of my trigger_once has an 'angle' set to '-2'. This has crept in somehow but is entirely wrong.
The effect is that the player does not seem to activate the trigger without "wiggling" at the place where the trigger is sited, and it will not be obvious to the player that a wiggle is needed.
Can I remove this field directly from the .bsp file - I do not want to remove the trigger? I seem to remember that you can edit the bsp provided that... you don't alter the file length, or something like that?
The player does not actually pass through the trigger, they simply touch the trigger (it's against a wall).
I can change it in the editor of course but this is the level that took a gazillion hours to compile so I am trying not to compile again.
Mike Woodham
You can remove the field and then run qbsp with the -onlyents commandline.
Necros
#12557 posted by SleepwalkR on 2013/03/17 15:56:43
I don't know who started this, but I suppose that some editor got it wrong and the original author of Tree tried to fix it. Or maybe he just got it wrong. It's super annoying, though.
Mike
#12558 posted by negke on 2013/03/17 16:54:55
Remember to run light -onlyents as well if you have switchable lights in the map.
@negke
#12559 posted by sock on 2013/03/17 17:44:31
Wow, now I understand why when I did onlyent compiles all the lights were screwed. Awesome tip, should be in quake wiki! :D
Qbsp And Vis
#12560 posted by Mike Woodham on 2013/03/17 18:49:15
I thought qbsp ran on the map file, and output a bsp file that you then had to run vis on to optimise visuals.
If I run -onlyents on the modified map file don't I end up with a bsp that still requires vis to be run on it? (That's why I was hoping that I could just manually modify the entity in the bsp file and leave all the compiled visual stuff alone.)
#12561 posted by JneeraZ on 2013/03/17 18:53:53
No, because the entity lump is seperate from the BSP lump. It can update the entity keys/values without throwing away the BSP info.
Did It Anyway
#12562 posted by Mike Woodham on 2013/03/17 18:55:59
I found the entry in the bsp file, changed the '-2' to '00', saved it and ended up with the same file length. Ran it and it worked, so I guess the answer is that you can.
Willem
#12563 posted by Mike Woodham on 2013/03/17 19:03:55
I am clearly not understanding how this all works.
qbsp: takes a map file and turns it into a bsp file?
light: takes a bsp file and applies the lighting as defined in the entity list saved within the bsp file?
vis: takes an existing bsp file outputs a visually optimised version of the bsp file?
#12564 posted by necros on 2013/03/17 19:28:39
yes, but each of those compilers puts their data into different parts of the bsp, so when you do -onlyents on qbsp, you're telling it to only update the entity list and not touch the lighting or vis.
and when you do -onlyents on light, you're telling light to only redo the lighting on switchable lights and update their connections with the entity list.
Almost
#12565 posted by RickyT33 on 2013/03/17 19:29:19
The vis data is a separate part of the file, like the light data.
You can replace the vis data, just the same as you can replace the light data.
The vis data does not modify the BSP tree.
Or am I wrong?
Input Or Output?
#12566 posted by Mike Woodham on 2013/03/17 19:44:20
Does that mean when I run qbsp with -onlyents, it isn't outputing a NEW bsp file, it is only updating an existing bsp file with the revised entity data?
Is there anything wrong with the way I did it, which was to directly edit the bsp file? Admitedly, the 'angle' field is still there but is now contains a zero value, which seems to have solved the "wiggle" problem straight away.
#12567 posted by necros on 2013/03/17 19:47:32
Does that mean when I run qbsp with -onlyents, it isn't outputing a NEW bsp file, it is only updating an existing bsp file with the revised entity data?
Correct.
Is there anything wrong with the way I did it, which was to directly edit the bsp file? Admitedly, the 'angle' field is still there but is now contains a zero value, which seems to have solved the "wiggle" problem straight away.
There's nothing wrong with that, it's just more work.
#12568 posted by necros on 2013/03/17 19:48:25
also, btw, when you put an angle onto a trigger, it makes it so the player has to be facing 90 degrees to that trigger, so the wiggle is really just you accidentally pointing slightly downwards so that it was less than 90 degrees from the straight down angle and the trigger would fire.
I Have Seen The Light And It Is A Wondrous Thing
#12569 posted by Mike Woodham on 2013/03/17 20:11:20
Thanks necros, now I've got it and your last comment is the last piece of what was puzzling me: I didn't even realise that triggers could angles.
Map Optimisation...
Are there any good guides around for optimising a map? My Deck remake is fairly detailed, maybe too detailed(!)... I'd rather optimise it than to start chopping detail down.
UT had occlusion brushes and such, will using skip textures on the void-facing brushes make a difference (is this what you're supposed to do??)...
WC 1.6b
#12571 posted by quaketree on 2013/03/23 02:33:22
Anyone got a copy? The link up-thread is dead.
#12572 posted by JneeraZ on 2013/03/23 10:54:04
func_detail entities should help. As for optimizing the map itself ... is it actually slow? It's hard to make a machine run slow with Quake these days.
It's hard to make a machine run slow with Quake these days.
It really isn't.
Combining Lightmaps?
#12574 posted by Spiney on 2013/03/23 11:58:16
Is there a way to add up 2 .lit files?
I've been playing around with Q1Rad a little and I like the area lights and indirect shadowing it gives.
I've got a light_environment for the sky and light emitting slime as ambient lightsources but I wonder if these can combined with lightmaps from Bengt's light tool for the pointlights?
I like the idea of having bounced area lights to supplement the crisper lighting from pointlights.
Willem, Otp...
maybe it's my machine? I find I have to tweak settings a bit on some of the newer custom maps. I've started using RMQ as my main engine a lot of the time because it usually always gives me a solid framerate (plus I love them coloured coronas)
Spiney
#12576 posted by necros on 2013/03/23 14:36:14
Not that I aware of. Lit files only hold colour data, btw.
think it might he cool to bring back radiosity lighting for quake, but in a more controlled and sutble way...
#12577 posted by JneeraZ on 2013/03/23 17:32:09
It really isn't.
Maybe you need a better machine. :) I have yet to see a Quake level that gets my machine above "bored".
|