Request: _decal target


(Matt) #1

Or something like _decal style…

I’m thinking about really high detailed terrain, and I thought about how much easier it would be to place things like patches of dirt, or a little stone path, or something if I just used _decal, the only problem is, decal will pass through everything.

If we had a _decalstyle and say your terrain is set up like

_decalstyle “terrain”

and the _decals are set up as

_decal
_decaltarget “terrain”

Then it wouldn’t hit say, a house or a tree that’s on the terrain, just the ground itself.

I think everyone would benefit from this.


(ydnar) #2

That’s a great idea. Not too hard, either.

I’ll see what I can do…

y


(Matt) #3

Seriously man, it’s too bad you chose an opensource route because you’d be so rich from Q3Map2… I’d pay for your stuff, to be honest.

Set up a paypal account and see what happens.


(Valhue2) #4

Me slaps Matt w/ rotten Trout… but realizes that Matt lives in Phx too… Me retreats back out of the sun to work on PC tan!

Common now… Paypal? Hopefully ydnar shoudnt get that desperate. If he does, then he should apply for a job in the games industry and get paid for it that way.

V^2


(ydnar) #5

Had a PayPal account for ages. If you really, really want to, you can donate to the ydnar beer fund.

:beer:


(SCDS_reyalP) #6

If id hadn’t gone the opensource route, ydnar would never have got a chance to touch q3map. :poke:

Anyway, it was my impression that he has a job in the games industry, with some obscure company in the UK. :moo:


(damocles) #7

To expand the idea, how about a target/targetname kind of approach. Say you target the _decal entity to a func_group or terrain group etc (any brushwork entity) and it only applies itself to the targetted entity. If the target is a null then it does the usual projection.


(Emon) #8

I have another idea. How about a func_* with a key like “decalShadow” where all shadows cast on the object become decals, and are merged with the entity? Then you could have shadows move with entities without the hassle of making your own decal. I can’t see it being that hard, either.


(chavo_one) #9

I was wondering about this, by the way, because ydnar’s name is no longer on the SD employee’s page, and he hasn’t had a SD avatar for a while now. Ydnar, I imagine you’re doing work for all of the Id partners now?


(Matt) #10

That’s not needed, the original thing I posted in the first post, would do all that work.

One thing I wanted this for, was to do large cloud shadows going across multiple surfaces, without having to add lines to every shader.


(ydnar) #11

That’s not needed, the original thing I posted in the first post, would do all that work.

One thing I wanted this for, was to do large cloud shadows going across multiple surfaces, without having to add lines to every shader.[/quote]

Well, you’d actually want to add lines to your shaders. Projecting a decal over large amounts of surfaces will double the amount of geometry to store and draw. One additional shader pass is the cheapest way to do it.

y


(Emon) #12

Bu’twat about the lightmap decalizer?


(Hewster) #13

mm me like this idea a lot :slight_smile:


(Matt) #14

That’s not needed, the original thing I posted in the first post, would do all that work.

One thing I wanted this for, was to do large cloud shadows going across multiple surfaces, without having to add lines to every shader.[/quote]

Well, you’d actually want to add lines to your shaders. Projecting a decal over large amounts of surfaces will double the amount of geometry to store and draw. One additional shader pass is the cheapest way to do it.

y[/quote]

That wouldn’t be the same thing at all, and for some scenarios, I would sacrifice FPS for the effect.

Look at it this way:

If I wanted to project cloud shadows over the entire map, and I wanted them to be distorted in some areas (like on steep slopes) then I would NEED to do it as a decal projection. Otherwise, it would literally take years to properly stretch and position each shader, where the decal would do it correctly. Also, if I only wanted those cloud shadows on buildings, but not the terrain around them, I could group them and have the decal be targeted only at them. Get it?


(rgoer) #15

If lightmap shadows were converted to _decal entities, then you could get “static” shadows falling onto dynamic-but-stationary brush entities, like func_rotating entities. That could be cool, maybe. Could also be a huge pain in the ass.


(ydnar) #16

To do interesting projected cloud texture effects on certain areas of a map, try using tcGen vector.

y