Quake2 Plans?
#355 posted by Skiffy on 2016/02/16 06:35:48
Any plans to ever include radiosity in the light compiler for Tyr like in Quake2's Light compiler?
Regarding Quake 2... possible support for it using these compilers at some point in the future? I read it does support the map format but does it output quake2.bsp files?
Currently I think ArghRad is the lighting one for quake2 maps correct and no other tools came after that outdid it? I would love the AO / Dirt / Skylight / Sunlight from Tyr tools to be usable for Quake2. The main things Q2 still had is Smooth Shading and Radiosity though..
Just wondering because I love this toolset and some offshoot in the future would be great.
Radiosity
#356 posted by mh on 2016/02/16 17:33:02
It's actually important to understand that there are not one but two major differences to the Quake 1 lighting model in Q2. When people say "radiosity" it pays to be clear about which of these two is actually meant.
First one is actual "radiosity", as in the ability of surfaces to cast light.
Second one is bounced/indirect lighting.
Thing is, these two don't actually have any dependency on each other. It's possible to implement each without implementing the other.
So you can have surfaces casting light but without light bounces - similar to what these tools already do with lava surfaces.
And you can have indirect lighting but have it coming from light entities which the mapper must place rather than from surfaces.
Or you can have both; but presence of one doesn't demand presence of the other.
#357 posted by necros on 2016/02/16 21:48:22
Dirt/AO makes radiosity a bit redundant at this point. It's also slower.
#358 posted by Kinn on 2016/02/16 21:57:29
Also, Quake 2's radiosity actually created a result the same as if you'd just floodfilled the lightmaps with the same flat shade of orange/brown.
#359 posted by Kinn on 2016/02/16 21:58:46
That said, a single bounce could be interesting.
I'm sick of adding fake bounce lights.
#360 posted by necros on 2016/02/17 00:58:17
Yeah,maybe I shouldn't dismiss it out of hand. and with multicore lighting, it's maybe not so bad anymore.
That is not dead which can eternal compile. And with multicore lighting, even death may die.
#362 posted by Skiffy on 2016/02/17 02:12:19
Light bounce is indeed what I am looking for. Light bounce that picks up the colors from the surfaces it hit is one thing I liked a lot from Q2 lighting. And we all know the Orange lighting was just them having too much fun with colored lights as it was relatively new technology in games and folks sucked at using color for lighting their levels.
And no Radiosity is not redundant because we have dirt / AO... that is a hack of light occlusion not the spread of lighting.
But yes Radiosity is an old way of doing GI. There are better ways to do it these days which are also much faster. Ultimately I would love to see this toolset support quake 2 and include the smooth shading and Radiosity features from Arghrad.
#363 posted by ericw on 2016/02/17 04:05:55
Skiffy, yeah I'd like to implement some kind of bounced lighting, like this article: http://www.scratchapixel.com/lessons/3d-basic-rendering/global-illumination-path-tracing
Probably just supporting 1 bounce to start with. It actually looks very similar to how dirtmapping works currently.
I'm not sure how hard it'd be to add Q2BSP output. Spike might know?
Also, I should have a new beta soon.
#364 posted by Spike on 2016/02/17 05:50:38
q2 renders much like q1bsp.
its the tracelines that are very different. that said, I think you can still use the q2 bsp tree as a point-sized hull, so that's fine for light.
this is of course ignoring all the changed structs that you'd have to deal with somehow (easiest to do at compile time).
#365 posted by Skiffy on 2016/02/17 06:51:27
Sweetness! 1 bounce would already be a great start.
#366 posted by Rick on 2016/02/17 08:52:27
One or two bounces would be fantastic. It could save a lot of trouble. As it is now, for indoor areas I probably place 3 to 5 fills for every actual light.
#367 posted by necros on 2016/02/17 12:36:15
1 bounce with light diffusion would be cool.
#368 posted by mh on 2016/02/17 12:43:12
Personally I'd suggest adding a "_bounce" key to light entities; default if there's no key is no bounces (makes sense to keep defaults same as stock Q1 tools) and the value specifies the number of bounces.
That way lighting could be easily recreated at any time and by other tools without needing to know the command-line options that were originally used.
Ericw
weird, I don't use notepad++ but it should have a "goto line" feature that should take you to the right line. Anyway, I don't think "Brush With Duplicate Plane" is a serious warning, it's more a warning that the editor saved some redundant data.
It's not that I can't find exact line which correspond to log output - notepad++ shows line numbers. Problem is compiler treats line numbering differently.
I think I found the problem - it doesn't count comment lines.
Tested on my map backup.
Compiled as is
*** WARNING 03: line 45402...
added a bunch of commented out lines("//asdasd") , in the beginning of the file and line number didn't change in the log.
Then I replaced commented lines with empty lines, just a line break. No spaces, tabs etc
Now log says
*** WARNING 03: line 45406...
If it is the case, then every line with entity/brush number gets ignored and line numbers 'shift' from what you would get in text editor.
Don't Let Your Dreams Be Dreams
#370 posted by khreathor on 2016/02/17 14:25:26
Sorry for little OT.
There is nice BSP importer for Blender. I would love to bake static Lightmap there and export it back to BSP.
In overall some lightmap import option would be great. I know it's hard, because BSP is just fragmented mesh "dump" and lightmap is low res, but we can think about some solution.
Khreathor
#371 posted by mankrip on 2016/02/17 18:29:24
You could create external LIT files � but that requires writing an exporter plug-in for Blender.
LIT Files
#372 posted by khreathor on 2016/02/17 18:40:48
hmmm.... any link to proper LIT documentation?
External Lighting And Settings
#373 posted by Skiffy on 2016/02/18 04:46:40
Hmm being able to read and write the lighting from and to BSP would be a rather fantastic addition but then you run into a world of pain if you want more light styles supported. how to handle flicker lights and so forth because those get layered on top and limited to the polygons they affect if I remember correctly.
As for the _bounce you could do that or just add it to the compiler as a global option. Same goes with bounce multiplier and saturation. How much energy is maintained when it bounces and how much color is picked up when it hits the surface. In Unreal you can tweak these values so its more saturated and propagates lighting further by not losing as much energy on the first bounce.
#374 posted by khreathor on 2016/02/18 14:06:03
yeah, I know about light styles being problematic in this situation. I'm going through source to fully understand how it works.
Global
#375 posted by adib on 2016/02/21 20:41:09
As for the _bounce you could do that or just add it to the compiler as a global option.
Then make it a worldspawn key, so that way lighting could be easily recreated at any time and by other tools without needing to know the command-line options that were originally used.
Skiffy
#376 posted by DaZ on 2016/02/21 23:46:04
There is a port of the half-life 1 radiosity lighting tool to quake 1 you could look at? It does bounce and phong but lacks modern features from these tools... It's called q1rad. No link sorry I'm mobile
I Think It Will Be Hard To Get Q1rad Source
#377 posted by khreathor on 2016/02/22 00:36:25
|