PDA

View Full Version : Will this game reignite this "Legendary series?" and a long LIGHTING debate....



feralspecies
4th Nov 2008, 00:35
Dear all

Having noticed eidos' glorification of the series, branding it legendary, I feel in some ways it has isolated its own fan base.

This game has its roots on the pc, we all played the original Deus ex, and we were all blown away. We also remember opening and installing Deus ex 2, and being sorely dissapointed with its console style controls and gameplay. I have nothing against console players, but it is a much stronger market, and developers HAVE to dumb down their games to appeal to younger audiences...it must break their hearts to do this.

But, Eidos have stated that they are aware of the pitfalls of deus ex 2, so why..oh why, have they implemented "auto heal", taken out stats, and implemented a cover system. I fear this will become a Microsoft endorsed gears of war-like farce of a game.

This has turned into a bit of a rant, but eidos need to understand their fan base evolved from the PC, and as a PC player, I like stats, I like RPG elements, and I like customising characters. I am very worried about this game, and I actually remember Deus ex 2 being one of the first games noticably dumbed down for console players, but why does it have to be like this? Why not make things more intuitive, why not include more depth?

Eidos, please dont ruin this title, the massive tenticle augmentation already sounds ****, this isnt a DC comic. Why would these augmentations exist before Denton was even created? The original augmentations were more feasable, and more interesting.

What does everyone else think?

Unstoppable
4th Nov 2008, 00:45
Not everything is written in stone and I'm not one to worry about what developers are planning to do. I rather just wait for the demo or finished product and grant my judgement.

Gears of War 2 midnight launch this Thursday is much more important than me worrying about a game that is more than a year away.

JakePeriphery
4th Nov 2008, 01:00
Dear all

Having noticed eidos' glorification of the series, branding it legendary, I feel in some ways it has isolated its own fan base.

This game has its roots on the pc, we all played the original Deus ex, and we were all blown away. We also remember opening and installing Deus ex 2, and being sorely dissapointed with its console style controls and gameplay. I have nothing against console players, but it is a much stronger market, and developers HAVE to dumb down their games to appeal to younger audiences...it must break their hearts to do this.

But, Eidos have stated that they are aware of the pitfalls of deus ex 2, so why..oh why, have they implemented "auto heal", taken out stats, and implemented a cover system. I fear this will become a Microsoft endorsed gears of war-like farce of a game.

This has turned into a bit of a rant, but eidos need to understand their fan base evolved from the PC, and as a PC player, I like stats, I like RPG elements, and I like customising characters. I am very worried about this game, and I actually remember Deus ex 2 being one of the first games noticably dumbed down for console players, but why does it have to be like this? Why not make things more intuitive, why not include more depth?

Eidos, please dont ruin this title, the massive tenticle augmentation already sounds ****, this isnt a DC comic. Why would these augmentations exist before Denton was even created? The original augmentations were more feasable, and more interesting.

What does everyone else think?

While I'm really digging the art direction of Deus Ex 3, I agree with you 100%.

K^2
4th Nov 2008, 01:10
I don't think DX3 will have the same reception as DX did. To be honest, I'm not sure that a market for such a game is very good right now, so only a small start up developer might take a risk to attempt something like this. But I'm also fairly confident that DX3 will be a good game in its own right. Hard core fans will complain about a lot of its elements, of course, but a lot of people who never played original will pick it up and like it. If nothing else, DX3 will bring original back into the focus, and that can only be a good thing.

DXeXodus
4th Nov 2008, 03:30
I agree with K^2. I honestly believe that as a game DX3 is going to be excellent. It will be fun and complex in its own right. There will be a lot of things which just annoy the hardcore fans (I am one of these) but if anything, it will serve to bring Deus Ex 1 to even greater heights by opening up a larger fan-base. I have high hopes for this game and I do see it as a game that will reignite this "Legendary series" as you put it. Issues like auto-heal aside, I can only look forward to it.

Mr. Perfect
4th Nov 2008, 03:33
Stats are back in, as I understand it.

Also making a return in Deus Ex 3 is the old inventory system and diffrent kinds of ammo.

The cover system? Not really sure how that will work out. :scratch: Shadows mainly worked only outdoors in Deus Ex one, since you had to use cover indoors because of the bright lighting. Hopefully it won't be a deal breaker.

I am extremely skeptical about the auto heal though. That really does sound like consolification.

K^2
4th Nov 2008, 04:51
As I mentioned elsewhere, and I think it is important to keep this in mind, the lack of shadow-based stealth is a tech limitation, rather than "dumbing down" of the game. If it was a decision based on targeting an audience, I'd be worried about DX3, but after seeing the new Crystal Dynamics engine, it is clear that there simply was no good way to code shadow detection.

GmanPro
4th Nov 2008, 05:33
These game companies need to wake up and stop trying to cater to the console. I mean just look at Half Life 2!!! That's one of the greatest selling games ever. And it came out for the PC exclusively. It wasn't until like a year and a half later that they ported it over to Xbox. PC is just plain better. I just beat Fallout 3 and I did it on my PC!

I am liking that it was $10 cheaper for PC tho, that's pretty sweet.

Laokin
4th Nov 2008, 06:09
As I mentioned elsewhere, and I think it is important to keep this in mind, the lack of shadow-based stealth is a tech limitation, rather than "dumbing down" of the game. If it was a decision based on targeting an audience, I'd be worried about DX3, but after seeing the new Crystal Dynamics engine, it is clear that there simply was no good way to code shadow detection.

That's a ridiculous claim. The engine doesn't limit what you can code... but how you can code it. If they wanted you to move through shadows.... the shadows would be carefully placed any how. In this case, all they have to do is code the ability to implement any designated area and assign it "invisible" and then light it correctly. If they can add a cover system, they can add shadows.... horrible argument.

Although, I am AGAINST shadows as a source of hiding as it's not really realistic. Low light does infact aid stealth though, but not by making you undetectable, but by taking away the ability to differentiate between color and tone, thus causing more things to blend to the eye. This is practically the base principal in camouflage. In other words, a nightmare to code a realistic shadows detection. In short, the light should aid the cover system... but the cover system should be the main source of hiding in a real life scenario. I'd like to see it done, but, it would only be really feesible with certain level design -- one that might not be present in the release of the game. I hardly see how this could really affect the playability of the game. Unless of course they make it entirely to easy to sneak by places, by allowing you to see (because of the third person camera) more than you would be able to if you were put in that position.

Stay hopeful, and look to the future. The auto-heal also hasn't been explained, and one wishy washy comment by a nobody magazine citing CoD 4 in their example doesn't imply the full truth of the matter. Just as "generalization" of a similar model in a "relevant to the times" game. There are a million and one ways to do auto-regen and every one on this forum seems to think it's going to be done the most generic way possible. It's quite unfair in the least to assume such things. These people effectively build the "anti-hype" that isn't justified but will surely stick with the masses ultimately dooming a successful launch of a beautiful new game. (Note that I mean for the core DX fan, it's quite obvious that the casual gamer won't even know what Deus Ex is.)

P.S.
Max Payne
FarCry 2
Rid****: Butcher Bay
Halo 1
Halo 2 (different health model)
Lost Planet
Ect. All have auto-life regen models that differ from one another. One could argue which is the best model to implement into DX 3... with that said, is it impossible to see an entirely new auto-regen model all together???

P.S.S.
They already said the auto health is built into the story as well -- so it's justifiable by story standards, we'll just have to wait and see how well they justify it. Patience is a virtue for a reason.

Laokin

Jerion
4th Nov 2008, 06:13
^^^^

You sir, are awesome. This post is great stuff. :thumbsup: :thumbsup: :thumbsup:

DXeXodus
4th Nov 2008, 06:39
I'm looking forward to K^2's thesis-like rebuttal. :)

K^2
4th Nov 2008, 09:03
That's a ridiculous claim. The engine doesn't limit what you can code... but how you can code it.
The "how" is a sufficient limitation.

Thief III and IW implemented shadow volumes to generate shadows. The whole algorithm is a rather brilliant use of stencils, but the important part is that it requires generation of geometry that contains shadowed regions of space. As such, checking whether player is in shadow is a simple task of checking whether player is inside of these shadow volumes. It requires virtually no overhead. The procedure itself, however, is rather CPU intensive.

The new Crystal Dynamics engine uses a different technique, called shadow mapping, which removes the load from CPU, and makes shadow generation almost strictly a GPU task. With this technique, you cannot use your shadow data directly to check whether player is in the shadow or not.

Essentially, with shadow mapping, if you want to check if something is within a shadow, you have to do all the expensive parts of the shadow volume algorithm as well. This defeats the entire purpose of using shadow maps in the first place. And since generally the shadows end up looking better with shadow volumes, the choice to use shadow maps is always that of optimization. Generally tells you that the CPU is busy with other stuff (Loading data, doing LoD checks, evaluating collisions, etc) and running shadow volume routines would slow things down.

Naturally, the above effects only the lower-end machines, where CPU or RAM-access times are the bottle necks in running the whole engine. But raising the minimum specs for the game tends to reduce sales, and with consoles might not even be possible.

Now, if Crystal Dynamics engine was to be built from the start to use shadow volumes, there are things that can be done. GPU is now doing less work, because shadow maps do take up quite a bit of GPU time. So you can cut down CPU work on graphics optimization and animations, and making the GPU pick up the slack. This might let you introduce shadow volumes with minimal overhead.

At this stage, however, between the overhead, having to do modifications on core engine, and generally extending development time, there is just no reasonable way to do shadow checks. Ergo, we don't have them, and it really isn't the E. Montreal's fault. If you are going to complain about shadow-based stealth, you should complain to the Crystal Dynamics team. Not that it would do any good at this point.

Nathan2000
4th Nov 2008, 09:40
The "how" is a sufficient limitation.

