SetActorInvisibleFor ACS function

Moderator: GZDoom Developers

Post Reply
Uberkreatur
Posts: 27
Joined: Fri Dec 26, 2014 10:54 am
Location: Russia

SetActorInvisibleFor ACS function

Post by Uberkreatur »

SetActorInvisibleFor (tid, tid of selected player)
SetActorVisibleFor (tid, tid of selected player)
Makes actor visible/invisible directly for selected player.

In combination with this algorithm it can easily solve the problem with 3D positioning of overlapping models. For example, tank turret exists in two copies at the same place. First copy draws always above the base, second always below the base. Changing their visibility for the several players we can achieve, that each player will see correct position of models depending self position.

This way is possible to make complicated vertical voxel structures, which will always shown correctly even in multiplayer.
Also, this can make some solipsistic features to the diffirent players.
User avatar
Graf Zahl
Lead GZDoom+Raze Developer
Lead GZDoom+Raze Developer
Posts: 49223
Joined: Sat Jul 19, 2003 10:19 am
Location: Germany

Re: SetActorInvisibleFor ACS function

Post by Graf Zahl »

Oh yes, a hack feature to get around an engine limitation.
I'll leave this for someone else to decide but I won't touch it.
User avatar
Nash
 
 
Posts: 17484
Joined: Mon Oct 27, 2003 12:07 am
Location: Kuala Lumpur, Malaysia
Contact:

Re: SetActorInvisibleFor ACS function

Post by Nash »

The proper way to do this is via visibility filtering so I would say this thread is a Duplicate... :D
Uberkreatur
Posts: 27
Joined: Fri Dec 26, 2014 10:54 am
Location: Russia

Re: SetActorInvisibleFor ACS function

Post by Uberkreatur »

Graf Zahl wrote:Oh yes, a hack feature to get around an engine limitation.
I'll leave this for someone else to decide but I won't touch it.
You say that like it's a bad thing.
Once 3d-bridges, stacked sectors and Transfer_Heights fake floors was also "hack features to get around an engine limitation". But they opened new horizons for zdoom maps.
Nash wrote:The proper way to do this is via visibility filtering so I would say this thread is a Duplicate... :D
Interesting. Visibility filter by pointer is not so comfortable than filter by TID, but theoretically this can be used too.
User avatar
Graf Zahl
Lead GZDoom+Raze Developer
Lead GZDoom+Raze Developer
Posts: 49223
Joined: Sat Jul 19, 2003 10:19 am
Location: Germany

Re: SetActorInvisibleFor ACS function

Post by Graf Zahl »

Uberkreatur wrote: Once 3d-bridges, stacked sectors and Transfer_Heights fake floors was also "hack features to get around an engine limitation". But they opened new horizons for zdoom maps.
With 'Hack feature' I mean something that has no value in itself but is solely motivated by its capability to use it for hacky workarounds of other problems.

This doesn't apply to any of the three you mentioned.
Uberkreatur
Posts: 27
Joined: Fri Dec 26, 2014 10:54 am
Location: Russia

Re: SetActorInvisibleFor ACS function

Post by Uberkreatur »

Graf Zahl wrote:With 'Hack feature' I mean something that has no value in itself
But it has.
Here, for example, people try to invent advanced visibility filter for other purposes. For custom weapon spawners, multiplayer modes with individual objectives, player "speed trails", etc. Just I'm interested in the voxel overlapping hack mainly, but visibility filter by tid is very multifunctional feature.
Post Reply

Return to “Closed Feature Suggestions [GZDoom]”