Dynamic Global Illumination

Discuss the Wing Commander Series and find the latest information on the Wing Commander Universe privateer mod as well as the standalone mod Wasteland Incident project.
chuck_starchaser
Elite
Elite
Posts: 8014
Joined: Fri Sep 05, 2003 4:03 am
Location: Montreal
Contact:

Post by chuck_starchaser »

By the way, frame rate is more and more tied to texturing, less and less tied to poly-count, as technology progresses. And the trend will continue into the forseeable future. Anything we can do to reduce texture sizes is of paramount importance, therefore. Ultimately, if at the cost of symmetry we can increase detail, I think it's very much a worthy tradeoff.
klauss
Elite
Elite
Posts: 7243
Joined: Mon Apr 18, 2005 2:40 pm
Location: LS87, Buenos Aires, República Argentina

Post by klauss »

Privateer Ferrius wrote:Right now we have three textures for a ship, the diffuse texture, the PPL texture, and the GLO texture. For each faction that uses the ship, the textures increase dramatically. Take the Talon, that is used by the Militia, Confeds, Pirates, Retros, and Privateers. Thats 3*3*3*3*3*3 or 3^5 or 243 unique textures.
Interesting... because my math told me otherwise:
3*5 = 15.
Privateer Ferrius wrote:As well, changing how coordinates are handled effectively trashes any and all work I've done to this point, and you're going to have to excuse me if that's something that I'm not going to be happy about.
Did you start unwrapping? Becuase that would be the only work trashed (and the discussion aims at avoiding that - trashing work).

[edit]: I must be the only one who thinks textures should NOT be symmetrical! :x[/quote]
That's what we think!
If you cannot exploit symmetry with the coordinates, you can't eradicate symmetry from the texture itself. Basically, when we say: "unique coordinates" that means that each poly cannot overlap with another poly - that make a symmetric model have a symmetric texture. By exploiting symmetry (and that requires polygon overlapping), you can eliminate symmetry in the texture itself by only mapping one half, and reusing that mapping for the other half.


Ok... Ferrius... simplifying:
For models that want dynamic GI... unless I find a way which I thought I wouldn't but now I'm unsure... unwrapping must avoid both tiling (forgot that one earlier) and overlapping. Thus, you must have that in mind while unwrapping.
The model itself remains as-is.
The extra textures needed to implement the technique you don't have to create (they're created automatically by various tools - blender and whatever - and others will probably be able to do it).
The only thing, and the discussion was originally to decide this, is that while I'm almost sure that GI for the cockpit is worth the trouble, I'm not that certain about the ships. So... if the decision is to not use GI for ships, then you may unwrap as you want (ships).

Clear? Doubts? Noone is going to make you work harder, or throw away any work.
Oíd mortales, el grito sagrado...
Call me "Menes, lord of Cats"
Wing Commander Universe
chuck_starchaser
Elite
Elite
Posts: 8014
Joined: Fri Sep 05, 2003 4:03 am
Location: Montreal
Contact:

Post by chuck_starchaser »

Privateer Ferrius wrote:Really?

What's this doing in master_parts_list then?
The Retros, being by their nature not given to grand industrialization, rely on a small number of hidden facilities and sympathetic manufacturing plants to supply them with ships. The Salthi bears the distinction of being the only class of spacecraft officially sanctioned by the reverend Jones, who, when presented with its initial designs just over a year ago, said that prayer had revealed to her that that this was to be the 'shepherds crook' by which man's sins would be constrained. Inexpensive, even at the time of its introduction, the Salthi remains a utilitarian craft well suited to the production schedules of backwater worlds.
(Funny that the Church of Man is using a 'utilitarian' craft thats also a Kilrathi light fighter with some pretty high-end Kilrathi engine technology.)
Where does the quote come from? Not arguing; just never saw it before. Anyhow, "sympathetic" doesn't mean owned and operated; and in-game, the Retros fly ships of Confed and Kat manufacture; they don't have their own ship brands.
Privateer Ferrius
Venturer
Venturer
Posts: 538
Joined: Tue Mar 21, 2006 12:54 am
Location: Delta Prime
Contact:

Post by Privateer Ferrius »

Dude, that's also an issue of the economy of the UV-wrapping. Right now there is a lot of negative space in the texture files for most of the fighter. I'm no UV-wrapping junkie, but I could show you how you could economize the Demon texture and squeeze a good couple of handfuls of surfaces into that same texture size.

