Jump to content
Search In
  • More options...
Find results that contain...
Find results in...
ketmar

k8vavoom: no good thing ever dies!

Recommended Posts

No, portals are neither supported nor planned. People have been pestering ketmar about it since 2019 and the answer has always been no. :p

Share this post


Link to post
7 hours ago, boris said:

Played a round a bit and made a small test map. It's really impressive how the polyobjs have no problem interacting with other gemoetry, flawlessly overlapping it.

 

 

I noticed that PolyObj_MoveToSpot doesn't work correctly with 3D polyobjs , it doesn't move them on the z axis. Is that intentional? The new PolyObj_MoveToSpotEx works, of course, but it seems slightly buggy. In that video you can see one platform move in a diagonal line. It's actually supposed to move between 4 spots in a clockwise order, but the position checks seem to do something wrong. When I move the map spots slightly on the y and z axes it suddenly works (but then the positions are off, of course).

And even that diagonal movement doesn't seem correct, movement on the x/y axes seems too fast compared to the z axis, so that the final x/y position is reached before the z position is reached.

 

Example map attached.

3dpolyobj.zip

As from now I no longer consider moving on build engine...

 

Could there be dynamic slopes?

Share this post


Link to post
10 hours ago, boris said:

Played a round a bit and made a small test map.

yay! can i include your map (with proper credits) into the next release? and if yes, how do you want to be credited? (because my demo maps really sux.)

 

10 hours ago, boris said:

I noticed that PolyObj_MoveToSpot doesn't work correctly with 3D polyobjs , it doesn't move them on the z axis. Is that intentional?

yes. i decided to not change the old API in any way. it may be logical to extend it for 3d pobjs, but i don't feel that it is The Right Thing. we have alot of free ACSF numbers after all (and no central registry for them, oops).

 

10 hours ago, boris said:

The new PolyObj_MoveToSpotEx works, of course, but it seems slightly buggy.

yeah, that is totally possible. that part of the code wasn't properly tested. tbh, i just ran out of steam at that point, and decided that people here will test it for me anyway. ;-) thank you for your map and reports, i'll take a look, and try to fix it all!

 

also, saving/loading with vertically moved 3d pobj is not working right in the build. it was a last-minute change to 3d pobj specs, and i forgot to fix the loading code. the saves are not broken, it is the faulty loader. it is already fixed.

 

 

7 hours ago, SyntherAugustus said:

Is there portal support in this port?

@Gez is absolutely right. i consider portals a misfeature that turns engine code into a mess (GZDoom still has bugs with portals, after all those years!) for a gimmick of questionable value. Boom silent teleports already allow creating some complex and strange places, and they are much less intrusive code-wise.

 

 

3 hours ago, SilverMiner said:

As from now I no longer consider moving on build engine...

i hope to deliver even more! and hey, Build cannot do such beautiful lighting! ;-)

 

3 hours ago, SilverMiner said:

Could there be dynamic slopes?

yes, this feature is planned. i need to clean up (and partially rewrite) sector height management code first, so don't expect it in a week or something, but the feature is definitely planned, and will be implemented. both dynamic slopes, and 3d pobjs with slopes.

 

at least i hope that i'll be able to implement it. ;-) so far i don't see any fatal blockers, but don't take my words as a 100% guarantee, i need to finish my research first. let's say that the probability is around 90% now. ;-)

Edited by ketmar : small typos

Share this post


Link to post
35 minutes ago, ketmar said:

yay! can i include your map (with proper credits) into the next release? and if yes, how do you want to be credited? (because my demo maps really sux.)

Sure, go ahead. You can credit me simply as "boris".

Share this post


Link to post
43 minutes ago, ketmar said:

Boom silent teleports already allow creating some complex and strange places, and they are much less intrusive code-wise. 

I was kinda thinking how the Doom source ports are kinda the Perl of game engines the other day: there's always more than one way to do everything.

Share this post


Link to post

as we now have floor decals, i thought, "why not?"

 

Spoiler

yw0drd.png

 

i3j67p.png

 

je9qc0.png

 

p.s.: yes, exactly what you may think. cheap and automatic with gore mod. ;-)

Share this post


Link to post

can't resist the temptation. yeah, on 3d polyobjects too.

Spoiler

gmy3ew.png

 

slightly better, now each new one will be less and less opaque. looks much better this way, i think.

Share this post


Link to post

3d polyobjects, huh...

Out of curiosity, how advanced are they going to be in comparison to, say, Sonic Robo Blast 2?

