Jump to content
Search In
  • More options...
Find results that contain...
Find results in...
Sign in to follow this  
Dima

stupid cloaknt engine

Recommended Posts

Interview with David Durcak, from the Chaser crew (CloakNT engine):
Note: Take a close look at the bolded lines!!

We've heard a lot of good things about your own CloakNT engine that you're using for Chaser. Could you tell us about some of the features that it has allowed you to implement into the title?

David: CloakNT engine was originally developed for dynamic, per-pixel lighting and shadowing but on current hardware it is possible to use only a few dynamic lights within a scene. Since we want to have rich lighting in Chaser we finally decided to use static lighting. Dynamic lighting will be used only for dynamic light sources like flashlights. Next step in the engine is usage of materials instead of simple textures. It means that every surface has its own material properties, like specular intensity, gloss map, reflection map, bump map etc. so glass looks really like glass, metal looks metallic and varnished wood looks cool as well. We also take advantage of new graphics cards with vertex and pixel shaders, so the engine is optimised for those cards and runs much faster. Using these new card features we will be able to create some new spectacular effects like bumped reflections and refractions. CloakNT engine has implemented an enhanced particle system which we can use for the creation of very effective explosions and smoke. The engine also has a very complex animation system which allows us to create smooth animation of characters. In our recently-released technology video [30.4Mb] you can find a lot of pretty features of the engine itself.


I'd say the problem is in the developers and not in the hardware!

He basically described everything the DOOM engine does and theirs doesn't! :)

Share this post


Link to post

He basically described everything the DOOM engine does and theirs doesn't! :)


The DOOM engine won't be able to handle more than a few lights in a scene either, remember ? From the conversations I've read / had with the id designers, the most significant change for mappers and modelers is that you need to fully understand the new lighting model. You have to learn how you can get subtlety and drama into a scene within a very strict light budget - this is also why the game will be so dark. You can't just pile 10 little point lights into a room to get just the amount of light and shadow that you want.

Share this post


Link to post

"From the conversations I've read / had with the id designers"

really?

"The DOOM engine won't be able to handle more than a few lights in a scene either"

The sun, or one TL (1 source) that spreads via multiple holes is not possible? hmmm. I'm not sure

Share this post


Link to post

really?


Err well I talked to Fred Nilsson a couple times on ICQ and he told me three significant things :

1. The scripting language takes a while to learn, but isn't nearly as complicated as a real language like C++.
2. Lighting is the absolute most important factor in level design. The good designers will be those that know how to get the most out of a small set of lights.
3. Level design now involves loads of detailed modelling - not just laying some blocks down and calling it a room.

The sun, or one TL (1 source) that spreads via multiple holes is not possible? hmmm. I'm not sure


No, I repeated John Carmack's statement that you can't have loads of light sources in a scene and expect it to run at a decent speed. Wether the light beams hit a wall, go trough holes in a wall or shine in a character's eyes doesn't affect performance as far as I know - it's the actual number of lights that's the problem.

Share this post


Link to post

so for example a light that's hitting 20 surfaces is still faster than three light sources hitting five surfaces? Intresting.

I guess that's better than the other way around since I want doom to be dark and gothic like.

Share this post


Link to post

I think the doom3 engine (with all those nice lighting effects - whatever way they going to implement it ) is going to be real nice to play more with atmosphere then any other game. That's why I hope they going to put some real effort in AI. Then it would also be nice If the others (enemies) came to hunt you. - In stead of hunting enemies of whom their position can be "guessed". I image different approaches of being hunt by different type of "others". Not like in MP, because most people on-line don't have the patience or brains or ping to explore the place and think of a good way to kill (or have peace talks with).

FlatHead, cool you communicate with Id.

Share this post


Link to post

[quote]Since we want to have rich lighting in Chaser we finally decided to use static lighting.

That's a shame in so many ways, but you have to give credit to the developers for sticking to thw vision in their head, instread of going for the flashier (and slower) technology. Let's hope they spend those cycles on some new original gameplay.