Thief III and IW implemented shadow volumes to generate shadows. The whole algorithm is a rather brilliant use of stencils, but the important part is that it requires generation of geometry that contains shadowed regions of space. As such, checking whether player is in shadow is a simple task of checking whether player is inside of these shadow volumes. It requires virtually no overhead. The procedure itself, however, is rather CPU intensive.

The new Crystal Dynamics engine uses a different technique, called shadow mapping, which removes the load from CPU, and makes shadow generation almost strictly a GPU task. With this technique, you cannot use your shadow data directly to check whether player is in the shadow or not.

Aren't you forgetting, that Unreal Engine used lightmaps too and shadows in Deus Ex 1 were made pretty well (at least in my opinion)?

I'm not sure what the situation is in Tomb Raider's engine, but in Unreal there were objects called Light on the map. They were used to generate lightmaps. Dynamic objects (like the player) could easily measure the distance from each light and calculate the visibility. This solution requires much less resources than creating those shadow volumes and while the result may not look as good, well, solution exists.

K^2
4th Nov 2008, 10:10
There is a big difference between a light map and shadow map. Former is pre-compiled, while later is computed on the fly for each frame.

And sure, you can check the distance from the light, or even use pre-compiled shadow volumes, but that isn't going to let you use dynamic shadows for cover, like you could do in Thief III. There, you could create your own shadow by moving something next to the light source. Light mapping techniques do not allow that.

spm1138
4th Nov 2008, 10:54
Dear all

Having noticed eidos' glorification of the series, branding it legendary, I feel in some ways it has isolated its own fan base.

This game has its roots on the pc, we all played the original Deus ex, and we were all blown away. We also remember opening and installing Deus ex 2, and being sorely dissapointed with its console style controls and gameplay. I have nothing against console players, but it is a much stronger market, and developers HAVE to dumb down their games to appeal to younger audiences...it must break their hearts to do this.

But, Eidos have stated that they are aware of the pitfalls of deus ex 2, so why..oh why, have they implemented "auto heal", taken out stats, and implemented a cover system. I fear this will become a Microsoft endorsed gears of war-like farce of a game.

This has turned into a bit of a rant, but eidos need to understand their fan base evolved from the PC, and as a PC player, I like stats, I like RPG elements, and I like customising characters. I am very worried about this game, and I actually remember Deus ex 2 being one of the first games noticably dumbed down for console players, but why does it have to be like this? Why not make things more intuitive, why not include more depth?

Eidos, please dont ruin this title, the massive tenticle augmentation already sounds ****, this isnt a DC comic. Why would these augmentations exist before Denton was even created? The original augmentations were more feasable, and more interesting.

What does everyone else think?

I think I'm not that attached to the stats. I think there were probably too many. I think the really fun part is trying different stuff so having an untrained stat while not totally preventing you from doing something certainly limits you. I think this is actually vaguely frustrating where gunplay is concerned. I think giving the player lots of disposable items is a particular design choice but not the only way to handle health.

I also think claiming that the choice of UT99 didn't limit the design is kerazzy talk when we have it straight from the horses mouth that certain things just were not possible with that engine. Any finished game represents at least some compromises.

The original augs for example. Fire DX up and look at the characters. It was good for it's day, but...
Tell me how likely it would have been to occur to anyone to do anything more in your face with the augs.

feralspecies
4th Nov 2008, 11:17
Thanks for your comments.

Its seems a lot of you are quite positive about different parts of the game.

I think in essence Im very old school, I like games with RPG elements, they suck you in. Stalker 2 was great, but you couldn't specialise, you could only mod up your guns, which is similar to Deus Ex 3 so I hear. I feel this takes away any personality from a game, and instead of being able to specialise, it opens up EVERYTHING to the player. Now, this may seems a good idea because if you get bored of sniping, your able to change to sub-machine gun etc, but it also makes, in my opinion, the game easier.

For those who played Far Cry 2 on PC, I find it very easy, the only hard bits is travelling to different locations. But a lot of the missions can be completed with a sniper rifle and Rocket Launcher combo. Far cry 2 is a good first person shooter, but it lacks ANY personal involvement, you find out nothing about your character, if he is in no way customisable.

I also fear that Eidos will implement silly "Find X things in the game to unlock special achievments" which often appeals to Console players. In a game, you should be able to reach ANYTHING via internal gameplay, your decisions, and actions, not by scouring remote places for achievment items.

Put it this way, every successful game recently has had its routes on pc, we dont want a casual romp through hundreds of enemies without any real motivation to explore the story.

Eidos, go back to basics, explore what made deus ex a complete hit, and build on those ethics. Dont fix what isnt broken, you tried that with Invisible war, and it failed.

feralspecies
4th Nov 2008, 11:19
and as for stats, not only do they allow you to immerse yourself in your character. It also gives you a lot of replay value! Imagine multi-player where every player has a unique character!

JakePeriphery
4th Nov 2008, 12:46
and as for stats, not only do they allow you to immerse yourself in your character. It also gives you a lot of replay value! Imagine multi-player where every player has a unique character!

Well here's where I disagree with you, while I enjoy multi-player games - stat-based ones tend to not matter often because everyone playing wants to have the easiest most powerful character build and it ends up being the same.

Absentia
4th Nov 2008, 14:57
Well here's where I disagree with you, while I enjoy multi-player games - stat-based ones tend to not matter often because everyone playing wants to have the easiest most powerful character build and it ends up being the same.

Agreed. You only have to play one or two games of Neverwinter Nights online to see this in play

LeatherJacket
4th Nov 2008, 15:32
Thief III and IW implemented shadow volumes to generate shadows. The whole algorithm is a rather brilliant use of stencils, but the important part is that it requires generation of geometry that contains shadowed regions of space. As such, checking whether player is in shadow is a simple task of checking whether player is inside of these shadow volumes. It requires virtually no overhead. The procedure itself, however, is rather CPU intensive.


How exactly is player-in-shadow-volume test a cheap operation? If you need accurate results for such a test you need to check collision of the skinned player model against each shadow volume. You can do some quick early rejects, use lower LOD figures etc but it doesn't really sound practical. I wonder why someone would go through so much trouble to implement a perfect test for visibility in case of dynamic shadows.

If its an approximate test the shadow volume used for test itself could be approximate, in which case there is no special advantage of shadow volumes for visibility checks.

I think Splinter Cell uses shadow buffers / maps. Does it not support dynamic shadow based stealth?

I think its possible to support dynamic visibility checks in case of shadow maps without too much overhead using something like occlusion query as I mentioned in another thread or simplified shadow volumes used for visibility checks.

Yargo
4th Nov 2008, 17:04
Dear all

Having noticed eidos' glorification of the series, branding it legendary, I feel in some ways it has isolated its own fan base.

This game has its roots on the pc, we all played the original Deus ex, and we were all blown away. We also remember opening and installing Deus ex 2, and being sorely dissapointed with its console style controls and gameplay. I have nothing against console players, but it is a much stronger market, and developers HAVE to dumb down their games to appeal to younger audiences...it must break their hearts to do this....What does everyone else think?

I think that first, the story line needs to be fantastic. The story is what gets me when it comes to games.

Stylized gameplay (like play to your style) is the next part. I would like to play the game several times through, several different ways. This can be done many different ways. To cite a few possibilities you can have classes a la Kotor, Mass Effect, etc. You can also have the magic point-based upgrade system like DX. I prefer the former, but thats all opinion.

Personally music is not important to me. I wouldn't mind just sound fx.

As long as they are decent, I could care less about whether the graphics are the top.


Anyways... the point I'm getting at is there are many ways to make a legendary game like Deus Ex and as Deus Ex 3 long as it uses a GREAT storyline and is re-playable, it will be legendary in my book.

-|°
4th Nov 2008, 17:56
But, Eidos have stated that they are aware of the pitfalls of deus ex 2, so why..oh why, have they implemented "auto heal", taken out stats, and implemented a cover system. I fear this will become a Microsoft endorsed gears of war-like farce of a game.
Well, I don't really see what's wrong with the stealth system. In DX, I don't remember that it was that useful. Really, where could-we actually use it ? In a few outdoors environments like Liberty Island, Hell's Kitchen, the gas station... and that's about it.
About the tentacle aug, I can't see why it should make Adam a badass killing machine. When I read bungie-jumping, I actually thought of infiltrating a lower floor of a buiding from above, and get there by a window, which seems less obvious than getting there by the elevator (which should be under surveillance, unlike the one leading to Versalife secrets labs :D ) or the stairs. Or, in the worse case, to jump onto an ennemy head to kill him ^^
And I don't think it's more unrealistic than the regeneration regrowing legs :whistle:
But I'd also really like to know how the 'infinite power of nanoaugmentations" can match that.

Anyway, so far it doesn't seem bad. Those "issues" are minor, as long as the core of the gameplay (choices, a bit of strategy/reflexion, different ways to do something exploration) is kept, balanced, and coupled with a good storyline, background and ambiance.