Share this post


Link to post
40 minutes ago, Danfun64 said:

Out of curiosity, how advanced are they going to be in comparison to, say, Sonic Robo Blast 2?

dunno. i know that they have 3d pobjs in their engine, but i never looked at their implementation. in k8vavoom, you can build complex 3d structures from simplier 3d pobjs, and those structures can be moved as a whole. there are some quirks and small bugs yet, but basically you can build things like, for example, railway cars, and ride inside them (just don't add excessive details ;-). just look at "cabin" example maps provided with the build -- that thing is built from several 3d pobjs.

 

standing inside rotating complex structure is still buggy, tho (you can stuck inside it), but i hope to eventually fix that. so yes, it will be possible to create a "real train", for example, that will carry the player to several subway stations, for example, without any teleport cheats. maybe even a van that will ride in and carry monsters inside (and it can hit the player to death too). ;-)

 

of course, the feature is still experimental, and people will definitely find bugs in the implementation, but it Mostly Works. ;-)

 

the implementation is quite fast, and it doesn't matter how many such objects are on the map (only their size and detailing). keep detail level to something reasonable, and don't spam with alot of such objects at close proximity, and it should be fine.

 

p.s.: currently, you can't have slopes on 3d pobjs, but i hope to implement that in the future. also, 3d pobjs can be rotated only in xy plane (the same as "normal" polyobjects), and this won't change.

Edited by ketmar

Share this post


Link to post
3 minutes ago, ketmar said:

in k8vavoom, you can build complex 3d structures from simplier 3d pobjs, and those structures can be moved as a whole. there are some quirks and small bugs yet, but basically you can build things like, for example, railway cars, and ride inside them (just don't add excessive details ;-). just look at "cabin" example maps provided with the build -- that thing is built from several 3d pobjs.

 

standing inside rotating complex structure is still buggy, tho (you can stuck inside it), but i hope to eventually fix that. so yes, it will be possible to create a "real train", for example, that will carry the player to several subway stations, for example, without any teleport cheats. maybe even a van that will ride in and carry monsters inside (and it can hit the player to death too). ;-)

 

of course, the feature is still experimental, and people will definitely find bugs in the implementation, but it Mostly Works. ;-)

 

the implementation is quite fast, and it doesn't matter how many such objects are on the map (only their size and detailing). keep detail level to something reasonable, and don't spam with alot of such objects at close proximity, and it should be fine.

 

a quick question. with such advance implementation of pobjs in k8vavoom, would such maps made for k8vavoom still be backward compatible with, say, gzdoom 4.5.0?

Share this post


Link to post
8 minutes ago, terminator said:

a quick question. with such advance implementation of pobjs in k8vavoom, would such maps made for k8vavoom still be backward compatible with, say, gzdoom 4.5.0?

nope, because GZDoom doesn't support 3d polyobjects at all. i tried to make the specs as clear as i could, tho, so any engine dev could implement this feature in compatible way. of course, different engines have wildly different internals, so it won't be possible to simply copypaste my code (i have nothing against that, tho).

 

but until other engines join the crowd (of k8vavoom ;-), such maps will load, but 3d pobjs simply won't spawn. the engine should ignore unknown ACSFs too, because there is some new ACS API for 3d pobjs.

Share this post


Link to post

An overview of SRB2's pobj capabilities can be found on their wiki: https://wiki.srb2.org/wiki/PolyObject

 

There's no reason to attempt a compatible implementation because SRB2 maps are not going to be loadable anyway, but the parent/child system seems interesting. That way a moving bridge could get railings, for example.

Share this post


Link to post
1 hour ago, Gez said:

but the parent/child system seems interesting

that's kinda what i implemented too. only in k8vavoom it is strictly linear chain, i.e. you can link pobj #1 to pobj #2, pobj #2 to pobj #3, and so on. then you can move/rotate pobj #1, and other pobjs will follow atomically (i.e. as if they are the one complex polyobject). that's how "cabin" example was created. also, 3d pobj top texture can be made impassable, and it will be rendered as kind of "railings".

 

also:

Quote

However, they should never collide with each other or static walls, which will lead to rendering errors. They can move across sector boundaries, but visual glitches may occur if a PolyObject moves into a sector with different properties from the one in which it spawned. PolyObjects should always be convex, since concave PolyObjects are rendered incorrectly, but this can be circumvented by splitting the concave object into multiple convex PolyObjects.