Share this post


Link to post

Damn, there can only be a few light sources :(

i would have thought to improve perforamnce they could use some sort of "portal" technology with the lights so that only certain light sources are calculated at one time...

but i take it there can still be loads of "static" lights mixed in aswell?

Share this post


Link to post

too much light would ruin the feel. From looking at the videos, I'm completely in love with the game, perfect atmosphere, amazing realistic lighting. It looks like I will actually be scared out of my mind while playing it. And I can just imagine how freaked out I'll be while playing it while high. I can't wait.

Share this post


Link to post

but i take it there can still be loads of "static" lights mixed in aswell?


I'm not sure what you mean by 'static' lights but I'm sure of one thing: no light in Doom 3 can be regarded as 'static'. That's the whole idea behind the new lighting architecture : you can take any light, move it around and change its properties - and the shadowing on the world stays accurate.

I'm going to quote John Carmack here, from a Gamespot interview at last summer's QuakeCon :

"If you want to shine three lights onto a given area, it ends up drawing the surface once for its basic properties, then again for each light [...] You can certainly get into trouble where if you actually modelled this room exactly like this, where you've got eighteen lights coming down and you draw all these lights with overlapping volumes, you'd go really really slow. So designers do have to pay attention to try and light things in some ways more in a film style, where you have one strong light that is kind of the drama point, casting most of the illumination, and then you arrange the other lights to fill in the area."

I have too much free time.

Share this post


Link to post

I wonder how shadows that are overlapping will look. Say there are 2 light sources that are next to each other and one object. This should create 2 shadows which overlap, the area which is overlapped should be darker than the other parts of the shadow. I'm guessing that's also how it will be in the game. I mean I've seen detail going so far as when that demon walks across that room/hallway with monitors, you can see it's shadow on the monitor, but not on the screen. I never thought games would be so realistic before.

Bump-maps on items won't have shadows (not on the item itself but on the floor for example) that look exactly like the image would suggest they look, right? Or do they have some way of avoiding that?

Share this post


Link to post

Everything is dark, unless a beam of a lightsource hits the surface (then it reflects light) just like IRL.

Share this post


Link to post

Now I'm getting confused. Are shadows handled as absence of light or as projected darkness?


Shadow information is stored in stencil volumes, and these prevent light from being drawn where it should be shadowed. So they are handled as absence of light, I guess.

Share this post


Link to post

I wonder how shadows that are overlapping will look. Say there are 2 light sources that are next to each other and one object. This should create 2 shadows which overlap, the area which is overlapped should be darker than the other parts of the shadow.

No, remember, there is NO radiosity here, so if there are only 2 light sources here, both will cast a pure black shadow. Real Life light sources tend to do that only because they're not photon casting points, but surfaces. The only way to soften shadows and simulate radiosity (if there's no multiplier value implemented in the light's properties) would be to create several new dynamic light sources that follow this easy steps :

1) TURN OFF SHADOWS. Reflected light makes poor to no shadows.

2) PLACE/ORIENTATION. If it's a puntual light, you just gotta place it wherever you need. If it's a spotlight, it should be placed where a high concentration of light from the shadow enabled lightsource hits and should be oriented in a way that kinda follows the idea of "light reflection".

3) COLOR. The color of the "radiosity" light should be equal to the theme used in the textures used for those brushes from where it's supposed to be "reflecting" from.

This is how people simulates radiosity in non-photorealistic renderers. CGI never uses radiosity because it's not that easy to render so many frames in the 2, 3, or 5 years it takes them to make a movie. Not even Monsters Inc used it, for example.

Bump-maps on items won't have shadows (not on the item itself but on the floor for example) that look exactly like the image would suggest they look, right? Or do they have some way of avoiding that?