I'm more afraid about wether mouse and keyboard will be suported by the console versions, and how much it will be "dumbed down" when it's gonna be ported (can't really expect my PC to run a recent game^^).

spm1138
4th Nov 2008, 18:53
How exactly is player-in-shadow-volume test a cheap operation? If you need accurate results for such a test you need to check collision of the skinned player model against each shadow volume. You can do some quick early rejects, use lower LOD figures etc but it doesn't really sound practical. I wonder why someone would go through so much trouble to implement a perfect test for visibility in case of dynamic shadows.

If its an approximate test the shadow volume used for test itself could be approximate, in which case there is no special advantage of shadow volumes for visibility checks.

I think Splinter Cell uses shadow buffers / maps. Does it not support dynamic shadow based stealth?

I think its possible to support dynamic visibility checks in case of shadow maps without too much overhead using something like occlusion query as I mentioned in another thread or simplified shadow volumes used for visibility checks.

SC does support dynamic shadow based stealth I think.

K^2
4th Nov 2008, 18:55
How exactly is player-in-shadow-volume test a cheap operation? If you need accurate results for such a test you need to check collision of the skinned player model against each shadow volume. You can do some quick early rejects, use lower LOD figures etc but it doesn't really sound practical. I wonder why someone would go through so much trouble to implement a perfect test for visibility in case of dynamic shadows.

If its an approximate test the shadow volume used for test itself could be approximate, in which case there is no special advantage of shadow volumes for visibility checks.

I think Splinter Cell uses shadow buffers / maps. Does it not support dynamic shadow based stealth?

I think its possible to support dynamic visibility checks in case of shadow maps without too much overhead using something like occlusion query as I mentioned in another thread or simplified shadow volumes used for visibility checks.
You are forgetting that Thief III is already using a system where every single character, including player, already colliding with every single piece of physical geometry on the map. Shadow volumes tend to be low polygon count, so it is a small overhead in comparison. Besides, there is no real reason to do full collision. Generally, checking a single point, one from which view is rendered, will give you sufficiently good results. And check for a point within volume is a lot less expensive than a collision chec of any kind. Don't forget, also, that you can use every single optimization that you already do for rendering shadow volumes, such as checks for distances to the lights, etc. These are already performed anyways, and you lose nothing.

Problem with approximating shadows is that for objects near light source, a small deviation will make huge differences. You can have entire rooms that are marked as lit, while appear shadowed, or other way around. That can cause a lot of trouble for the player. Using single point to test for being in the shadow doesn't create nearly as much difference.

The only thing that is left, really, is running line of sight checks. However, these are usually done against physics geometry, to reduce number of intersection tests (which is very similar to collision test). That can create the same problems as approximating the shadow volumes from lower polygon count objects.

What it really comes down to is that if you use a method that is drastically different to create shadows and to check shadows, in situations where player uses the visual output to determine how good the shadow is, you'll run into serious discrepancies that will make the use of shadows unpredictable.

Edit: I don't know how Splinter Cell works. Haven't played it. Looked at a few screenshots, and yes, it is shadow mapped. But does it use dynamic shadows for stealth? If you move a box in front of a light source, can you hid in the shadow produced? There are simple ways to check for being inside a shadow from a static shadow, like one generated on a light map. Thief I and II did just that, after all. These can easily respond to lights being turned on/off, but not to lights that can be moved or obscured by other objects. So the way to check SC would be to place an object, preferably something like a chair, with drastically different graphics and physics meshes, right next to the sole light source in a room, and see what that does for you.

spm1138
4th Nov 2008, 21:00
Edit: I don't know how Splinter Cell works. Haven't played it. Looked at a few screenshots, and yes, it is shadow mapped. But does it use dynamic shadows for stealth? If you move a box in front of a light source, can you hid in the shadow produced? There are simple ways to check for being inside a shadow from a static shadow, like one generated on a light map. Thief I and II did just that, after all. These can easily respond to lights being turned on/off, but not to lights that can be moved or obscured by other objects. So the way to check SC would be to place an object, preferably something like a chair, with drastically different graphics and physics meshes, right next to the sole light source in a room, and see what that does for you.

I'm not 100% that they did but certainly as of SC2 and 3 you could change stuff in the world to cast different shadows which resulted in different patterns of light and dark.

In some places there's moving lights.

I suppose they could have kludged it because I'm not 100% that the stealth worked the same with the visual light.

Laokin
4th Nov 2008, 21:29
The "how" is a sufficient limitation.

Thief III and IW implemented shadow volumes to generate shadows. The whole algorithm is a rather brilliant use of stencils, but the important part is that it requires generation of geometry that contains shadowed regions of space. As such, checking whether player is in shadow is a simple task of checking whether player is inside of these shadow volumes. It requires virtually no overhead. The procedure itself, however, is rather CPU intensive.

The new Crystal Dynamics engine uses a different technique, called shadow mapping, which removes the load from CPU, and makes shadow generation almost strictly a GPU task. With this technique, you cannot use your shadow data directly to check whether player is in the shadow or not.

Essentially, with shadow mapping, if you want to check if something is within a shadow, you have to do all the expensive parts of the shadow volume algorithm as well. This defeats the entire purpose of using shadow maps in the first place. And since generally the shadows end up looking better with shadow volumes, the choice to use shadow maps is always that of optimization. Generally tells you that the CPU is busy with other stuff (Loading data, doing LoD checks, evaluating collisions, etc) and running shadow volume routines would slow things down.

Naturally, the above effects only the lower-end machines, where CPU or RAM-access times are the bottle necks in running the whole engine. But raising the minimum specs for the game tends to reduce sales, and with consoles might not even be possible.

Now, if Crystal Dynamics engine was to be built from the start to use shadow volumes, there are things that can be done. GPU is now doing less work, because shadow maps do take up quite a bit of GPU time. So you can cut down CPU work on graphics optimization and animations, and making the GPU pick up the slack. This might let you introduce shadow volumes with minimal overhead.

At this stage, however, between the overhead, having to do modifications on core engine, and generally extending development time, there is just no reasonable way to do shadow checks. Ergo, we don't have them, and it really isn't the E. Montreal's fault. If you are going to complain about shadow-based stealth, you should complain to the Crystal Dynamics team. Not that it would do any good at this point.


Deus Ex wasn't Thief -- first and foremost. It's also very apparent I don't have experience with that series as I have been miss quoted wrong and flamed on something I said I was unsure of to begin with. So we'll stay away from Thief in my answer.

Your being closed minded and producing an overly complicated model for shadow hiding. Just like in Gears of War or any other game (DX 3 and TRU included) with CONTEXT sensitive actions, you have context zones. Example, they want you to be able to take cover from a certain distance... not just right next to the wall (that would be unpractical) so you already know that there is a way to assign a certain area to a certain property. In other words, all it takes to do "hiding" in shadows, is to take these context sensitive zones and apply a rule set that makes the A.I. ignore you when your in this zone. There doesn't even have to be shadows present, and I'm pretty sure your wrong on how they did it in the past, as that's way to complicated to achieve the exact same result. Once they have said "invisible" zone mapped to a specific coordinates of a map, all they have to do is light it correctly. They then can have different states of invisibility. Say in the center of the zone is perfectly invisible, then you make the center of that zone have a darker shadow. The further you move away from the center of the designated zone the more "visible" you become. This can then be handled by a simple system that just limits the range the A.I. can see you at. In other words, draw a small circle and surround it by bigger circles, everytime you cross the threshold of a bigger circle the range in which the A.I. can detect you is also increased. Then all the mappers have to do is match the shadow with the invisible marker. Virtually resource free and you could actually code this with the simple If/Or function of c++. This result is exactly the same as your result with a few exceptions. It would essentially be resource free... as it would be about as cpu intensive as the windows calculator + it would be MUCH faster to code, and way easier to make sure your just as invisible as intended. Less glitches because there is less code. What you essentially said was to make shadows real, and some how, make an extremely complex algorithm to determine if the shadow really covers your entire body + the density of said shadow. There are numerous problems you would find with this model. A.) sometimes you'd be in a shadow and still get seen like in DXIW. It just simply wouldn't be reliable because you would have to absolutely make sure the artist laying out the graphics for your shadow covers you completely as intended by the design team. Plus with perpixel lighting, you enter the realm of mesh glitches, your light detection would have to be SO advanced it would eat up WAY more cpu cycles then you could ever imagine thus making the game tank on anything but the most recent hardware.


Sometimes you have to take a step back and approach the same problem from a different angle. It's not about how you solve the problem, just as long as the answer is the same. My answer is the same as yours with practically amateur programming functions. My solution is proven to be better than yours. It would be extremely hard for me to believe any developer would over think such a simple task to the degree you have... but maybe this is because you don't have experience coding for video games, rather... coding at all.

(Sorry, I'm not saying I know if you do or not... I'm taking a guess... and if you do program, maybe you should try to find a more simple solution in the future.)

Programming is about thinking out side the box. It's more like movie magic, it differs from every person, but as long as the desirable effect is reached... the more cost effective/performance effective way will always be superior.

In other words, 99.99% of gaming program code isn't real. Like, hiding in shadows.... or portals. It's just an illusion, something else is going on that makes it looks like said effect feels real. All program code is based on logic, and there is no computer in the world... or programmer for that matter that has programmed REAL physical logic. It's all an illusion but as long as it works as directed who really cares?

P.S.
The TRU engine fully supports context sensitive actions. So the simple answer to this whole paragraph is to determine the hiding spots with a context sensitive action. If you can hide behind a wall.... you can hide behind an invisible wall. All they have to do is assign the same property of invisibility to a different context sensitive spot. It's well within the "How" of the TRU engine, in fact... the "How" is actually a vastly improved system as opposed to Thief/DX.

P.S.S.
How do you know everything about the TRU engine.... I mean, I know the context sensitive actions are there... and I fundamentally know how they work. If you played the demo... you would be well aware that context sensitive actions actually exist. You can make shadow hiding without hiding in shadows.... you just simulate it by means of context sensitive actions... which ARE in the TRU engine.

I keep trying to find a way for non-technological people to understand, but it just seems out of reach without a pad and pen. I can make a Jpeg that completely illustrates my model, but I'll only do that if some one asks.


P.S.S.S. (lol I know)

There is NO SUCH THING as a "Tech Limit" with an engine, as new things can always be added to an engine. When they say tech limited they mean they don't wanna waste the time adding a function to a game engine... they are going to use the game engine they chose and not add on to it.

This IS NOT THE CASE WITH DX3.

They said they would use the TRU engine and infact ENHANCE it.... which means ADD completely new Tech to the engine and expand the "out of the box" limitations of the engine and then pass it around the Eidos Dev Teams. Essentially Eidos is trying to make an engine that can do EVERYTHING. This is in other words an exclusive engine to Eidos, as it's the only engine they plan on using in the long term. This information is readily available at your clicking finger tips over at the "Engine" thread. So if there is an Idea they want to do with DX that isn't supported by the TRU engine... they are infact going to build on top of the TRU engine. When it comes to program code, there is NOTHING you can't add to any engine.

Quake 1 Engine now supports bump maps normal maps paralax mapping dynamic lights.... all stuff that was "tech limited" in that engine.(<-- google tenebrae and look at some screens for proof.) Since it went open source people have added these functions to that engine. In fact, the quake 4 engine... is the doom 3 engine, which is the quake 3 engine, which is the quake 2 engine ----> split to create the Half-Life Engine, which BECAME the Source engine, which are ultimately the SAME EXACT ENGINE from quake 1. The only thing that differs in all these iterations are the features the respective developers added to the original engine. Source vs ID Tech 5 = the same engine, with 2 different renderers made by different people, but the core code of the engine is the same. Carmack would like to say that the Doom 3 Engine was built from the ground up, but you know that is a lie, because if you alt-tabbed the alpha for doom 3, it said Q3A in the system tray. You can also tell by the external console... it's exactly the same, and in the final release of Doom 3... the external console actually still said Quake 3. In other words, iD made a mod with quake 3, and added in fancy new graphics features and decided to call it something "New" so new developers would license an "updated" engine. It's really all politics. Anybody who disbelieves me grab the SDK, and the Open Source version of the Q3A engine and compare them your selves. (this is also why we still have strafe jumping in quake 4, because it is in fact a movement glitch from the principal code of quake 1, and evolved as they tried to eliminate it. Originally it was "bunny hopping" which you will notice is even present till this day in the source engine (bunny hopping started in quake 1 and carried into quake 2 and then was tried to be eliminated but spawned circle strafe jumping, a much more difficult version of bunny hopping... which is still present in quake 4, with the new addition of slide turning.)

K^2
4th Nov 2008, 21:50
Your being closed minded and producing an overly complicated model for shadow hiding. Just like in Gears of War or any other game (DX 3 and TRU included) with CONTEXT sensitive actions, you have context zones. Example, they want you to be able to take cover from a certain distance... not just right next to the wall (that would be unpractical) so you already know that there is a way to assign a certain area to a certain property.
This is a static area. There is no problem asigning static areas to be shaded. That's what light mapping has been doing since Quake, for crying out loud. We aren't talking about that. We are talking about dynamically allocating these areas as various objects move in front of the light source.

Look, I've been a programmer for nearly a decade and a half. I have written game engines, scientific software, and right now work on some educational tools. What I am saying comes from very extensive experience with game engines and code in general. Every single technique I've mentioned here, I have personally coded from scratch. Most simply as tech demos, but some of them in full engines.

You are also mistaken on programming real physics. Since my primary education is in that field, I feel obliged to point this out. I have personally written numerous quantum field simulations. Yes, we can only do "real" physics on very small scales, but we do work with these things.

What you fail to understand is a very simple fact. You have no way of knowing in advance which object and at which angle will obscure a light source in a dynamic shadowing model. There is no trick to get around that. Therefore, one way or another, you have to check the line of sight between character and the light source. There is no other way. You can do so directly, and waste a lot of resources, or you can use one of many tricks. Shadow volumes work by far the best to check whether an object is obscured by a dynamic shadow or not and to get the shadows rendered at the same time with a guarantee that shadow checks will be consistent with the rendered shadows. Running both shadow volumes and shadow maps is an incredible waste of resources. Even if you find ways to optimize, you are still wasting way more resources than you would if you did your shadows with shadow volumes instead. So if you chose to use shadow maps, you aren't going to be doing dynamic shadow checks. That is all there is to it.

And yes, you can still run static shadow checks. There is no issue with having a light map for static light sources pre-compiled along with the level. As I said, rather old games have done so. I can think of some that are 15 years old. The problem is that you still run into inconsistencies. You can place an object in front of a light, get a shadow, and as a human being, assume you can hide in it. When in reality, that object does not alter the light map, and the AI doesn't give rat's behind over the little shadow you created for yourself. That is an inconsistency between what player expects and how the game engine works. Such inconsistencies are the biggest problem of a game engine. If you see something that appears to work a certain way, it should work that way. Because trust me, players aren't going to acknowledge a technical limitation as a good reason for it to work otherwise, especially, when there are already games out there that work with shadows the way you'd expect shadows in real world to work.

Laokin
4th Nov 2008, 22:02
What your missing then is in essence you can have dynamic lighting with static hiding spots that produce a dynamic feel by cheating the system. This is ALWAYS done with game engines.

And forgive me sir, but name one game engine you built and cite proof that you actually built it. Just because you have dynamic light doesn't mean you have to base the "hiding in shadows" dynamically. This can very well be static... and is the best way to do it performance wise. If you did it dynamically you would need to code a real life eye simulation into the A.I. which in essence could never be done. You first must realize that hiding in shadows is physically impossible... but hiding with the aid of a shadow is very very real. Then you would have to solve the problem of A.I. actually being able to see colours, and then making it so when colours are blended at (AE)=4 the eye wouldn't see it. We are about 5 generations from that technology, so doing it the old way is still the only way to do it. The eye is only able to differentiate colours at a difference greater than (AE)=4, even then it's impossible to tell who's eye's can see what, thus making your point a little redundant to say the least.
Also note... it's not A... it's a triangle, I on the other hand don't have the ability here to write such a character.

If you disbelieve me see the revlon website that shows the shades of colour for their lipstick on this scale.
If your wondering why I know revlon does this, see http://www.thebestpageintheuniverse.net/c.cgi?u=fashion

P.S.
When you design a map in a dynamically lit game engine... you do how ever plan the angles of which there is shadows casted. The fact is, unless you do a 24/h clock with a moving sun, this point is irrelevant, as the only light that is actually dynamic is light casted by light bulbs. In which the only way you arrive at the anomaly you mentioned is if you have a drop light that can swing. Although, this situation is physically impossible to hide in from the naked eye, as the pupil will dynamically adjust, ala HDR... and you would become very very very visible.

You are just looking at your problem in 1 dimension.

P.S.
Name 1 game in which a dynamic shadow can be casted by a move-able object that you can hide in? Because that's your anomoly.

Say your running behind a slow moving vehicle with a light source on the other side, hiding in the wake of it's shadow is not only unbelievable but unfeasible as well. I don't know of one person that would assume every shadow was hid in able.... That's preposterously un-realistic.

In other words, Dynamic light isn't really what you would hide in anyway. Nobody would hide in a shadow that might not exist in a second. The shadows you would hide in would infact be static... even with dynamic light, because the shadows being casted presumably aren't going to move. These would be a case of dynamic light producing static shadows even if the shadow it self is being created procedurally, because the objects that cast shadows are in essence static. You aren't going to be able to destroy a building... so the shadow created by a building would then be assigned as a static hiding spot... as that shadow even if it's dynamically created isn't going anywhere... thus making it's location static. You would just have to build your maps accordingly.

/End of argument.... I AM right, not a matter of opinion.

GmanPro
4th Nov 2008, 22:11
How did Thief do it's shadow based stealth? I remember the light gem that you had on your HUD which you needed to keep an eye on. IMO that was very well done, especially in the first two games. Deadly shadows was just too easy when all you had to do was lean into the wall and you become completely invisible. Deus Ex 1 did stealth just fine tho. I hardly ever really hid in the shadows, I just tried to stay out of people's line of sight but that's just me...

K^2
4th Nov 2008, 22:39
Laokin, it isn't about moving lights. It is about moving objects. If you put a chair in front of a light, it creates a shadow that wasn't there before. Light mapping techniques do not account for that. Shadow volumes do. This has been done in numerous games.

And we don't need to simulate the eye's response to it. It is sufficient to reduce detection range and probability if an object is shadowed. That's how it works in every single game out there that uses shadows. That's what people expect from the engine.


Name 1 game in which a dynamic shadow can be casted by a move-able object that you can hide in? Because that's your anomoly.
Thief III and Deus Ex: Invisible War. They ran on the same engine and used shadow volumes. You could easily hide in a shadow created by an object your placed. I'm positive I've seen it in other games, but I can't think of more examples just now. But since you asked for just one example, I figured two should be enough, no?


How did Thief do it's shadow based stealth?
Static shadows using light maps. You could turn shadows on and off, so to speak, by lighting and extinguishing lights, but you could not create a "new" shadow by placing objects in front of lights. Nor could you move the lights that produced shadows. Movable light sources (fires) did not produce shadows.

Laokin
4th Nov 2008, 22:57
Laokin, it isn't about moving lights. It is about moving objects. If you put a chair in front of a light, it creates a shadow that wasn't there before. Light mapping techniques do not account for that. Shadow volumes do. This has been done in numerous games.

And we don't need to simulate the eye's response to it. It is sufficient to reduce detection range and probability if an object is shadowed. That's how it works in every single game out there that uses shadows. That's what people expect from the engine.


Thief III and Deus Ex: Invisible War. They ran on the same engine and used shadow volumes. You could easily hide in a shadow created by an object your placed. I'm positive I've seen it in other games, but I can't think of more examples just now. But since you asked for just one example, I figured two should be enough, no?


Static shadows using light maps. You could turn shadows on and off, so to speak, by lighting and extinguishing lights, but you could not create a "new" shadow by placing objects in front of lights. Nor could you move the lights that produced shadows. Movable light sources (fires) did not produce shadows.

Hiding in a shadow of a placed chair just WOULD NOT WORK in real life. The light source would have to be SUPER powerful and EXTREMELY far away in order for the light not to bleed into your shadow. This has been busted on myth busters. In that case, the only shadows worth hiding in are massive shadows which wouldn't work in doors. Then your talking about cutting the lights off... in which you don't have any problems using static shadows. Your point is moot, I said in order to do it properly like you said, to achieve real stealth... in a physical world (note my comment about fake physics) you would have to really physically produce programming code that functioned for EVERY single eye for enemy A.I.

Throwing a box down with super strength then hiding in the shadow of the box is absurd... since in essence your officially hiding behind the box.... and not really in the shadow. As long as they incorporated both kinds of stealth this would be a non issue.

P.S.
Moving objects and then hiding behind them wouldn't work in Real Life. You move a box or a chair, the patrolling guard is going to notice and immediately spot you there after. So once again, why is this even an issue? Static Hiding spots make more sense then dynamic hiding spots, as they aren't very real, nor would they translate well into a gameplay environment. Plus it's not like it would be even noticeable by the player if done properly anyhow. This alone basically means I was correct from jump street.

I don't mean any disrespect, I hope there are no hard feelings as I agree with you more often then not -- but, it really isn't limited by tech, if that's how you wanna justify it's absence though.... that's all you.

I'll also give you your two examples, but also note that those situations you almost always get caught. Plus, isn't it the popular concensus that the hiding in DX:IW was bugged beyond belief for the exact same reasons I mentioned above. People say it's hit and miss with the stealth, and shadows seem almost useless. I explained why such glitches happen and how when done staticly they are virtually perfect and nearly 100% reliable. This is why stealth in DX was far superior to Invisible War. And you would like them to make that mistake again? Either way, kudos for the intelligent conversation. That's always a plus in my book.

Nathan2000
5th Nov 2008, 00:12
Laokin, it isn't about moving lights. It is about moving objects. If you put a chair in front of a light, it creates a shadow that wasn't there before. Light mapping techniques do not account for that. Shadow volumes do. This has been done in numerous games.

In the first post in this topic, you said that there can be no "hiding in shadows" system with an engine based on shadow maps. You were wrong - Deus Ex and Thief prove it.

Now you're talking about dynamic lights which are not a requirement in a stealth game - again Thief. They are not coded to the Tomb Raider engine (AFAIK) but they can be (just like in DXIW). So say again what those technical limitations are.

LeatherJacket
5th Nov 2008, 01:24
To everyone other than K^2,
Lightmaps is the one of the oldest methods to support nice quiality static lighting where light from static light sources is bounced around a static scene. This gives you nice indirect lighting effects where diffuse surfaces can also act as light sources. Shadow maps are one way to produce dynamic shadows where either the object or the light source or both can move.

And Deus Ex 1 didn't use shadow maps, it used lightmaps for static objects and shadow blobs directly under the model. Yeah the terminology is confusing :D

Loakin, no game tries to determine exact visibility based on optical models :D. They just need some consistent model. And there is no point of pre-determined hiding zones either in case of dynamic shadows. That would be terrible. Also remember that these shadow based stealth deal with direct lighting only for dynamic lights. So toss out any fancy light bleeding for dynamic lights for the purpose of visibility checking!

K^2,
No, I didn't forget coldet with the world :D. The level itself is largely static and I think the model use for dynamic objects is not more sophisticated than simply using a custom AABB for each model (or part of a model).

My point was accurate shadow volume based visibility is expensive order O(player_tricount*shadow_volume_tricount) for each potential shadow volume that can intersect and both geometries are dynamic hence making use of acceleration structures difficult. Further there are situations where a player may be visible in light from one direction, but not from another direction. So, I would lean towards the implementation choice that even in a game engine using shadow volumes, the visibility check will be simplified and not fully accurate. They could simply use the shadow volumes of the AABBs for visibility checks :D

Once we throw out the accurate visibility check, there is no advantage to sticking to shadow volumes for visibility checks. I think the inconsistencies are mostly hidden since you are playing from a first person pov. We don't know the cause and effect relationship between the decisions made for DX3 - using 3rd person for sneaking and removing shadow based stealth although its tempting to make a guess :D (e.g. in 3rd person the player will see its inaccurate anyways hence we need to either include a light-meter -OH_NOES- or remove shadow based stealth altogether.)

Laokin
5th Nov 2008, 02:05
To everyone other than K^2,
Lightmaps is the one of the oldest methods to support nice quiality static lighting where light from static light sources is bounced around a static scene. This gives you nice indirect lighting effects where diffuse surfaces can also act as light sources. Shadow maps are one way to produce dynamic shadows where either the object or the light source or both can move.

And Deus Ex 1 didn't use shadow maps, it used lightmaps for static objects and shadow blobs directly under the model. Yeah the terminology is confusing :D

Loakin, no game tries to determine exact visibility based on optical models :D. They just need some consistent model. And there is no point of pre-determined hiding zones either in case of dynamic shadows. That would be terrible. Also remember that these shadow based stealth deal with direct lighting only for dynamic lights. So toss out any fancy light bleeding for dynamic lights for the purpose of visibility checking!

K^2,
No, I didn't forget coldet with the world :D. The level itself is largely static and I think the model use for dynamic objects is not more sophisticated than simply using a custom AABB for each model (or part of a model).

My point was accurate shadow volume based visibility is expensive order O(player_tricount*shadow_volume_tricount) for each potential shadow volume that can intersect and both geometries are dynamic hence making use of acceleration structures difficult. Further there are situations where a player may be visible in light from one direction, but not from another direction. So, I would lean towards the implementation choice that even in a game engine using shadow volumes, the visibility check will be simplified and not fully accurate. They could simply use the shadow volumes of the AABBs for visibility checks :D

Once we throw out the accurate visibility check, there is no advantage to sticking to shadow volumes for visibility checks. I think the inconsistencies are mostly hidden since you are playing from a first person pov. We don't know the cause and effect relationship between the decisions made for DX3 - using 3rd person for sneaking and removing shadow based stealth although its tempting to make a guess :D (e.g. in 3rd person the player will see its inaccurate anyways hence we need to either include a light-meter -OH_NOES- or remove shadow based stealth altogether.)

Jesus H Christ you people here are mildly ridiculous. Light maps/shadow maps have nothing to do with the argument I presented. You can have a static hiding system in a dynamically lit game. You just use the shadows that you know ARE not going to move and assign them invisible. Like I said earlier with different degree's of invisibility that increase range of detection based on the threshold of the designated shadow you are in. K2 argued this wouldn't work by saying you wouldn't be able to hide in shadows of move able objects. Move able objects wouldn't provide satisfactory shadow requirements for being hidden in the first place thus allowing them to not work anyway.

What is so hard about this.... Unless you want to unrealistically hide in ALL shadows, then dynamic lighting is not a sufficient excuse to say a static system wouldn't work.

Period.

This argument isn't over what game uses light maps... what game uses shadow maps, it's not about the lighting.... it's about the effective programming skills to achieve the same result. Lets be nit picky.... it'll all work out in the end.

P.S.
Physics tells you that if your in light.... it's visible from all sides/angles unless your vision is blocked by an object. So once again angles aren't relevant. Say there is a light behind you, your back would be lit up.... but your body would stop the light... so you'd be seen any how. Lets not forget you too would cast a shadow.... and lets also not neglect the silhouette you leave from the front. ***wow.... maybe you should be a little more perceptive about things.***

GmanPro
5th Nov 2008, 02:09
Static shadows using light maps. You could turn shadows on and off, so to speak, by lighting and extinguishing lights, but you could not create a "new" shadow by placing objects in front of lights. Nor could you move the lights that produced shadows. Movable light sources (fires) did not produce shadows.

True I guess, tho I remember being able to hide behind crates and boxes that I moved and stacked, but that's cover and I'm pretty sure those objects didn't actually cast any shadows.

I do remember in Thief 3, some of the guards would carry torches and candles that affected shadows dynamically. But classic thief didn't have anything like that... Good game, good times.

K^2
5th Nov 2008, 02:22
In the first post in this topic, you said that there can be no "hiding in shadows" system with an engine based on shadow maps. You were wrong - Deus Ex and Thief prove it.
Wrong. As LeatherJacket also points out, Deus Ex and Thief do not use shadow maps. They use light maps. Very different techniques.

LeatherJacket:
Physics collisions are of the same order as shadow collisions. Reason for that is that you can easily use physics polygons of the player to check for shadow collision, and the shadow volumes themselves tend to be of roughly the same poly count as physics geometry. Since other characters go through same collision scheme, very worst case, you throw in an extra character-world-collision-equivalent per light source. Typically, that will not be critical, though, I agree, it would strain the system somewhat.

But this is where I go back to your own reasoning on first person view. There is no reason to collide entire model with shadow volumes. Just take the point where the first person camera is fixed. Single point check is of the order O(shadow poly count), which really isn't so bad. Besides, inclusion algorithm is simpler than intersection algorithm in the first place.

And yes, I agree that this ignores a whole lot of nuances, but the main thing is that this kind of "optics" just feels right. It worked for Thief games for many years, because shadow=hiding spot feels very natural in a game world. (And sure, light gem helps.) Probably, it is because most people have never actually tried hiding in shadows, but again, in this case, I'd go with how people expect it to work rather than real physics of it.

Laokin:
I don't argue that static shadow stealth doesn't work. We know it does. Problem appears when you mix dynamic shadowing with static shadow stealth. How does the player tell which shadows are good for hiding and which are bad? If you have a good solution for that, it'd be perfectly fine as a way to do quality shadow-based stealth.

Game should work in a way where either all equally dark shadows are equally good or equally bad for hiding. Static shadow check is not consistent with that. Now, if you could find a way to produce the shadows that have different depths depending on how they are formed... But we can't do that with either of dynamic shadowing techniques.

And from perspective of optics, your point on the real shadows from real objects not being hard enough is perfectly valid. Problem is, it is computationally impossible to do proper shadowing dynamically, because all of your problems arise from two sources: 1) Distributed light sources (rather than point sources assumed in game engines) and 2) the environmental lighting. It is computationally impossible, with modern hardware and level sizes, to do environmental lighting dynamically. You can do static environmental lighting, and it would be an improvement, but then rather than checking whether you are within shade, what you need to be checking is how well the character is lit, and that, again, is ridiculously expensive.