k8vavoom doesn't have such limitations (because i don't need to support software renderer). 3d pobj can contain several closed contours of any shape (but without self-intersections), and 3d pobjs can move freely, even inside the static map geometry.

 

also, in k8vavoom it is impossible to create 3d pobj without flats (yet SRB2 seems to support such configuration). both engines doesn't support transparent/translucent flats and sides, tho (at least this is what i understood from SRB2 wiki).

 

so it seems that k8vavoom 3d pobjs are slightly more advanced then SRB2, but not by a huge margin.

 

there are no way (yet? ;-) to trigger any line special/ACS action when landing on 3d pobj in k8vavoom, tho.

 

quickfix: SRB2 seems to allow transparency. i'm not sure if i'll implement it, tho.

Edited by ketmar

Share this post


Link to post

oops. despite my best efforts, the Space Ants just don't want to go! there was off-by-one bug in t-junction fixer, and some Space Ants slipped through the cracks. tbh, i wonder why it worked at all. ;-)

Share this post


Link to post
On 5/21/2021 at 10:45 PM, Redneckerz said:

Just want to say thank you for this :) I appreciate things like these coming out of the woodwork from developers such as yourself. Ill try it out on my phone (Snapdragon 460 based/Adreno 610) these days.

Thanks for testing. :)

I also test it on older and newer hardware. Vavoom works pretty good even on phone from 2011.

Share this post


Link to post

fun thing: Vavoom had some terrain options for footsteps, but there was no actual implementation.

 

so i implemented "player landing sound", "player footstep sound", and "player bootprints". i even wrote the specs for it! ;-)

 

the specs are not final yet, but they will be finalized for the next public build.

 

just for fun, i added liquid detection for vanilla maps, both with sounds and bootprints. of course, you can turn that detection off in the gameplay options menu, as usual.

Share this post


Link to post

Hey, so I tried downloading the latest May 11 build of K8Vavoom, but when I start it up I get this error, and the engine crashes.
 

OpenGL: cannot create depth/stencil renderbuffer storage, error: invalid enum

K8Vavoom also tells me that my PC reports that it has OpenGL 3.3 for some reason, even though it only has 2.1, and I don't even know how I'd make it report a different version.

I've attached the full conlog.log file below, with my user account name removed.

conlog.zip

Share this post


Link to post
3 hours ago, inkoalawetrust said:

Hey, so I tried downloading the latest May 11 build of K8Vavoom, but when I start it up I get this error, and the engine crashes.

ah, known bug in Intel drivers: they're reporting what they can't do, and then failing. if you'll look closer, you'll see this:

Error: OpenGL: your GPU drivers are absolutely broken.
Error: OpenGL: reported OpenGL version is v30000.30000, which is nonsence.
Error: OpenGL: expect crashes and visual glitches (if the engine will run at all).

that's NOT 3.3, that's exactly what is written, with all zeroes. and the engine itself says that it is a nonsense (albeit with a typo ;-). then driver reports FBO features it doesn't really have, and failing when the engine tries to use those.

 

(what is actually going on is the driver plainly refusing to report ANY OpenGL version at all -- i.e. even the simpliest API of version checking is already broken; don't expect anything else to work right.)

 

sadly, there is nothing i can do with that. it's not the fist report about broken Intel drivers. i tried to find a solution, but nothing's worked, those drivers are just FUBARed.

 

p.s.: reported OpenGL version is purely informative, the engine does proper feature detection... if the driver is willing to cooperate, of course. ;-)

 

p.p.s.: for those interested in more technical side of things: the driver cannot create FBO object with depth buffer and stencil buffer (even depth16/stencil8). it doesn't matter which configuration of depth/stencil i asked, the driver refused to create any. and the engine needs FBO with both those things to work. sadly, at this point of development, non-FBO rendering is not possible (not even by turning off features).

Edited by ketmar

Share this post


Link to post

also, if anybody's interested, #k8vavoom on OFTC IRC is official.

 

p.s.: added it to the OP. you can use WebChat interface to connect to OFTC if you don't have IRC client.

Edited by ketmar

Share this post


Link to post
11 minutes ago, ketmar said:

also, if anybody's interested, #k8vavoom on OFTC IRC is official.

wouldn't it make more sense to have a discord server?

Share this post


Link to post
On 5/23/2021 at 12:43 PM, boris said:

I noticed that PolyObj_MoveToSpot doesn't work correctly with 3D polyobjs

should be fixed with the next build. thank you!

Share this post


Link to post
1 hour ago, Obsidian Plague said:

