Noclip2 behavior

Post a reply

Smilies
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :geek: :ugeek: :!: :?: :idea: :arrow: :| :mrgreen: :3: :wub: >:( :blergh:
View more smilies

BBCode is OFF
Smilies are ON

Topic review
   

Expand view Topic review: Noclip2 behavior

Re: Noclip2 behavior

by Hypersonic » Sun Feb 25, 2018 12:00 pm

Every time I switch between Doom and Quake I always think about how cool it would be too have total noclip freedom in Doom. Perhaps the reason why Quake lacks a map mode is because you can simply noclip outside the map and whala, you're in map mode!

https://www.youtube.com/watch?v=wRFTca35CkA
Noclip in Darkplaces where you can see items from outside the map. Only 1080p because I can't get 4k working properly in Darkplaces. Mouse control is jittery, unlike the smooth control in Quakespasm and GZDoom.

Re: Noclip2 behavior

by Hypersonic » Sat Oct 21, 2017 2:19 pm

Are the crashes always logged? Seems that something called DoomSpecificInfo is called on a crash, defined in i_main.cpp

https://github.com/coelckers/gzdoom/blo ... i_main.cpp
int main (int argc, char **argv)
{
#if !defined (__APPLE__)
{
int s[4] = { SIGSEGV, SIGILL, SIGFPE, SIGBUS };
cc_install_handlers(argc, argv, 4, s, GAMENAMELOWERCASE "-crash.log", DoomSpecificInfo);
}

There seems to also be a win32 version of DoomSpecificInfo (though this returns void rather than int, and takes slightly difference parameters)
https://github.com/coelckers/gzdoom/blo ... i_main.cpp

The data currently logged might not help pinpoint the problem, but if it is called it should be possible to add more debugging data to the log which may help track down the problem(s). Maybe enter 'kill monsters' into the console to factor out monster targeting issues.

Re: Noclip2 behavior

by Rachael » Sat Oct 21, 2017 12:42 pm

Yeah, that's not going to stop the crashes. If you discover a way, feel free to post a code patch, though.

Re: Noclip2 behavior

by Hypersonic » Sat Oct 21, 2017 12:29 pm

Rachael wrote:The view was still clipping to the floor/ceiling planes, and it also crashed. Those were the more apparent problems, at least. I never even bothered to look at the issues that may have been deeper in the code.
Perhaps skip this section when in noclip2 mode (Though I'm not sure if this code branch, coelckers, is the one you're working with.)

https://github.com/coelckers/gzdoom/blo ... portal.cpp
// Don't let the viewpoint be too close to a floor or ceiling
double floorh = origin->Sector->floorplane.ZatPoint(origin->Pos());
double ceilh = origin->Sector->ceilingplane.ZatPoint(origin->Pos());
if (r_viewpoint.Pos.Z < floorh + 4) r_viewpoint.Pos.Z = floorh + 4;
if (r_viewpoint.Pos.Z > ceilh - 4) r_viewpoint.Pos.Z = ceilh - 4;

Apparently you're always in a sector, even when you don't appear to be. When outside of the map your position clips to a floor or ceiling of a nearby sector (if that sector has lava you can get burnt even when it appears you're outside of the map.)

Re: Noclip2 behavior

by Hypersonic » Sun Aug 20, 2017 11:38 am

Doom builder 2 has a visual 3D mode allowing you to hover anywhere over the map (or over and to the side) with any yaw/pitch angle. Can even set essentially infinite view distance.Would be nice to do while playing GZDoom as well.

Re: Noclip2 behavior

by Hypersonic » Mon Aug 14, 2017 3:13 pm

Being able to view the map from any position was one of the coolest aspects of noclip in Quake. You can already step outside the map from the side in GZDoom and it'll still render everything (monsters and items included.) I don't see how stepping outside of the map from above or below would be a problem.

Perhaps a temporary hack could be made; when you're in a sector while noclipping through the ceiling raise the ceiling sky high and don't draw the walls of that sector, then lower back once you leave the sector. Not ideal, but I think it would be a good start on figuring out a way to make it work properly.

Re: Noclip2 behavior

by Rachael » Fri May 19, 2017 7:42 am

That was in GL mode. I didn't look at it in Software.

Re: Noclip2 behavior

by Gez » Fri May 19, 2017 7:37 am

What about in GL mode?

Re: Noclip2 behavior

by Rachael » Fri May 19, 2017 7:33 am

The view was still clipping to the floor/ceiling planes, and it also crashed. Those were the more apparent problems, at least. I never even bothered to look at the issues that may have been deeper in the code.

Re: Noclip2 behavior

by Gez » Fri May 19, 2017 6:56 am

What were the problems exactly? Knowing that 1. it's a cheat, 2. the regular noclip is still around, and 3. noclipping has always caused visible glitches so it's a fully accepted part of the deal if it doesn't look good.

Re: Noclip2 behavior

by Rachael » Fri May 19, 2017 6:26 am

Purely out of my own interest, I went ahead and coded a version of this that allowed me to pass through sector floors/ceilings and saw very quickly why Randi coded it the way she did.

Suffice to say, there's some work to be done before true Quake-style noclipping can become a reality. :(

Re: Noclip2 behavior

by Xaser » Thu Apr 13, 2017 6:38 pm

Oh huh. There's a blast from the past. :P

Yeah, trying this out, I'm indeed a bit dismayed that I can't cross the map's vertical boundaries. Seems Randi caught the "3d floors" use case but missed the earlier bit.

Re: Noclip2 behavior

by JPL » Thu Apr 13, 2017 3:09 pm

JPL wrote:
Bauul wrote: I think we'd all love the idea of being able to sail high above a map and view it all in it's entirety, but I wonder instead whether most of the map wouldn't be rendered.
Yeah, this is how it works in most engines that do this... memories of seeing entire Bioshock maps as I noclipped to a spot for testing. It's a debug command, so I think that's fine.
Worth pointing out that with the current noclip2 behavior, in a great many larger maps you can already see a lot of the total map geo if you're flying around out past the map's boundaries. Again it's a debug command so there shouldn't be any of the usual performance considerations.

Re: Noclip2 behavior

by JPL » Tue Apr 11, 2017 3:01 pm

Bauul wrote:Wouldn't there also be the issue that the renderer would still presume you were inside the sector's ceiling/floor gap and only render the stuff you could see from that seg?

I think we'd all love the idea of being able to sail high above a map and view it all in it's entirety, but I wonder instead whether most of the map wouldn't be rendered.
Yeah, this is how it works in most engines that do this... memories of seeing entire Bioshock maps as I noclipped to a spot for testing. It's a debug command, so I think that's fine.

Re: Noclip2 behavior

by Bauul » Tue Apr 11, 2017 1:47 pm

Wouldn't there also be the issue that the renderer would still presume you were inside the sector's ceiling/floor gap and only render the stuff you could see from that seg?

I think we'd all love the idea of being able to sail high above a map and view it all in it's entirety, but I wonder instead whether most of the map wouldn't be rendered.

Top