Now, on a scale of a tech demo, you can account for all of the above using FFTs for convolutions, but this will bring down the poly count to level of Doom.

Alternatively, and I think it can work pretty well, you can render the world from perspective of AI character in HDR and with indexing enabled. Index player polygons as 1 and everything else as 0. Then run a contrast check over all pixels with index 1. The resolution of the render can be fairly low, and it doesn't need to be done on each frame for each AI character. This way the overhead is reasonable (though, it is still quite an overhead) and the AI will know exactly how "visible" you are to each AI character.

Of course, the above is still a heck of an overhead. On the plus side it can run with shadow maps and any other lighting techniques you might come up with.

LeatherJacket
5th Nov 2008, 03:06
You just use the shadows that you know ARE not going to move and assign them invisible. Like I said earlier with different degree's of invisibility that increase range of detection based on the threshold of the designated shadow you are in. K2 argued this wouldn't work by saying you wouldn't be able to hide in shadows of move able objects.

While what you said here is definitely correct. However to the best of my knowledge DX2 allowed you to hide in proper dynamic shadows which is really great in terms of the amount of freedom it gives you.



What is so hard about this.... Unless you want to unrealistically hide in ALL shadows, then dynamic lighting is not a sufficient excuse to say a static system wouldn't work.


Yes, gamers want unrealistic stuff in games because real life is too boring :P. Its very silly to propose that somehow its unrealistic to hide in ALL shadows as if hiding in static shadows but not dynamic shadows is not unrealistic. Anyway there is no such thing as finding a static zone in a dynamic shadow. Moving a box around a light source in a circle will give you enough sets of non-intersecting shadows so there is no "static zone". A modern game supporting stealth by hiding in shadows is expected to support hiding in dynamic shadows and static ones. Which is why we are discussing which shadow system is being used and how difficult it will be to check visibility.