wouldn't it make more sense to have a discord server?

sorry, but i'm not using discord (and other proprietary/centralized chat networks). also, i cannot run discord server, because discord server code is not FOSS. ;-)

 

anyway, i just wanted to tell people that they can reach me via IRC if they like to, and don't want to register at DW.

Share this post


Link to post
4 hours ago, ketmar said:

ah, known bug in Intel drivers: they're reporting what they can't do, and then failing. if you'll look closer, you'll see this:


Error: OpenGL: your GPU drivers are absolutely broken.
Error: OpenGL: reported OpenGL version is v30000.30000, which is nonsence.
Error: OpenGL: expect crashes and visual glitches (if the engine will run at all).

that's NOT 3.3, that's exactly what is written, with all zeroes. and the engine itself says that it is a nonsense (albeit with a typo ;-). then driver reports FBO features it doesn't really have, and failing when the engine tries to use those.

 

(what is actually going on is the driver plainly refusing to report ANY OpenGL version at all -- i.e. even the simpliest API of version checking is already broken; don't expect anything else to work right.)

 

sadly, there is nothing i can do with that. it's not the fist report about broken Intel drivers. i tried to find a solution, but nothing's worked, those drivers are just FUBARed.

 

p.s.: reported OpenGL version is purely informative, the engine does proper feature detection... if the driver is willing to cooperate, of course. ;-)

 

p.p.s.: for those interested in more technical side of things: the driver cannot create FBO object with depth buffer and stencil buffer (even depth16/stencil8). it doesn't matter which configuration of depth/stencil i asked, the driver refused to create any. and the engine needs FBO with both those things to work. sadly, at this point of development, non-FBO rendering is not possible (not even by turning off features).

 

So there's nothing I can do to run K8Vavoom on my computer then ? Would trying to reinstall the drivers not work ?

 

12 minutes ago, ketmar said:

sorry, but i'm not using discord (and other proprietary/centralized chat networks). also, i cannot run discord server, because discord server code is not FOSS. ;-)

 

anyway, i just wanted to tell people that they can reach me via IRC if they like to, and don't want to register at DW.


It would probably be a better idea to make a Discord server, since it's more likely attract more people into the server itself and K8Vavoom in general.

Share this post


Link to post
20 minutes ago, inkoalawetrust said:

So there's nothing I can do to run K8Vavoom on my computer then ?

sorry, it looks like that. it's sad, because your GPU can run the engine (at least with lightmaps), it is powerful enough. but driver bugs prevents it.

 

20 minutes ago, inkoalawetrust said:

Would trying to reinstall the drivers not work ?

alas. they aren't broken by some accident, they were badly coded by Intel. i.e. the installation package already contains broken drivers. (p.s.: if there is a more recent version of the drivers, though, you may try to install it. but i'm almost sure that there is none. sorry.)

 

20 minutes ago, inkoalawetrust said:

It would probably be a better idea to make a Discord server, since it's more likely attract more people into the server itself and K8Vavoom in general.

as i said, it's more about giving people some alternate way to reach me than about attracting more people. don't get me wrong, please, i want to have more k8vavoom users, but there are only so much things i can do. i'd better keep coding and improving the engine, and let's hope that people will eventually self-organise in some way. ;-)

 

besides, discord bloatware won't even run on my box, and they explicitly forbid creating alternative client implementations (yes, i'm using IRC client i wrote from the scratch, because this is the only way to make it work exactly as i want to ;-).

Edited by ketmar

Share this post


Link to post
1 hour ago, ketmar said:

besides, discord bloatware won't even run on my box, and they explicitly forbid creating alternative client implementations (yes, i'm using IRC client i wrote from the scratch, because this is the only way to make it work exactly as i want to ;-). 

Could always make a Matrix server. The newer Go-based server implementation is a lot easier to get set up (imo). Buuuuut.... IRC is also more known.

Share this post


Link to post
1 hour ago, ketmar said:

besides, discord bloatware won't even run on my box, and they explicitly forbid creating alternative client implementations (yes, i'm using IRC client i wrote from the scratch, because this is the only way to make it work exactly as i want to ;-).

 

I doubt Discord wouldn't be able to run on your computer, seeing as it can run even run on mine except for that one time that it bricked a Xubuntu Live USB

On the subject of K8Vavoom again, I do currently have access to a PC with OpenGL 4.6 (Or rather one without fucked Intel drivers.) so I ran K8Vavoom on it instead, and I noticed that there are some severe graphical glitches where polygons flicker in and out for split seconds with a light blue color on them. I tried some options like changing around the renderer for the level but they didn't seem to help stop the polygon flicking.

