News | Forum | People | FAQ | Links | Search | Register | Log in
Tyrutils-ericw V0.15.1
Hey, I got around to setting up a website for my branch of tyrutils: (complete with lots of screenshots of different settings of AO, sunlight, etc!)
http://ericwa.github.io/tyrutils-ericw
and making an "official" release of it.

Nothing major changed compared with the last snapshot (may 1st), but a couple new things:

* .lux file support from Spike, for deluxemapping
* gamma control with -gamma flag and "_gamma" key
* rename -dirty flag to -dirt for consistency
* fence texture tracing is now opt-in only with the "-fence" flag.
* light should run a bit faster


This doesn't have lit2. Not sure what to do with that, tbh.

If there's a demand for it, I was thinking I could make a tool that upscales all textures in a wad by 2x or 4x, and adds a "-2x"/"-4x" suffix to the names. You could then manually get the higher-res lightmap on certain faces by applying the upscaled texture, and lowering the texture scale to 0.5 or 0.25 in your editor.

The only real disadvantage of this hacky method over lit2 is more face subdivision by qbsp. This isn't great, but it shouldn't be an issue if the hack is used sparingly (and bsp2 can be used if needed for higher face/vert limits.)

Anyway, enjoy, I hope this is pretty bug-free.
First | Previous | Next | Last
 
Wow, yeah, map I'm working on went from 18secs to light to 8 seconds (only option was -gate 10) nice! 
 
...though it seems -gate 10 is a bit high of a setting now that it actually works, lost a lot of detail in my lighting :D

Still, nice that it actually works! 
Yes 
2 times faster now with -gate 10. 
 
so, what does the number after gate actually mean then? 
 
When you specify "-gate X": for each light, the util calculates the distance at which a surface would be lit up by that light to an intensity of 'X'. The intensity units are the same as the bsp file, so 127 is full brightness, 255 is 2x overbright. The distance calculated is used as a bounding sphere, so beyond the sphere the light casts 0 brightness. 
 
Scampie + mfx, awesome it is giving a speedup for you guys!

If you just have a delay 2 light in a large box room, "-gate 10" should give a visible seam where the brightness changes abruptly from 10 to 0. Might have to turn up the quake gamma to see it clearly. It's possible I still messed up the formula so i might try rewriting it in a more straightforward way. 
 
I found -gate 3 worked well for my situation. Still a large speedup and I keep some of the subtle lighting effects I was doing. 
 
i remember -gate 1 got a great speed up on old rigs in aguirRe's tools. like from 10 minutes to ~10 secs. Was is different now? 
 
127 is full brightness, 255 is 2x overbright.

That's what I was wondering, thanks. 
PuLSaR 
Tyrann just added -gate more recently to his tool (2013), and it looks like there was a bug causing it not to give as much of a speedup as it should have. but it's fixed in the most recent dev build of my version of tyrutils. 
New Release V0.15.3 
https://github.com/ericwa/tyrutils-ericw/releases

Highlights are Spike's addition of Hexen 2 support, fixed -gate, a new "_surface_spotlight" key which automatically sets "mangle" on surface lights to turn them into spotlights. 
I've Just Tried It 
and -gate really speeds up the light process 
_surface_spotlight Sounds Neat 
Also, a question: Does surface lights follows the shape of the fullbright texels, or maybe the luminance of each texel? 
No 
The "surface lights" I implemented are nothing fancy like that, all it does is handle cloning & positioning copies of point lights. It's just a shortcut around a lot of copy&paste really. It works best with runic light fixtures where it'll reliably put a single point light on each light fixture.

The q2/q3 light utils have "real" surface lighting, where the light-emitting surfaces are divided into radiosity patches, and then the area of these patches is used in the lighting calculation. See here in the q3 tools. I think the patches took their colour from an average of 32x32 texels or something.

I did experiment with that code in my tool but didn't have the greatest results, it was slow, tended to cause "hot spot" artifacts on the walls around a lava surface, and generally didn't look very good in Quake. 
 
:) Thanks for the info.

Idea: Interpret the fullbright texels as transparent, and put the surface's point light behind the surface. This way, you can use the algorithm of the alphamasked texture shadows to shape the light.

The results will be more akin to spotlights, so it would have to be optional.

It would be useful for stuff like windows. 
 
That seems like a really fun feature... I'm going to make a crazy disco ball of spotlight lasers 
 
mankrip, windows like http://triptohell.info/moodles/junk/fte-20150311190731-0.jpg really needs .lit2 type stuff :s 
0_O 
That screenshot is nice! 
Surface Lights 
Considering my lighting knowledge is terrible at best, here's the bit where I go: "I've seen surface lights mentioned but how does it work?" 
Spike 
that screenshot reminds me of something that I experimented with.

http://quakeguy.tumblr.com/post/120732856652/stained-glass-window-casting-light

I have a feeling that however you did it might be more competent because you have managed to get the actual texture to look like it's projected, whereas mine is a bit more of a hacky workaround using alpha masked textures and a couple of different coloured lights. 
 
_surface_spotlight sounds cool. So it just sets a spotlight based on the surface normal or something? 
Looks Noice But 
Stained-glass window lighting to me always looks exactly like those rainbow-splatter lightmap glitches you'd see in games from the early 2000s that remind you that you need to update your OpenGL drivers. 
Warren 
Yep, it sets the spotlight based on the surface normal. It's just a little convenience thing, I always found setting "mangle" to be a pain. This way you can rotate the light fixture brushes any angle and the spotlight will always shine the correct direction. :-)

oGkspAz, there's an example screenshot + entity at the bottom of: http://ericwa.github.io/tyrutils-ericw . Basically add key/value "_surface" "texname" to a light entity, and copies of that light will be cloned on all faces with that texture name. 
@ #200 
Surfaces lights in these tools are pretty simple things.

You place a light, anywhere in the map, and put whatever _color and light and delay settings you want on it... you then put "_surface" "NAME_OF_TEXTURE" on that light, and the light compiler will automagically copy that light around just in front of any surface with that texture, spaced apart every 128 units.

It's best for things like textures that are clearly light sources, a nice convenience so that you can mess with a single light once, and all of them will be lit up. It can also be good for something like Lava, and doing the legwork of lighting it all up for you. 
Minor Promble 
A minor thing though is that if BSP chops your surface up, you get a new light for each face which can make things brighter than expected in places. This seems to be a problem with liquid surfaces mainly. 
First | Previous | Next | Last
You must be logged in to post in this thread.
Website copyright © 2002-2024 John Fitzgibbons. All posts are copyright their respective authors.