Game Development Community

Vis Blocker!

by TalRasha · in Artist Corner · 06/01/2002 (9:52 am) · 30 replies

How can i make vis blocker?
Page«First 1 2 Next»
#21
06/06/2002 (12:24 pm)
So, what did you do?
Did it help FPS?
Any other noticeable changes?

Just for curiousity's sake.

Glad you got it working.
#22
06/06/2002 (1:48 pm)
TalRasha the official one

irc server url: www.maxgaming.net
channel: #garagegames

You could also use the java chat irc client (its on the community block of this site)
#23
06/30/2002 (11:22 pm)
I guess I'm confused about a few things after reading this...

Here's how I understood portals to work under Torque: Portals are used to define areas. When compiling, map2dif[m2d] calculates where you can see from anywhere inside an area [as it is defined by the portals]. Say it's calculating 'portal LOS' for Area A. If you cannot see into another area [Area B] without crossing a portal, then Area B is not drawn whenever the player is inside Area A. If you CAN see into another area [Area C], then whenever you enter Area A, the engine draws all of Area A and Area C.

Assuming this is how portals work, if I covered the bottom exterior hull of my .dif with the null texture, then since the exterior is always Portal Area 0 [as I understood it], then that would basically be a leak, drawing large portions [if not all] of my interior while I was standing outside of it. It would not leak from the inside, however. Is that correct?

So here's another question....does a face covered with the null texture split other faces? [esp. other faces covered with the null texture]? i.e. if one or more of the vertices lie along a face or edge instead of sharing a point with the vertices of another face. What if the faces are hidden and share the same plane?
#24
07/09/2002 (4:04 pm)
Okay, nevermind about the face splitting...I think I have that figured out now. But the exterior null texture is an interesting point...a vis blocker would prevent me from have to paint faces that would never be visible to the player with an actual texture. I am currently making some caves, and I am using the trisoup method, which is going to create HUGE problems for me with this whole 'no-visblocker only portals' approach.

Actually what I need is a texture that says 'This face is a vis-blocker, but discard it after the compile'.

Unless someone who fully understands the great new 'portal-only' method can tell me a good way around my problem with the caves.
#25
07/09/2002 (7:23 pm)
I'm afraid I'm not familliar with the trisoup method.

Have you read Desmond's tutorial, for which a link is provided above? It's quite good.

I guess I'm lucky in that I never dealt with vis-blockers. It sounds like you need to leave that world behind and come to the lighter side. ;)

Without knowing more, all I can suggest is to either read, or re-read Desmond's tuts and any info you might find in Resources or Forums. The only things you really need be concerned about with portals are A)No Leaks and B)No Leaks. ;) Well, a bit more complex than that, but the portal walls DO disappear and are passable once the maps are compiled.
#26
07/09/2002 (8:18 pm)
Okay, the trisoup method is constructing an interior out of 4 sided brushes [the simplest 3 dimensional shape possible]. This is done for speed and ease of construction. Constructing natural looking caves without it is very difficult at best.

Well, if I am going to make an interior in Torque, it also has to have an exterior, right? The problem then is that since the only tool available to control rendering is portal brushes, I have to texture the 'outside' surfaces, and live with the fact that the entire exterior of my cave complex will be rendering whenever the player gets close to it, even parts that are never visible to the player [underground parts].

LOD helps this from a distance, and creating a 'shell' with a simpler poly count for the underground and/or non-visible areas is a sloppy, but unfortunate, solution...currently the only one that I can think of. I guess I'm hoping for someone to tell me a better way, or show me something I am missing.

Also, I have read DFs guide at the link above. He says, as do others, that faces painted with the null texture are discarded at compile time. This is misleading and not entirely true. Faces painted with the null texture are not rendered in the engine, and are disregarded during certain phases of the compile [namely the creation of the VIS table, which creates the problem I mentioned above], but during the CSG process [which I understand to be the creation of player navigable space], they ARE present. To test this, simply create a block with the null texture and place it in a hallway.

Just looking for some clarification and some answers here.
#27
07/09/2002 (11:25 pm)
I did some more testing, and this is a problem, but only when the interior is viewed from certain angles [though it's still a problem], namely from an angle facing an 'outer' portal, or a portal that seperates the exterior from the interior. By moving around in front of it, I was able to get the entire level [the underground parts that should NOT have been visible] to appear and disappear.
#28
07/10/2002 (4:13 pm)
Christopher, you are correct about the NULL textured faces/brushes: they do remain as part of the collision hull AND they do split the surfaces they touch. So they will increase the surface count of surfaces they touch unless they are added as detail brushes (which makes no sense).
Are you trying to have two separate shells for the cave? One inside and one outside? If the inner shell has a portaled entry to the outside world, I don't believe the outer shell will be rendered when you're inside. If the non-visible faces of the inner and outer shell are NULL, they won't be rendered either. In this case, I'm not sure they'd be added to the collision hull either since they are never accessible or visible.

I'm assuming you are using tetrahedrons (trisoup?) to create the cave walls with only the innermost face with a non-NULL texture? But perhaps you have other "boulders" coming out of the walls? Make those detail brushes but don't let them penetrate the shell or you might break the zone created by the portal. Being detail they won't subdivide surfaces they touch either.

Another option you have is to "cut" through the terrain (set an empty square) for the cavern entrance. You shouldn't need the outer shell in this case. But it does raise another issue on how to design the entrance since the terrain will be visible through the portal until you get inside the portal. An "L" shaped entrance is one solution. By the time you round the corner you are past the terrain boundary and also through the portal (underground).

In any case, I'll look over my tut and correct anything that is apparently "misleading." Thanks for calling that to my attention.

I did discover another problem in looking this over that I don't think used to be: adding a collision brush messes up the collision hull now; the floors/walls lose their collision surface if a collision brush is in the dif. hmmmm--something new to investigate.

Let me know if this answered anything for you -- I'm not fully sure I understand your problem.
#29
07/11/2002 (2:54 pm)
Desmond,

Yes, I used the trisoup method, and I have an 'L' ['S' actually] shaped entrance. No outer shell. I have 3 interior portal areas defined, and the outer surfaces are not the problem I thought they would initially be [see below]. So it's okay to plaint the underground [yes, I just have the mouth at a hole in the terrain] with the null texture.

However, one problem still remains...while approaching the outside portal from various angles [usually head on], I am able to get 'inner' areas of the interior to flicker in and out of view...basically it is rendering interior areas as if you can see the portal, when in fact you cannot. It is picky about the camera placement,but the error does exist. If you don't know of this problem, I can send you both the .dif and the .map files so you can play around with it and see for yourself.
#30
07/11/2002 (3:49 pm)
Why do you have the mouth of the cave with a NULL texture--that's probably why you're getting the vis problem.

And yes, I'd be glad to look over the .map.
Page«First 1 2 Next»