Here is a video I recorded from my phone showing the glitch on MAP02.*

 

Another bug I noticed is that summoning a rocket with the summon command just makes it stand still, inactive and uninteractable. 


Also I have a few suggestions.

  • K8Vavoom should have and option to have sky strips like the ones in the vanilla games slowly fade as you look further up, until the top has faded into the sky textures' dominant color, similar to ZDoom, since the current method where every pixel at the top and bottom of the image are taken and stretched until they reach the center top and bottom of the sky sphere look really weird.
  • It would be nice to have some more ZDoom commands or alternatives to them, for example I tried using the changemap command to go to a map without losing my inventory, but it doesn't support it. And when I went ahead to record the glitch above on MAP02, I went to it using the map console command, but I couldn't just type give all or noclip to give myself all items and noclip respectively, so I just had to use the vanilla IDCLIP cheat. So it would be nice to have the give <inventory item/weapon name> command in K8Vavoom to make stuff like debugging maps and mods easier.



*I had to record the screen with my phone because for some reason the XBox Game Bar has screen capture disabled on this computer, and OBS needs a supercomputer cluster to record the screen without the exported video just freezing after a few seconds.

Share this post


Link to post
34 minutes ago, Remilia Scarlet said:

Go-based

arrrr. negative arrrr. ;-)

 

32 minutes ago, inkoalawetrust said:

I doubt Discord wouldn't be able to run on your computer, seeing as it can run even run on mine

it is written by brainless monkeys. it doesn't.

 

32 minutes ago, inkoalawetrust said:

On the subject of K8Vavoom again, I do currently have access to a PC with OpenGL 4.6 (Or rather one without fucked Intel drivers.) so I ran K8Vavoom on it instead, and I noticed that there are some severe graphical glitches where polygons flicker in and out for split seconds

isn't it an AMD GPU by chance? ;-)

also, could you please try to turn off decals (with "r_decals 0", for example), and check if it makes the glitch go away?

 

tbh, i haven't the slightest idea why it glitches that way. it should either not work at all, or work flawlessly. the only reason could be yet another OpenGL driver implementation bug. k8vavoom rendering pipeline is quite... unusual and different from what modern games do, and it can hit some obscure bugs in vendor's OpenGL implementation.

 

also, some screen capturing/enhancing software may interfere too.

 

32 minutes ago, inkoalawetrust said:

K8Vavoom should have and option to have sky strips like the ones in the vanilla games slowly fade as you look further up, until the top has faded into the sky textures' dominant color, similar to ZDoom

long ago i choose to not implement this. Vavoom is not ZDoom, not even a fork. it does some things in its own unique way, and i'd like to leave it as that. sorry.

 

32 minutes ago, inkoalawetrust said:

It would be nice to have some more ZDoom commands or alternatives to them

and here, the same reason as the above. ;-)

 

32 minutes ago, inkoalawetrust said:

So it would be nice to have the give <inventory item/weapon name> command in K8Vavoom

it is called "gimme". and it's slightly more powerful than GZDoom "give". "noclip" is there, tho. but please note that those commands only available "in game", they doesn't work (and won't be autocompleted) unless you started the game.

 

instead of "gimme all" (which really gives everything, including all powerups), you can use "gimme arsenal" to get all weapons and max ammo for them, and "gimme keys" to get keys. the autocompletion with tab works for command arguments too, so you can type "gi"<tab>, and then <tab> again to see available options.

 

we need to have a documentation on console commands, though. there is "cmdlist" console command to list them all, but most of the commands don't have any help yet (and you'd better don't try them blindly, some of them can even crash the engine ;-).

 

btw, to finish the current map, you can use "TeleportNewMapEx +" command.

 

p.s.: and thank you for your reports! sorry for inconveniences. i really appreciate your help and your opinions. most of the time i willing to implement features people are asking for, but there are some things i don't want/don't like to change. you just managed to precisely hit some of them. but it doesn't mean that i will reject any other your suggestions! ;-)

 

p.p.s.: gfx glitches are hardest to fix, because i usually cannot reproduce them on my box (otherwise they won't survive to the public builds ;-). i am really sorry. it may be my fault too, of course, hidden by nVidia OpenGL drivers.

Edited by ketmar

Share this post


Link to post
Guest
This topic is now closed to further replies.
×