For a professional high-quality example, crack open a Half-Life texture. There is not a single significant area of negative space on them.

In any event, the handling of the textures is something I should be worrying about, and trust me, I'll make sure it works.

Also, regarding the quote: I believe I cited my source, but to be more specific, all of those descriptions are lifted directly from Privateer.

[edit] @Klauss: using half a texture will CAUSE symmetry, not eliminate it. Take the Demon texture right now, the symmetry is pretty obvious and detracts from the quality of the texture (and consequentially, the quality of my work :x ). The fact that you have two fuel ports and the text on one of the hardpoints is only reflected horizontally instead of rotated 180 degress as it would be on a real fighter are two glaring examples.
Cmdr. Micheal Ferrius (Ret.)
Retired Confederate Pilot

For Hire!
Post jobs to the BBS!

Tengoku de omachi shite imasu
klauss
Elite
Elite
Posts: 7243
Joined: Mon Apr 18, 2005 2:40 pm
Location: LS87, Buenos Aires, República Argentina

Post by klauss »

Privateer Ferrius wrote:Dude, that's also an issue of the economy of the UV-wrapping. Right now there is a lot of negative space in the texture files for most of the fighter. I'm no UV-wrapping junkie, but I could show you how you could economize the Demon texture and squeeze a good couple of handfuls of surfaces into that same texture size.
I thought the same when I saw it (What a waste of space).

And though it is ok for you to "worry about texture handling", it is also necessary for you to worry about not doing stuff that will inhibit the utilization of an important engine feature. That's why I brought this up - so that you know what you can and can't do, or if you decide to ignore that, you know what you're sacrificing. (if you decide to use mirroring even if we had decided to use GI, then GI for that mesh would have to be disabled - if you know that and are convinced you come out winning in the tradeoff, that's ok too).
Privateer Ferrius wrote:[edit] @Klauss: using half a texture will CAUSE symmetry, not eliminate it. Take the Demon texture right now, the symmetry is pretty obvious and detracts from the quality of the texture (and consequentially, the quality of my work ). The fact that you have two fuel ports and the text on one of the hardpoints is only reflected horizontally instead of rotated 180 degress as it would be on a real fighter are two glaring examples.
Yes, it seems I understood your post exactly to the inverse of its meaning - I thought you were saying that textures (the images) shouldn't be symmetrical for that would be a waste of space (rather than because the ship texturing itself shouldn't be symmetrical).
I happen to agree, assymetrical texturing on symmetrical shapes would work really nice - but it means doubling memory and bus usage, and that is definitely not worth the little gain from assymetrical texturing IMHO. But you're the artist... in the end, it's your call, or of whomever textures a ship (but have in mind our concerns - doubling texture sizes is not benign).
Last edited by klauss on Thu Apr 06, 2006 6:55 pm, edited 1 time in total.
Oíd mortales, el grito sagrado...
Call me "Menes, lord of Cats"
Wing Commander Universe
chuck_starchaser
Elite
Elite
Posts: 8014
Joined: Fri Sep 05, 2003 4:03 am
Location: Montreal
Contact:

Post by chuck_starchaser »

Well, I've heard the masters parts list being mentioned, but I don't know what it is. I have an idea it's some file in the VS tree; my question was more like, where does it ultimately come from. I do not believe the retros manufacture any ships.

R.e.: "Negative Space" [sic] is there for a reason: islands tend to bleed into each other due to mipmapping and filtering in the gpu; though I reckon the Demon texture isn't terribly mipmap friendly. And the idea would be to color the "negative space" with colors that smoothly change from one island to the next, meeting each island with its color at the edge, to minimize mipmap and filtering artifacts.
Privateer Ferrius
Venturer
Venturer
Posts: 538
Joined: Tue Mar 21, 2006 12:54 am
Location: Delta Prime
Contact:

Post by Privateer Ferrius »

The texture backing with the dymanic-whatchamedoer-buzzword would be in the model anyways, as Chuck said.

I just see only using half a texture as a cop-out solution to the problem as opposed to an actual fix, which would be being more economical in the texture's positive space.

[edit]: [sic]? I'm using real-life art terms here (as opposed to the buzzwords of the 3D industry), exuse me :P