Physics tells you that if your in light.... it's visible from all sides/angles unless your vision is blocked by an object. So once again angles aren't relevant.

Don't put physics in there :D Because then you need to think about the kind of surface that is reflecting light. If its mirror like, then light follows the angle of reflection = angle of incidence rule, and can't be seen from all angles hence is viewer position dependent. Diffuse surfaces on the other hand behave like you describe-viewer position independent. Realtime graphics uses simplified models and only diffuse lighting is used for the purpose of visibility. Further, these games which use shadow based visibilty will also implement some sort of line of sight based visibility for the AI which is why I said angles could be relavant. But properly determining if the player is visible using these two information might be difficult. Finally, I don't think anyone implemented things like AI noticing the shadows you cast. It might be prove to be too difficult gameplay wise.

LeatherJacket
5th Nov 2008, 03:30
Physics collisions are of the same order as shadow collisions. Reason for that is that you can easily use physics polygons of the player to check for shadow collision, and the shadow volumes themselves tend to be of roughly the same poly count as physics geometry. Since other characters go through same collision scheme, very worst case, you throw in an extra character-world-collision-equivalent per light source. Typically, that will not be critical, though, I agree, it would strain the system somewhat.


Are you suggesting geometry more complex than a few AABBs by physics geometry? If not you can use it in case of shadow maps too since the shadow volume will have very little polygons!




