Build 7326
SVN-
fix use of uninitialized values
-
Generale
Fix a couple minor issues with 90 degree wall texture rotation
Nickname SVN e nomi Git sono unificati per persona.
fix use of uninitialized values
Fix a couple minor issues with 90 degree wall texture rotation
Fix missing/invalid palswaps and shades in automap with Polymost
Patch from Nuke.YKT.
add wall point delete hotkey. Press shift+delete or the d key in 2d mode to delete a wall point without dragging it.
Change the hotkeys for adjusting the camera horiz in Mapster32 3d mode from ctrl + a / z to alt + a / z to avoid conflicts with the undo hotkey
Enable undo/redo in Mapster32 3d mode. Not incredibly well tested.
Fix issue where the option to enable or disable Polymer wasn't being saved properly
Revert "engine.cpp/.h: clean up & fix lintersect(). Additionally, add support for finding intersections of collinear line segments."
This reverts r6886.
Fix issue with editor not allowing wall and floor aligned sprites to be resized in 2d mode without textured view mode enabled
This should fix the too many sprites spawned issue in single player
Change A_AddToDeleteQueue() to call A_DeleteSprite() on sprites it removes from the queue directly, as sprites with statnums other than STAT_ACTOR and STAT_MISC are not deleted automatically when their xrepeat is 0. This fixes using CON_INSERTSPRITEQ with sprites of statnums other than STAT_ACTOR and STAT_MISC.
- Packet code implementation (merge from private c/s repo), world updates are now synced through snapshots. See tag SVN_SyncPoint_Dec2018 on master of the other repo.
- "Scratch pad" sprites implementation, to avoid desyncs in sprite indexes, clients will insert temporary sprites which are cleared out when they receive the next snapshot from the server. - Patches from Striker which fix player stomping frag counts, the accept button when hosting a game through the menu, and a "noffire" command line parameter. - Patches from NY00123: t_data sync optimizations to improve some jittery behavior on the client side.
Fix oversight with wall texture rotation on tile 0
CON syntax extension: the empty "[]" shortcut for accessing a struct at index THISACTOR can now be omitted.
This allows cleaner syntax such as "geta .x temp", "ife sprite.x temp", etc.
WIP wall texture rotation bit
stop playing sounds when entering the tile selector in 3d mode
Fix Polymer checkbox not showing up in the startup window in Visual Studio builds
Direct struct access for tsprite, and break special gamevar access out of Gv_GetVar() and into a separate function like it already was with Gv_GetVarX()
This is supposed to fix some errors with HIGH_PRECISION_SPRITE reported by a static analyzer, wherein 32-bit values were shifted and truncated as 32-bit before being widened to a 64-bit type, which didn't seem like the intended behavior. This is the commit to look at if anything is suddenly fucked up in the classic software renderer.
Rename the implementation of _lrotl() found at the top of kplib.cpp to klrotl() and use it unconditionally on platforms other than Win32 (it's only used in .bmp rendering).
Add CSTAT_SPRITE_ALIGNMENT_MASK. It's identical to CSTAT_SPRITE_ALIGNMENT_SLAB, but should be used in cases where you're checking either CSTAT_SPRITE_ALIGNMENT_WALL or CSTAT_SPRITE_ALIGNMENT_FLOOR rather than checking for a slab (voxel).
Update engine headers so that argument names in function declarations match the actual function definitions. This also removes const from function declarations in cases when it isn't meaningful.
Same sort of thing as the previous commits, but for the engine. Forward declaration cleanup and constification.
engine.cpp: fix crash when calling `setrendermode 3` where PolymostProcessVoxels would be called before Polymost is initialized.
PolymostProcessVoxels would call videoNextPage during processing which would attempt to render the OSD and lead to a segfault due to Polymost not being properly initialized.
polymost.cpp: temporarily disable experimental r_enablepolymost2 cvar
polymost.h: fix order of parameters to match polymost.cpp
polymost.cpp: fix lockup bug that would occur with polymost_waitForSubBuffer() when glClientWaitSync consistently returned GL_WAIT_FAILED on certain hardware/drivers.
Additionally, fix conditional check for r_persistentStreamBuffer requirements in polymost_glinit().
Further revise a couple of null pointer checks in Polymost
Fix potential OOB spriteext[] access when checking SPREXT_NOTMD to determine whether or not to render a sprite's model, if available
Tweak osdfunc_setrendermode() to report whether the classic renderer is the C or ASM version
Fix overcomputation in the classic renderer due to a bug caused by a previous optimization attempt
Fix issue in the C version of the classic renderer where someone had attempted to negate a bool
Fix potential null pointer dereferences when rendering a model with no animations (?)
Apply the same autoaim Z position offsetting logic used on GREENSLIME and ROTATEGUN to any sprite with CSTAT_SPRITE_YCENTER set
Remove redundant code from Polymost fog
Patch from Fox.
polymost.cpp/glsurface.cpp: Don't print shader compile status to the console on success.