If the engine is mapping anything outside of the UV unwrapped areas, that's an engine bug. And again, my worry 8)
Last edited by Privateer Ferrius on Thu Apr 06, 2006 6:57 pm, edited 2 times in total.
Cmdr. Micheal Ferrius (Ret.)
Retired Confederate Pilot

For Hire!
Post jobs to the BBS!

Tengoku de omachi shite imasu
klauss
Elite
Elite
Posts: 7243
Joined: Mon Apr 18, 2005 2:40 pm
Location: LS87, Buenos Aires, República Argentina

Post by klauss »

Edited previous post answering to Ferrius. Read please.
Oíd mortales, el grito sagrado...
Call me "Menes, lord of Cats"
Wing Commander Universe
Privateer Ferrius
Venturer
Venturer
Posts: 538
Joined: Tue Mar 21, 2006 12:54 am
Location: Delta Prime
Contact:

Post by Privateer Ferrius »

@Klauss: It would NOT double the texture size if it was done RIGHT, by making economy of the texture map, as I've been preaching :P

[edit]: What the artists on an old HL project of mine did was to reverse the process of texture mapping in a way. They did the texture, making sure to make the most of texture map economy, and then 'wrapped' it to the model. Took a considerable amount of trail and error, but solved the economy issue in spades.
Last edited by Privateer Ferrius on Thu Apr 06, 2006 7:00 pm, edited 1 time in total.
Cmdr. Micheal Ferrius (Ret.)
Retired Confederate Pilot

For Hire!
Post jobs to the BBS!

Tengoku de omachi shite imasu
chuck_starchaser
Elite
Elite
Posts: 8014
Joined: Fri Sep 05, 2003 4:03 am
Location: Montreal
Contact:

Post by chuck_starchaser »

Privateer Ferrius wrote:The texture backing with the dymanic-whatchamedoer-buzzword would be in the model anyways, as Chuck said.
Klauss has been thinking of using that radiosity baking separately, rather than premultiplied and put into the glow map. That'd make your job even easier.
Privateer Ferrius
Venturer
Venturer
Posts: 538
Joined: Tue Mar 21, 2006 12:54 am
Location: Delta Prime
Contact:

Post by Privateer Ferrius »

I know what you meant Chuck, I just couldnt remember the big words ;) :P
Cmdr. Micheal Ferrius (Ret.)
Retired Confederate Pilot

For Hire!
Post jobs to the BBS!

Tengoku de omachi shite imasu
klauss
Elite
Elite
Posts: 7243
Joined: Mon Apr 18, 2005 2:40 pm
Location: LS87, Buenos Aires, República Argentina

Post by klauss »

That's what I've been trying to say, Ferrius - it doesn't interfere with anything of your work except unwrapping - depending on how it's done in the end, you may or may not use mirroring. But... since you seem to hate mirroring yourself, you shouldn't be concerned at all.
Oíd mortales, el grito sagrado...
Call me "Menes, lord of Cats"
Wing Commander Universe
Privateer Ferrius
Venturer
Venturer
Posts: 538
Joined: Tue Mar 21, 2006 12:54 am
Location: Delta Prime
Contact:

Post by Privateer Ferrius »

But see, I'm not the one doing the unwrapping, so I get no input on what I'm using :?
Cmdr. Micheal Ferrius (Ret.)
Retired Confederate Pilot

For Hire!
Post jobs to the BBS!

Tengoku de omachi shite imasu
chuck_starchaser
Elite
Elite
Posts: 8014
Joined: Fri Sep 05, 2003 4:03 am
Location: Montreal
Contact:

Post by chuck_starchaser »

That's true. The unwrapping for the Demon was done by Brad. You can re-unwrap it, if you want; but you'll need to learn how to do it. I think it's done acceptably well, tho.
Privateer Ferrius
Venturer
Venturer
Posts: 538
Joined: Tue Mar 21, 2006 12:54 am
Location: Delta Prime
Contact:

Post by Privateer Ferrius »

First things first I'd need the blender source. Then I'd need to know how the hell I move the camera in blender. THEN I'd need to know how to UV-unwrap it.
Cmdr. Micheal Ferrius (Ret.)
Retired Confederate Pilot

For Hire!
Post jobs to the BBS!

