What are "waterindices"?

View

Community Home > Half-Life 2 / Source Engine > Source Coding > What are "waterindices"?

Page 1 of 1. Covering 10 Post(s). Viewed 4579 times.
Previous 1 Next
What are "waterindices"?
Jun 6th 2005, 09:44
Novice

Post: #1
Reply to: #None

Joined: 5th Mar 2005
From:
Posts: 313

Waterindices are a part of Source maps. (I understand mapping questions should be posted in the maps section, but this seems to be beyond mappers knowledge so I am asking here).

The map compile log states that:
waterindices 61647/65536 123294/131072 (94.1%) VERY FULL!

Seems like an easy enough problem at first, but it seems that NOBODY knows what "waterindices" are.

From Rof (writer of VMEX):

The Primitives (37), PrimVerts (38) and PrimIndices (39) lumps are used in reference to "non-polygonal primitives". They are also sometimes called "waterstrips", "waterverts" and "waterindices" in the SDK Source. Their use is uncertain. Faces of water brushes are not always associated with them, and they are often associated with faces that are nowhere near water. Instead, they seem to be used to break-up faces with colinear vertices into smaller triangles.

This paragraph is THE ONLY information about waterindices on the entire world wide web. Unfortunately, Rof does not know exactly what waterindices are.

Are there any coders or moderators who can provide some insight as to what "waterindices" might be?

Re: What are "waterindices"?
Jun 6th 2005, 21:59
Padawan

Avatar

Post: #2
Reply to: #1

Joined: 19th Nov 2004
From: United Kingdom
Posts: 121

I think that means your aproaching the 128 limit for the number of vertices that can be manipulated by the pixel shader?? ( 94.1 % full ?)

131072/1024 = 128


    Shader is a program on a special code which is implemented hardwarely by any DX8 compatible accelerator. The number of operations (code size) of a vertex shader is limited by 127. Each operation is implemented approx at one clock of accelerator. Operation includes different arithmetic operations and conditions which are implemented with a special set of registers. In fact, an accelerator contains two special-purpose programmable processors, one of which is used for processing of vertex coordinates (transformation) and setting of initial parameters of triangles, and the second one for calculation of resulting color of each pixel (rasterization).
I could be completley wrong as ive never worked with any water or shaders before, but it seems logical.

The indices are more than likley a refrence to the vertices that are modulated or manipulated to give the water look/feel???

http://www.exaflop.org/docs/marchcubes/ind.html
http://www.digit-life.com/articles/dx8faq/
http://www.siggraph.org/education/materials/HyperVis/vistech/volume/surface4.htm

Maybe your aproaching the limit of visible water or something...

WooF! WooF!

Re: What are "waterindices"?
Jun 6th 2005, 23:51
Apprentice

Post: #3
Reply to: #2

Joined: 16th Dec 2004
From: United States
Posts: 189

These are indices that are stored to represent various tessellations that vbsp does. When they were first created they were only used to subdivide water meshes (that's why they are often referred to as water indices). In HL2, they are only used to fix cracks in the world. Normally each face is fan-tessellated, so no indices are stored, but with several t-junctions on the face's edges this is often not possible and a separate tessellation is generated and stored.

It has nothing to do with shaders or any limitations there.


Jay

Re: What are "waterindices"?
Jun 9th 2005, 03:39
Novice

Post: #4
Reply to: #3

Joined: 5th Mar 2005
From:
Posts: 313

Thank you Jay!

I'm a little confused by your response, as I've received several differant answers to what t-junctions are. Is any of this information explained somewhere on the net, or do you just know this from your own experience with Source?

Thanks again,

Re: What are "waterindices"?
Jun 9th 2005, 05:26
Apprentice

Post: #5
Reply to: #4

Joined: 16th Dec 2004
From: United States
Posts: 189

t-junctions are edges with more than two collinear verts. This happens when dissimilar geometry meets sharing an edge, vbsp automatically adds all verts along the edge to each polygon sharing the edge to avoid cracks. vbsp has a -notjunc option that will skip this process, but that will leave you with cracks in your level. You probably want the t-junctions fixed. Cracks usually look like sparkling edges (bright pixels in the skybox showing through).

There are several references on t-junctions online as it's a general problem when processing geometry for any rendering engine. It's not unique to anything specifically in Source.


Jay

Re: What are "waterindices"?
Dec 11th 2005, 17:55
Bearcub

Post: #6
Reply to: #5

Joined: 10th Dec 2005
From: Belgium
Posts: 4

I have the same problem:
waterindices 57018/65536 114036/131072 (87.0 VERY FULL!
But how can i use this -notjunc option in the expert compile mode? i tried but i think i dit it wrong because i still have too many waterindices.
And is that the only solution to this problem? or is there another way to reduce the amount of waterindices?

Re: What are "waterindices"?
Dec 12th 2005, 02:24
Bearcub

Post: #7
Reply to: #6

Joined: 10th Dec 2004
From:
Posts: 33

@Dema: Jay said "It has nothing to do with shaders or any limitations there. " Unless something bad actually happens when you hit 100%, I think you can safely ignore this as per what Jay said.

http://parashift.com/c++-faq-lite/
http://againsttcpa.com/what-is-tcpa.html
http://research.att.com/~bs , cgsociety.org
over-yonder.net/~fullermd/rants , acronyms.ch

Re: What are "waterindices"?
Dec 12th 2005, 12:09
Bearcub

Post: #8
Reply to: #7

Joined: 10th Dec 2005
From: Belgium
Posts: 4

I can't ignore it anymore, because when it's over 80%, my map fails to load in CS:S.
So i have to find a solution to keep it under 80%.

Re: What are "waterindices"?
Dec 12th 2005, 12:58
Sage

Avatar

Post: #9
Reply to: #8

Joined: 30th Jan 2005
From: United States
Posts: 4146

...Dema, is this a CS:S Surf map by chance?

Not at all SDK Code related, correct? Engine related problem?

SDK Nuts

Re: What are "waterindices"?
Dec 12th 2005, 17:29
Bearcub

Post: #10
Reply to: #9

Joined: 10th Dec 2005
From: Belgium
Posts: 4

surf map? euhm, no just a normal map with some houses.

What kind of problem? it could be an engine problem. I dunno, i'm not very advanced in mapping.
The only thing i know is that when i hide some things, waterindices is under 80% and my map works.
If u think it's helpfull to post my compile code, i'll do that.
So anybody any idea what i should do?

Message last edited by Dema on Dec 13th 2005 at 16:48.

Page 1 of 1. Covering 10 Post(s). Viewed 4579 times.
Previous 1 Next
Jump to Board