Polyobjects

Remember, just because you request it, that doesn't mean you'll get it.

Moderator: GZDoom Developers

Ostap
Posts: 2
Joined: Mon Jun 18, 2018 12:16 pm

Polyobjects

Post by Ostap »

It would be good if you would make polyobjects on which you could sit and move horizontally. Like on quake elevators. not only up and down. Back and forward
User avatar
Kinsie
Posts: 7293
Joined: Fri Oct 22, 2004 9:22 am
Discord: Find Me...
Twitch ID: thekinsie
Location: MAP33

Re: Polyobjects

Post by Kinsie »

This has been wanted for quite a long time, but as with all things that would be cool, it's not necessarily that easy. Especially since polyobjects are strange and arcane creatures on account of how Raven implemented them in Hexen.
Gez
 
 
Posts: 17632
Joined: Fri Jul 06, 2007 3:22 pm

Re: Polyobjects

Post by Gez »

Technically you can, but it's quite complex and, in fact, it's more complex than attempting to replicate the effect with an actor IIRC. Gooberman made some experimentations with the concept:
https://www.doomworld.com/idgames/prefabs/floordmo
https://www.doomworld.com/idgames/prefabs/flordmo2
https://www.doomworld.com/idgames/prefabs/flordmo3

Something that would be handled on the native side would probably be simpler to use for the average modder, but you need to find a developer willing to implement it...
User avatar
Major Cooke
Posts: 8055
Joined: Sun Jan 28, 2007 3:55 pm

Re: Polyobjects

Post by Major Cooke »

With an actor and a 3D model, you can make the platform and all who are upon it do other things such as turning, tilting or rolling if programmed in ZScript correctly, though that's more advanced topics.

Stuff like that is impossible with map-made polyobjects.
User avatar
Cherno
Posts: 1279
Joined: Tue Dec 06, 2016 11:25 am

Re: Polyobjects

Post by Cherno »

^This would only really work with rectangular objects which are also aligned along the world's xy axis, due to the way Doom handles actor hitboxes.
User avatar
Kinsie
Posts: 7293
Joined: Fri Oct 22, 2004 9:22 am
Discord: Find Me...
Twitch ID: thekinsie
Location: MAP33

Re: Polyobjects

Post by Kinsie »

Gez wrote:Technically you can, but it's quite complex and, in fact, it's more complex than attempting to replicate the effect with an actor IIRC. Gooberman made some experimentations with the concept:
https://www.doomworld.com/idgames/prefabs/floordmo
https://www.doomworld.com/idgames/prefabs/flordmo2
https://www.doomworld.com/idgames/prefabs/flordmo3

Something that would be handled on the native side would probably be simpler to use for the average modder, but you need to find a developer willing to implement it...
I believe there are other hacky ways now, too, that basically involve creating a polyobject where one or more sides are portals, but this is buggy and will absolutely cause the engine developers to swear a blood-vendetta against you.
User avatar
Major Cooke
Posts: 8055
Joined: Sun Jan 28, 2007 3:55 pm

Re: Polyobjects

Post by Major Cooke »

Cherno wrote:^This would only really work with rectangular objects which are also aligned along the world's xy axis, due to the way Doom handles actor hitboxes.


CanCollideWith virtual. You can basically define your own type of hitbox in a way using that, but it only works for actors and not actual map collision.
User avatar
Cherno
Posts: 1279
Joined: Tue Dec 06, 2016 11:25 am

Re: Polyobjects

Post by Cherno »

Major Cooke wrote:
Cherno wrote:^This would only really work with rectangular objects which are also aligned along the world's xy axis, due to the way Doom handles actor hitboxes.


CanCollideWith virtual. You can basically define your own type of hitbox in a way using that, but it only works for actors and not actual map collision.


I have used CanCollideWith in the past but I fail to see how it would help registering collisions of a, let's say, triangular or disk-shaped platform.
User avatar
Major Cooke
Posts: 8055
Joined: Sun Jan 28, 2007 3:55 pm

Re: Polyobjects

Post by Major Cooke »

If we're talking with actor-on-actor collision, it's fairly trivial to make one cylindrical or even spherical (by using Distance3DSquared instead of 2D). But again, only if it's actors doing the colliding. Naturally, you'll have to code the hitbox collision shape to match.

But if you're talking about actor-on-map geometry, yeah, that wouldn't work at all.

Return to “Feature Suggestions”