Alternatively, and I think it can work pretty well, you can render the world from perspective of AI character in HDR and with indexing enabled. Index player polygons as 1 and everything else as 0. Then run a contrast check over all pixels with index 1. The resolution of the render can be fairly low, and it doesn't need to be done on each frame for each AI character. This way the overhead is reasonable (though, it is still quite an overhead) and the AI will know exactly how "visible" you are to each AI character.

Of course, the above is still a heck of an overhead. On the plus side it can run with shadow maps and any other lighting techniques you might come up with.

Yeah moving things to the GPU is the right thing to do because that where all the information related to shadows and animations is. Still a low-res render per AI character would still mean a higher system spec. Which is why I was suggesting a per light visibility check with occlusion query during shadow map creation. You can create a list of light directions and corresponding visibility in that direction and pick a weighted visibility value from that using the player to AI character vector.

DXeXodus
5th Nov 2008, 03:40
Wow. This thread has been seriously derailed. :whistle:

Jerion
5th Nov 2008, 03:50
Wow. This thread has been seriously derailed. :whistle:

It was derailed long ago. Now it's just wandering the countryside. ;)

K^2
5th Nov 2008, 05:05
It was derailed long ago. Now it's just wandering the countryside. ;)
I like picturing mixed metaphors. This one made me smile for some reason.

Are you suggesting geometry more complex than a few AABBs by physics geometry? If not you can use it in case of shadow maps too since the shadow volume will have very little polygons!
Geometry used for rendering is almost never used for physics. It's either a low LoD model or a model built specifically for physics and nothing else. These days, these models can still be far more complex than a few boxes, like it used to be back in the day. What's interesting, in some engines that same model is used to add specular highlights, to save resources. So with the right lighting and from the right angle you can see it around the object. GTA III and Burnout 3/Legends did that, for example. Very noticeable on pickup trucks in both cases.

But I digress. The shadow volume is often a silhouette+sides. That is a lot fewer polygons than the original. And since silhouette gets more complex near sharp bends, where you can't avoid adding polys even for low LoD model, the shadow volume geometry poly count tends to be on the same order as the low LoD model. That's why the physics collisions and full shadow checks are going to take similar amount of time.

Still a low-res render per AI character would still mean a higher system spec.
Wasn't really meant as a low-end solution. But if you push for realism, it might be the way to go. And as I said, you don't have to render these on every frame.

Which is why I was suggesting a per light visibility check with occlusion query during shadow map creation. You can create a list of light directions and corresponding visibility in that direction and pick a weighted visibility value from that using the player to AI character vector.
Just use dot product clipped to [0,1] of the vectors to light and to AI and then just sum over all lights where player isn't within that light's shadow map.

Still, doesn't account for partial cover, though. You just can't get around rendering from AI's perspective if you want it to be perfect.

GmanPro
5th Nov 2008, 05:19
I SERIOUSLY hope that you are wrong dude but unfortunately I am afraid that you are probably not far from the truth.

I feel almost the same way about Fallout 3. If there was never a Fallout 1 or 2 and this game was the first in the series, then I would be praising it as an instant classic. But alas I have seen greener pastures...

LeatherJacket
5th Nov 2008, 05:58
Geometry used for rendering is almost never used for physics.

I know. I code OpenGL ES drivers for a living so I have *some* idea :D. Still I do not know how complex modern game engine character coldet models are so I was asking.

I like the countryside :D, but I guess we are done discussing this.

Laokin
5th Nov 2008, 07:15
*sigh*
If you build your levels around permanent objects, and you decorate it with props that are small enough to not really be big enough to cast a shadow your able to hide behind then there is no shadow in this game that can be generated dynamically anyway. Like I said before, there would have to be moveable objects that cast shadows big enough for you to hide in to ever hid in a dynamic shadow. Dynamic shadows are the drop shadows from flash lights, light bulbs... ya know the object that populate the level that produce light themselves. As it was said before, environment lighting is always static... and improved with HDR so it feels dynamic.

The only shadows you could ever even hide behind would be static shadows created by the environment lighting. In other words if there were really big boxes that could cast a shadow for you to hide behind... chances are your actually hiding behind the box... not it's shadow. If it was made BIG enough... you could make it too big to move. Then the shadow would be static as well. In order to make you invisible you don't have to actually have light detection. You have to plan your level designs shadows strategically to allow the player to take advantage of shadows. Hell, even dynamic.... they have to make sure there are shadows for you to use. So if you light your levels properly... mix them with objects you can't move... I.E. walls, cars, steel boxes, all things too big to move. Then you would know what shadows are possible, and you will notice when you build it properly... that the only dynamic shadows cast are from you, the enemy, and drop shadows from a flash light.

Even games like UT 3 use static shadows and dynamic shadows. Map makers are clever to match the static lighting to that of the dynamic lighting. It's just part of level making no matter what game your playing. It's always a mix. Important thing to note here... How are you going to hide in your own shadow? How are you gonna hide in a shadow with an enemy shining a flash light around? How are you going to hide in a shadow fromyour own flash light? All objects that have physics applied to them will have drop shadows from the dynamic lights placed in the levels. These shadows would be tuned to be a little lighter (just like thief 3....) because of the different brightness from the dynamic light. You match the tones of the light and voila, you have dynamic light. The only thing this proves is.... there is no move able objects big enough to cast any kind of dynamic shadow of any kind for you to actually even completely fit in. Unless you stack like 10 little boxes, but shouldn't the A.I. be smart enough to notice the newly stacked 10 boxes? There is NO sense in coding a dynamic shadow check system. There is NO shadow you could possibly create that wasn't placed in the level to begin with that would put you in a shadow that would even cover your whole dude.

What shadows from objects wouldn't be static? The big unmovable car thats lit up by the lighting that's placed there from the level designers? That light will cast a shadow, that cannot move... if you cannot move the light source and you cannot move the object. And I say again... what objects are actually big enough to hide you in their shadow. When you use moveable objects to hide... usually you hide BEHIND the object your moving. So why would you need to be in it's shadow?

If you actually had a situation in which there was a patrol coming from the left and your using the box to hide from another patrol on the right and the light source was from the right aswell.... Which would cast the shadow back onto you so from the perspective of the patrol on the left.... he shouldn't see you because your in a tiny box's shadow?

I don't see the need for the dynamic shadows to be dark enough for you to not be seen. The only shadows you could ever hide in ever.... even when in a video game...ever! are the ones that when you enter.... you cannot see anything from a third person perspective. In other words... if you had body awareness... you basically should be so dark... you almost cannot see yourself. Unless your game is gonna be doom 3 graphically.... this just won't work. So you would have to plan carefully... reason as to why there are areas dark enough for you to hide in. These areas you can hide in, in order to be useful, would have to be carefully planned in order to guarantee a smooth stealth experience for the entire game.

