Breakable Lights

Started by AgentX_003, November 04, 2008, 07:09:11 AM

Previous topic - Next topic

greenday5494

Quote from: LennardF1989 on November 04, 2008, 08:51:18 AM
Quote from: AgentX_003 on November 04, 2008, 07:09:11 AM
I know people i keep saying that this will be my last post but there's always something on my mind =) + hope this will shift the conversation into something more intelligent.

OK Im not putting a comparison from ct to ps here, but in general i really think more breakable lights need to be put in place cause then the spy can actually use the shadows to hide instead of having to use camo all the time.
Ofcourse, but not a lot.

Having breakable lights means the lights need to have dynamic shadows (as in, those calculated and displayed in real time). This takes a lot resources. We actually tried it by converting all lights in Lakehouse to dynamic lights (where the most were in the halls). MR.MIC lagged like friggin' hell with his Quadcore and god knows how many RAM.

So expect them, just not that the whole map has breakable lights. Just in key places like some lights in halls, lights at objective locations, etc.
im not trying to be an ass (so please forgive me!)

i remember in warehouse, sector 2, you can shoot out those little tiny lights near the merc's spawn door in the already rather dark room. all those little lights in the hallway as well. those didnt cast shadows. Also, i only really ever worked with the Source Engine, and it's predecessor, Goldsrc, but instead of having full dynamic lights, you can use a two-state lightmapped light which has 2 states, one for off, one for on. sure it may use slightly more texture memory, but modern hardware today should be more than up to it. Also, does UE3 use lightmaps, precompiled, or does it use totally dynamic lighting like the FEAR engine?

Also, rendering shadows im 90% sure has nothing to do with the CPU, it's all rendered and calculated on the GPU, so for argument's sake, whats mr.mics GPU?


Farley4Fan

Yes Greenday, I believe you are right.  The first part at least, no clue whether or not GPU is what renders shadows and such.

LennardF1989

That's something Mic has to answer.

And yes, you are right that shadows are rendered on GPU, but FIRST. When your GPU RAM is full, it moves on to your CPU/Ram (shared memory/TurboCache - which most notebooks have -).

I took a quick look at the light source codes, and it seems you can make light toggleable, even when they dont cast dynamic shadows (as in, static lights can be turned on and off, IN THEORY, I don't trust UnrealScript at all, seeing is believing).

BUT, that would mean it only affects the shadows of BSP and StaticMeshes, NOT dynamic things like the playermodels (as that requires making the shadows dynamic*).

To maintain compability with both low-end and high-end system, it's probably best if we make some kind of fake-shadowing system (which simulated dynamic shadows). Or we could selectively turn on DynamicShadows on max 2 lights in a radius of 200 units.

I will have to talk to Mic about this.

Hope that clears up some things.

* Point 4 DirectionalLights on a playermodel with the DynamicShadows on and your PC will lag. This might be a maximum of 10 on high-end PC's. But imagine TWO playermodels on a high-end PC under 10 dynamic lights...

greenday5494

Quote from: LennardF1989 on April 09, 2009, 03:09:39 PM
That's something Mic has to answer.

And yes, you are right that shadows are rendered on GPU, but FIRST. When your GPU RAM is full, it moves on to your CPU/Ram (shared memory/TurboCache - which most notebooks have -).

I took a quick look at the light source codes, and it seems you can make light toggleable, even when they dont cast dynamic shadows (as in, static lights can be turned on and off, IN THEORY, I don't trust UnrealScript at all, seeing is believing).

BUT, that would mean it only affects the shadows of BSP and StaticMeshes, NOT dynamic things like the playermodels (as that requires making the shadows dynamic*).

To maintain compability with both low-end and high-end system, it's probably best if we make some kind of fake-shadowing system (which simulated dynamic shadows). Or we could selectively turn on DynamicShadows on max 2 lights in a radius of 200 units.

I will have to talk to Mic about this.

Hope that clears up some things.

* Point 4 DirectionalLights on a playermodel with the DynamicShadows on and your PC will lag. This might be a maximum of 10 on high-end PC's. But imagine TWO playermodels on a high-end PC under 10 dynamic lights...

Aye. But i always thought that Unreal 3 had totally dynamic lights, like Doom 3. so it still has precompiled lightmaps? One more thing as well, in source at least, the surrounding environment DOES affect the playermodel, the model isnt just fullbright except with dynamic lights. They call that ambient Occlusion  if im correct?

also, in CT, when you do shoot out those lights, it makes the brushes, props (static meshes as you call them in unreal), and player models affected.