Bumpmaps do NOT cast shadows, it doesn't matter if it's over the same poly or over a completely different one. What bumpmaps do is screw up the lighting conditions of that pixel, but that's not enough info to actually cast a shadow. Imagine a completly plain wall with a screw or something. Let's do it with a bumpmap, wich should look like a big RGB(127,127,127) colored square with a tiny white spot.
Now place a light next to the wall, the screw should cast an enourmous shadow stripe, right? Bumpmap's cannot handle this. If you want it to happen, you need to model the object.

Share this post


Link to post

I'm just curious about how many light sources "few lights" are.

Hopefully it doesn't mean 5 light sources or so per level.

Share this post


Link to post

I was wondering about the radiosity thing myself. It always irks me when people call the graphics in this game photoreal. It looks fantastic no doubt, but not photoreal. In real life you hardly ever see completely black shadows, but in all the videos I've seen all the shadows are pitch black. Can't they just put an ambient light in the scene somewhere or is this gonna be a serious limitation of the engine? Also most indoor light sources cast area shadows IRL. I know that's too much to ask from a game at this point but maybe they will be able to implement it later on as video cards get faster?

Share this post


Link to post

Can't they just put an ambient light in the scene somewhere or is this gonna be a serious limitation of the engine?

That would look ugly. Ambient would raise the light values across all the level. It's much better to just a few no-shadow lights. If they're omni, spot or directional depends on the type of scene. Omni for general fake radiosity, spots for very defined planar reflections, and directionals to simulate atmospheric light.

And dsm, about the quantity. It's more about the scene, not the level. You could have 4000 lights in a map as long as you can only see the works of 6 or 5 of them at the same time.

Share this post


Link to post

Radiosity needs from 6 to 30 bounces per each ray. So we're talking about a video card 10x faster than a GF3. Not yet, but obviously possible.

At least it's a matter of raw power, and not fancy features that take longer to create.

Share this post


Link to post

You could have 4000 lights in a map as long as you can only see the works of 6 or 5 of them at the same time.


After watching the Macworld demo again, I'm not sure if the numbers are really that small. In the first scene (the one with the demon walking around next to the monitors) there's a strip of about 15 little lights near the bottom. Granted, the area they affect is very small. And in the next scene (the one with the bridge), there's about 13 little lights in the ceiling.

Or maybe these are just light textures - which probably have a different impact than point light sources, or omni lights. Zaldron, maybe you know this - how could textures be used as light sources ? A tiny point light at each texel/unit/whatever ? Because that's what seemed to be the case in Quake 2.

Share this post


Link to post

Quake 2 lightmaps generally (read : no weird texture stretching) have one light level per every square of 8 to 16 pixelswide. Since lightmaps are interpolated (bilinear filtering) they don't look all blocky. You've all seen the crappy diagonals lightmaps cast.

As long as the shadows come from lights and brushes that follow the grid, everything's ok. As soon as you rotate stuff you'll see this incredibly jadded borders between light and darkness. I'm pretty sure you all have seen this, it's even on Quake3.

Those little lights. I don't think they're really casting light at all. Couldn't they just be brushes with full-bright shaders and a corona?

Share this post


Link to post

The ceiling lights in the Bridge scene probably aren't casting any light anywhere and serve only as decoration. Though I'm pretty sure the tiny lights in the first scene are casting light. Maybe the radius of the light is just so small you can afford a dozen of them in view at once.

Share this post


Link to post

Maybe. I guess if you can really make them shadowless then the performance impact is way lower. It's like the most simple application of pixel shaders.

Another way to do it is to use one big large light source with a shader that resembles the little lights. Kinda like those "tri-spotlights" on the bridge scene. Instead of doing 3 lights it would be better to just create one with a multiply shader that pretty much looks like a picth black square with 3 white circles.

Share this post


Link to post

...it would be better to just create one with a multiply shader that pretty much looks like a picth black square with 3 white circles.


You just gave the definition of a lightmap :)

Share this post


Link to post
Guest
This topic is now closed to further replies.
Sign in to follow this  
×