Tengoku de omachi shite imasu
klauss
Elite
Elite
Posts: 7243
Joined: Mon Apr 18, 2005 2:40 pm
Location: LS87, Buenos Aires, República Argentina

Post by klauss »

Ah... I see your point now.
I saw the demon's layout once and it's messy. Somehow I had been left with the impression that it was just as it needed to be, but I was remembering Matt's baking, not the actual layout.

So... Ferrius... stay tuned. But I don't think you'll have to redo anything.

As I said, GI won't be applied to all ships, and that's certain. So... no GI for the demon isn't such a big thing, because it wouldn't get GI 90% of the time anyway.

But if I manage to translate everything to tangentspace, the demon might be able to use GI without re-unwrapping. I'd leave that in our hands, since re-unwrapping the demon would be a... demonic task.


BTW: tangentspace is a coordinate system in which vectors are represented in an orthonormal base which contains the surface's normal. This makes the encoding of... say... normalmaps invariant with respect to face orientation. Though I'm not encoding normalmaps nor vectors in the precomputation, I do store values that refer to directions - if those directions were fixed in tangentspace rather than objectspace, I think the precomputation map could also be invariant of neighborhood transformations (rather than face transformations).
Too much mumbo-jumbo? It's hard to explain in simpler terms.
Oíd mortales, el grito sagrado...
Call me "Menes, lord of Cats"
Wing Commander Universe
chuck_starchaser
Elite
Elite
Posts: 8014
Joined: Fri Sep 05, 2003 4:03 am
Location: Montreal
Contact:

Post by chuck_starchaser »

Sounds to me like a high-pass-filtered UV-map... Maybe we could store a quaternion per pixel in RGBA :D :D :D

How about GI just for carriers? Those are the only ships you get to see up close and often enough to notice.

EDIT:
Klauss, won't self-radiosity look a bit odd without a corresponding dual-bounce specularity? (Not to speak of single-bounce... ;-))
Privateer Ferrius
Venturer
Venturer
Posts: 538
Joined: Tue Mar 21, 2006 12:54 am
Location: Delta Prime
Contact:

Post by Privateer Ferrius »

Chuck, I think you mean capships and stations, not just carriers.
Cmdr. Micheal Ferrius (Ret.)
Retired Confederate Pilot

For Hire!
Post jobs to the BBS!

Tengoku de omachi shite imasu
klauss
Elite
Elite
Posts: 7243
Joined: Mon Apr 18, 2005 2:40 pm
Location: LS87, Buenos Aires, República Argentina

Post by klauss »

chuck_starchaser wrote:Sounds to me like a high-pass-filtered UV-map... Maybe we could store a quaternion per pixel in RGBA :D :D :D
Looks like that, yes... but it isn't that.
chuck_starchaser wrote:How about GI just for carriers? Those are the only ships you get to see up close and often enough to notice.
Yes, mostly for stations. That was my idea, though I'd add it for ships too if possible - when they approach a capship or station. I was also thinking of a "shared" GI environment that could be applied to all remaining ships - so preparing all ships for GI wouldn't be a bad idea, if not too restraining.
chuck_starchaser wrote:Klauss, won't self-radiosity look a bit odd without a corresponding dual-bounce specularity? (Not to speak of single-bounce... ;-))
I don't think it would look odd, but nevertheless I was wondering if shader limits would allow me to do that too. I have all the data needed, I only need processing power and freedom to add instructions (since I need to further sample and filter the environment). The beauty of it is that since it works kinda recursively, it wouldn't be second-bounce... it would compute infinite bounces. The only caveat is that each bounce "takes time" - a frame - Materials have to be tweaked to absorb a significant amount on each bounce, or the system will become unstable.
Oíd mortales, el grito sagrado...
Call me "Menes, lord of Cats"
Wing Commander Universe
chuck_starchaser
Elite
Elite
Posts: 8014
Joined: Fri Sep 05, 2003 4:03 am
Location: Montreal
Contact:

Post by chuck_starchaser »

(I meant "high-pass-filtered dU/dV map", btw)
I think we could add diffuse and specular for second bounce, since a second bounce could be decomposed into
diffuse then specular
specular then diffuse
diffuse then diffuse
specular then specular

so the final specular content is proportional to the square of specular over diffuse, and therefore only relevant to very specular, and partly facing each other, surfaces...; a rare case...
Post Reply