Polyobjects
Moderator: GZDoom Developers
Polyobjects
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
- Kinsie
- Posts: 7399
- Joined: Fri Oct 22, 2004 9:22 am
- Graphics Processor: nVidia with Vulkan support
- Location: MAP33
- Contact:
Re: Polyobjects
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.
Re: Polyobjects
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...
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...
- Major Cooke
- Posts: 8175
- Joined: Sun Jan 28, 2007 3:55 pm
- Preferred Pronouns: He/Him
- Location: QZDoom Maintenance Team
Re: Polyobjects
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.
Stuff like that is impossible with map-made polyobjects.
Re: Polyobjects
^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.
- Kinsie
- Posts: 7399
- Joined: Fri Oct 22, 2004 9:22 am
- Graphics Processor: nVidia with Vulkan support
- Location: MAP33
- Contact:
Re: Polyobjects
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.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...
- Major Cooke
- Posts: 8175
- Joined: Sun Jan 28, 2007 3:55 pm
- Preferred Pronouns: He/Him
- Location: QZDoom Maintenance Team
Re: Polyobjects
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.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.
Re: Polyobjects
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.Major Cooke wrote: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.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.
- Major Cooke
- Posts: 8175
- Joined: Sun Jan 28, 2007 3:55 pm
- Preferred Pronouns: He/Him
- Location: QZDoom Maintenance Team
Re: Polyobjects
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.
But if you're talking about actor-on-map geometry, yeah, that wouldn't work at all.