This means the level designers MUST give you area's to hide in. So they know before hand what shadows are possible to hide in.... and assigns area's of invisibility with a range check on the radius of the shadow. Mind you, this has nothing to do with program code to automatically check the shadow. This is the level designers choice to designate the area of the shadow manually the value of invisibility via an automatic context sensitive action. If you were going to do this in third person... since they are doing third person with the stealth any how -- Because it's context sensitive action, when you enter the shadow it can auto switch to third person and change your visual animation to one with a low profile animation based on the scenario your in. I.E. if he ducks all low and leans against walls if your near them, just like the cover system. If there is nothing to cover with, he could just go prone or crouch real low like Sam Fischer. You could also render the dynamic lights casted on you but since your in a dark spot there would also be very minimal amounts of light. You could even make suspenseful shadows that illuminate you like Splinter Cell, and you can then just set a different range of visibility in the shadow section that the dynamic light crosses. Once again, MANUALLY through level design. You make sure you put a stationary dynamic light in a certain area, and say there is a hole in a wall and the light bleeds through onto you, the level designer would then account for the spot on the wall that the light bleeds through at, increasing your visibility range for that spot where you intersect the dynamic light.

It can be done so you don't know it's been done at all. This is my point, it's very fast... very easy to do. No over head at all, better yet, you can't tell it's static at all. EVERY GAME out there, Doom 3, UT3 anything uses more static shadows then dynamics ones at any given point in their games. The dynamic ones are the smaller subtle lighting differences, ya know rays of light, drop shadows on props and character's from light bulbs. All the fairly dark spots that you ever could even think you could hide in, are all static. Dark corners.... STATIC.

My argument to you is, there is NO need for the ability to hide in a dynamic shadow as dynamic shadows are smaller scale shadows to begin with. All I'm asking you to do and the only thing you can do to prove your right is to come up with a situation in which a dynamic shadow would be useful and plausible to hide in and why. Other wise, it's just a waste of time as it's useless because the way any modern game engine works this goes for Gears of War 2 even. Dynamic lights in UT engine games make up I'd say a wopping 15% max a total level. If you shut off all the dynamic lights you'd still have shadows, just no character shadows, or shadows from smaller move-able props.


/Rest.

Sorry posted from mobile device.

Lazarus Ledd
5th Nov 2008, 07:31
Link it K^2 or it didn't happen :D


I think that first, the story line needs to be fantastic. The story is what gets me when it comes to games.

Stylized gameplay (like play to your style) is the next part. I would like to play the game several times through, several different ways. This can be done many different ways. To cite a few possibilities you can have classes a la Kotor, Mass Effect, etc. You can also have the magic point-based upgrade system like DX. I prefer the former, but thats all opinion.

Personally music is not important to me. I wouldn't mind just sound fx.

As long as they are decent, I could care less about whether the graphics are the top.


Anyways... the point I'm getting at is there are many ways to make a legendary game like Deus Ex and as Deus Ex 3 long as it uses a GREAT storyline and is re-playable, it will be legendary in my book.

If the story is great I'll accept the game. Story's first in my book. After that the rest which I learn to like in my own way. So I'm open minded about DX3. No need for me to create fuss.
If the game wants to be replayable, it need to create a desire inside of me to replay the xpirience in different way.
Music is important part of my life and so it should be in DX3. A memorable part from DX was Battery Park stattion, when you engaged the fight at the station when the bombs were placed there, and the music would switch to the action part of the soundtrack for that map =))

Jerion
5th Nov 2008, 08:35
Line-of-sight based stealth is a good model for DX, when lighting is just done in such a way as to darken the large majority of the areas behind things you could use for cover . This gives the illusion of shadow-based stealth, and from a player's perspective, it is. But the mechanics of how the stealth worked have very little to do with shadows.

This is why the system could be beneficial for DX 3; if they can stick with well-implemented line-of-sight stealth and use well-placed cover and shadows to give the illusion of darkness helping to conceal you, they can make the stealth system feel quite similar to the original. :D

If the artists do it right, you won't notice the difference between LoS stealth and Shadow stealth. Discuss the mechanics of how it works all you want, but how it behaves in the finished game and how the stealth system feels in relation to the original is all that really counts.

K^2
5th Nov 2008, 08:42
If you build your levels around permanent objects, and you decorate it with props that are small enough to not really be big enough to cast a shadow your able to hide behind then there is no shadow in this game that can be generated dynamically anyway. Like I said before, there would have to be moveable objects that cast shadows big enough for you to hide in to ever hid in a dynamic shadow.
Object of any finite size can be placed near enough a point source to create a 180 degrees of shadow. And every single light source in a game is either a parallel source or a point source. Unless the sunlight is your only source of light, you'll have to deal with the fact that objects can create very big shadows.

As a more concrete example, try lighting a camp fire in an open area on a dark cloudy night. The shadows generated by this single source of light with so few other things to scatter it are deep enough that inside it is as dark as if the fire wasn't there. And you can easily place a metal barrel, movable by one person, that would create a shadow more than wide enough for a person to hide in, and as long as you want it.

This is a rather specific example, but you need to keep in mind that all shadows work like this in the game world. You have point sources of light, and there is no secondary lighting from light scattered off lit surfaces. That produces very dark shadows with no penumbra. And these shadows will be no different whether they are produced by small objects or large objects. Now, if you want to find a way to fix that and produce more realistic shadows on the fly, you are welcome to try. Better minds have tried, though.


EVERY GAME out there, Doom 3, UT3 anything uses more static shadows then dynamics ones at any given point in their games.
This is where you are simply wrong. There are a few games out there that run dynamic shadows for characters only. Mostly low-budget games that are supposed to run on every platform out there. But games like Doom 3 use them for all the lighting. Every single shadow in Doom 3 is cast dynamically. Even ones from static objects. Once you have a good volume shadow engine going, there is no reason to differentiate between the two. Why should you care between shadow cast from a crate that can be moved or from a block of concrete of the same size that cannot be. Answer, you don't. They are exactly the same.

Finally, what about objects that are scripted to move? Can a train next to a spot light cast enough shadow for hiding? What about doors? Opening a door to a well lit room from a pitch-black corridor will make a very big impact. Sure, you can solve each of these problems individually by trying to compile different light maps for each possible scenario, but you will then invariably run into all kinds of glitches, like it happened back in the day.

Laokin
5th Nov 2008, 19:52
Object of any finite size can be placed near enough a point source to create a 180 degrees of shadow. And every single light source in a game is either a parallel source or a point source. Unless the sunlight is your only source of light, you'll have to deal with the fact that objects can create very big shadows.

As a more concrete example, try lighting a camp fire in an open area on a dark cloudy night. The shadows generated by this single source of light with so few other things to scatter it are deep enough that inside it is as dark as if the fire wasn't there. And you can easily place a metal barrel, movable by one person, that would create a shadow more than wide enough for a person to hide in, and as long as you want it.

This is a rather specific example, but you need to keep in mind that all shadows work like this in the game world. You have point sources of light, and there is no secondary lighting from light scattered off lit surfaces. That produces very dark shadows with no penumbra. And these shadows will be no different whether they are produced by small objects or large objects. Now, if you want to find a way to fix that and produce more realistic shadows on the fly, you are welcome to try. Better minds have tried, though.


This is where you are simply wrong. There are a few games out there that run dynamic shadows for characters only. Mostly low-budget games that are supposed to run on every platform out there. But games like Doom 3 use them for all the lighting. Every single shadow in Doom 3 is cast dynamically. Even ones from static objects. Once you have a good volume shadow engine going, there is no reason to differentiate between the two. Why should you care between shadow cast from a crate that can be moved or from a block of concrete of the same size that cannot be. Answer, you don't. They are exactly the same.

Finally, what about objects that are scripted to move? Can a train next to a spot light cast enough shadow for hiding? What about doors? Opening a door to a well lit room from a pitch-black corridor will make a very big impact. Sure, you can solve each of these problems individually by trying to compile different light maps for each possible scenario, but you will then invariably run into all kinds of glitches, like it happened back in the day.

Once again, your implying the game will be DARK by nature. The more natural light you have in a room... the less dark your shadows become. Secondly, have you ever made a map in doom 3. You must use static environmental lighting or everything will be black.... everywhere, with the exception of the bright area from your dynamic light. If one were to try to build a level lit with nothing but dynamic lights you would see shadow glitches on top of the fact you would get 1 fps. Doom 3 only has shadows like it has because the game is DARK. I challenge you to go in your bathroom... turn the light on and have a flash light and cast a shadow on your toilet. Then turn the lights off, and hit your toilet with the flash light again, your shadow will all of a sudden be huge and bold.... i.e. EXTREMELY dark.

Also, doom 3 does not dynamically cast shadows at all for the most part. They are static shadows that are designed to make you believe they are dynamic. This is why the game runs great even on a Geforce 3. The only shadows in the game that are dynamic are from the spinning fans and the drop shadows from the player/enemy A.I. When you use the flashlight, the shadows aren't really being thrown on the environment, but into a little invisible floating box attached to the object you hit with the flash light. This is why there is no flashlight in multiplayer. The original xbox version doesn't cast drop shadows from the flashlight at all. Flash forward to Quake 4. Install that game, turn everything up to ULTRA including dynamic lighting. Turn on the flash light... once again you will notice 0 drop shadows from your flash light. Why is this? Because they aren't really dynamic. Only certain lighting is dynamic, it's blended very carefully by the level design team. I have lots and lots of experience with the Quake 3 Engine/Doom3/Quake 4 engine since they are all the same engine.

Deus Ex 3, will not be a dark game.... while it may have dark spots the dev's have made it pretty clear it's going to be much brighter then it's predecessors. As for scripted events, you can script your static hiding spot to move with the shadow after you placed your scripted event in the game. Once again, in order to design a spot in the game with a scripted shadow sequence even with dynamic lighting... you must first carefully plan for there to be a shadow. Context sensitive area's can be move able or you would run into the same glitches your speaking about when it came to the cover system. Also, your train scenario would be out doors presumably lit by the sun or moon which even you yourself, has stated must be static. Thus the shadow from the train, if, it was dark enough to hide in would have to have a point light source move with the train or you would have no shadow to hide in. I dunno about you, but the only light that moves with a train are the trains head lights. It's not like train tracks have street lights after all any how. If it was a subway.... say hello to no lighting at all... thus making you permanently in a shadow unless standing in front of the train.


Also, with the environmental lighting in the game, you will create a game where 180 degrees of shadows cannot happen, unless the point source is from you or the enemy A.I.

The part your missing is, in order to create any shadow like you mention, the room must first be really dark... all around. The second part you keep forgetting is the level designers. Why would they put any object so close to a point source light in order to create a large shadow? And if they did... would the object thats casting the shadow be move able? And really do you believe it's logical or feasible to be able to hide in the shadow created by an open door? I mean seriously? The room would have to be practically black, and the light would have to be practically ON the door in order to cast any shadow large enough for you to fit in and black enough for you to hide in. The only place this can happen is a room with 1 light bulb on. This would have to be a design decision... one that is practically useless.

So one more time. Dynamically or Staticly.... the shadows will always fall in a static position. Unless they purposely make dark rooms throughout the length of the game which they aren't. That being said, weather or not the shadows are procedurally generated the level designer would see where all the shadows fall, better yet, he would strategically plan where all his shadows fall. With that logic, why couldn't they just designate the predetermined shadows (dynamic or static) as a spot of invisibility?

The idea here is the level designers design what and how you're most likely going to play through the game. If they rely on dynamic shadows and only dynamic shadows... they cannot be sure that the game will even be playable with a stealth approach as they themselves wouldn't know how each environment would play out. This is the first path to a broken game. Unless they plan to give you some kind of permanent shadows to move through they cannot successfully give you a way to navigate with stealth shadows though out the whole game. This requires them to place shadows... even if they are dynamically cast, shadows that wouldn't move... so they could in essence be replaced by the less hardware intensive static shadows. Bottom line is static shadows look every bit as good as dynamic shadows, they just don't move when light sources/objects move. A small object can never create a shadow big enough for you to efficiently hide in unless the room was dark and the light source was right next to the object that's casting the shadow. I.E. A very intended rare situation that you wouldn't miss if it wasn't there. When it comes to hiding in shadows... it's very dependent on level design, period. There is no logic doing it your way, your wasting resources and coming up with a spotty way to do light checks that wouldn't be reliable without a light gauge. Even with a light gauge now you have to program a gauge to check to see how bright and how much light is on you.... how would one handle the situation in which your arm is in light and clearly visible, but the rest of your body is in a shadow. It would be a nightmare. You can although build a light gauge that tells you what threshold of the static hiding spot your in. You can have easily up to 10 levels of visible range, the light gauge would simply tell you which threshold your in... thus how effectively close you can be without being detected. THIS is how it was done in Splinter Cell. They made it so you can shoot out light to cause more darkness to hide in. They did that by saying when the lights are on your context zone assigned to the light wasn't enabled... when the light goes out, voila -- shadow mode enabled.

Like I said, game programming is like a magic show. It's all illusions, and careful planning to get the desired effect.

All in all, what your describing hasn't been done. It needs to be, but cannot. Look at Far Cry 2, it has dynamic lights everywhere and an open world that would literally take years to add in proper hiding spots... I.E. it can't be done, that's why this game has no shadow stealth... even though it was promised. The way Farcry 2 works is by setting the visibility range of the A.I. to that of the time of day. I.E. when it's night you obviously can get closer... just because they set it so when it's 12 am the range of the A.I. is reduced drastically. They then added the camo suit, which is sort of a multiplier based on the previously mentioned system. What your talking about would cripple a computer... simply cannot be done. The next thing you must account for is the fact that DX isn't an open world game. It is in fact a linear game with non-linear choices which once again present a sort of illusion that the game is open.

/Rest.

K^2
6th Nov 2008, 03:12
Laokin, the problem is that environmental lighting cannot be computed dynamically. Even with the pre-compiled environmental map, the method fails in confined spaces. E.g. environmental light map near the wall is entirely different from one near the center of the room.

Of course, this is why there is ambient light. And yes, I agree, if the game isn't dark, id est, has strong ambient component, there is no way to hide in dynamic shadows. But neither are there going to be any static shadows for hiding.

The kind of lighting model where you are going to have both deep and soft shadows is essentially impossible. It requires the kind of environmental lighting computations that cannot be performed even during compilation. Not to mention the fact that computation of a shadow map based on environmental lighting, even in linearized approximation, requires a 2D convolution, which is an O(N^2*ln(N)) process using FFT algorithm. And if you leave artists to place deep shadows, you are bound to run into inconsistencies.

If you'd like to see it, I can put together a tech demo that runs a shadow map based on a distributed light source, producing a shadow with soft edges. The shadow map would have to have very low resolution, of course, in order to run convolutions on the fly.

DXeXodus
6th Nov 2008, 03:44
This is very off topic guys. ;)

Jerion
6th Nov 2008, 03:47
I think this thread should be renamed...:rolleyes:

K^2
6th Nov 2008, 05:52
This is very off topic guys. ;)
What? How is that off topic? Did you really expect us to figure out whether DX3 can "relight" something without first establishing precisely how things are going to be lit?

GmanPro
6th Nov 2008, 05:53
lol, I like the new title of this thread...

:lol:

Jerion
6th Nov 2008, 05:59
What? How is that off topic? Did you really expect us to figure out whether DX3 can "relight" something without first establishing precisely how things are going to be lit?

It's "reignite", not "relight". The discussion should have been about fire not lighting! :p

K^2
6th Nov 2008, 06:01
Precisely, fire. Which is why we are talking about dynamic lighting.

feralspecies
6th Nov 2008, 18:20
Guys get back onto topic. I literally had to skip 2 pages of stuff about shadows.

But on that subject, I just imagine the stealth system being the player hiding behind some curtains "YOU CANT SEEE ME!"

Nah but apart from the shadows, lets concetrate on what made the original great, and what you'd want to see in THIS version.

Yargo
6th Nov 2008, 18:37
Guys get back onto topic. I literally had to skip 2 pages of stuff about shadows.

But on that subject, I just imagine the stealth system being the player hiding behind some curtains "YOU CANT SEEE ME!"

Nah but apart from the shadows, lets concetrate on what made the original great, and what you'd want to see in THIS version.

Agreed :D start another thread on stealth, no wait there already is one:rasp:

GmanPro
6th Nov 2008, 19:06
I always liked it when I'm playing a stealth game and I am sneaking around a couple of guards or whatever and they are standing there having a conversation or playing cards or something.

I liked when they mentioned JC, I think it was the missile silo.

"I heard this guy can just disappear."

Or when the Recon Marines from Half Life 1 were talking about you.

"Forget about Freeman, we are pulling out!"

"When I find Freeman, I'm going to make him pay."

Sometimes its the little things that make all the difference and add to the tension. They are talking about you and don't realize that you're right behind them. :D Thief was great for this.

Laokin
6th Nov 2008, 19:40
Laokin, the problem is that environmental lighting cannot be computed dynamically. Even with the pre-compiled environmental map, the method fails in confined spaces. E.g. environmental light map near the wall is entirely different from one near the center of the room.

Of course, this is why there is ambient light. And yes, I agree, if the game isn't dark, id est, has strong ambient component, there is no way to hide in dynamic shadows. But neither are there going to be any static shadows for hiding.

The kind of lighting model where you are going to have both deep and soft shadows is essentially impossible. It requires the kind of environmental lighting computations that cannot be performed even during compilation. Not to mention the fact that computation of a shadow map based on environmental lighting, even in linearized approximation, requires a 2D convolution, which is an O(N^2*ln(N)) process using FFT algorithm. And if you leave artists to place deep shadows, you are bound to run into inconsistencies.

If you'd like to see it, I can put together a tech demo that runs a shadow map based on a distributed light source, producing a shadow with soft edges. The shadow map would have to have very low resolution, of course, in order to run convolutions on the fly.

I some how get the feeling you are completely off track of what I am saying.... your not seeing it like I see it, and you keep going back to "how" the game is lit. No matter what lighting choice you make, the method I'm describing would work as long as it's not an open world with a 24h clock. It literally has nothing to do with the "how."

Other than that, I apologize for aiding the jacking of this thread. From now on if you wish to continue the conversation I think we should take it to PM's... like we should have a long time ago.

I apologize to the people who were inconvenienced by this topic of conversation.

Laokin

feralspecies
6th Nov 2008, 21:36
No no, its cool, I kind of like that people are passionate about the game, just effort to read through tons of stuff about verticle shading!

What I hated about Deus Ex 2 was that you never felt really attached to the game, you just travelled around for no real important reason, not really that bothered about the story (which was a little silly). In deus ex 1, it really felt like you were travelling round the world, discovering real plots of secret organisations. I know that conspiricy theories were "in" back in the days of DX, but it really felt like you were unravelling a complex story.

Also, each character seemed so real, and you really felt for their safety.

And yes, its the little details that make a game great, like your man said earlier i.e "forget about freeman".

I agree with a point earlier that its most likely to be a good game, but not a patch on DX.

But why is this, why can developers give gamers what they have already given in the past, it cant be that hard to make a decent game that appeals to all gamers.

PC gaming is very different to console gaming, and developers havent realised this. Console gaming is like mcdonalds, its a fast fix, its not meant to last night. Pc gaming is the opposite, we prefer a longer experience, one thats different everytime we play it. DX offered this... will DX3?