alexey.lysiuk
fc8eaab57b
Fixed crash in dynamic lights compatibility renderer
...
Reproduces using -iwad plutonia -file brutalv20b.pk3 +map map07
2016-06-29 12:21:39 +02:00
Christoph Oelckers
17c212d5bc
- disable transparent door render hacks if any of the involved sectors contains floor slopes.
...
These lead to false positives but rarely represent actual hacks.
2016-06-29 12:19:00 +02:00
Christoph Oelckers
a99ff71d18
Merge branch 'master' of c:\programming\doom-dev\zdoom
2016-06-27 12:01:48 +02:00
Christoph Oelckers
8e3263a433
- fixed return value inversion of FS's ceilingheight and floorheight functions.
2016-06-27 12:01:11 +02:00
Christoph Oelckers
96272fc8b8
- removed unused cruft in FS code.
2016-06-22 13:37:35 +02:00
Christoph Oelckers
4e1c53af91
- fixed FraggleScript's resurrect function to call AActor::Revive to ensure that everything gets reset.
2016-06-22 13:35:03 +02:00
Christoph Oelckers
af20f31b94
Merge branch 'master' of https://github.com/rheit/zdoom
2016-06-21 10:46:12 +02:00
Christoph Oelckers
4899c405c3
- fixed: all non-ZDoom compatibility profiles need compat_maskedmidtex set.
...
This was neither fixed in Boom nor MBF.
2016-06-21 10:45:17 +02:00
MajorCooke
613fa4c9e4
Fixed: GetDistance was missing the original Z check disabling introduced in commit bd16ccb
.
2016-06-21 10:14:25 +02:00
MajorCooke
9df65f73fc
Localized the input checker into P_Thing_CheckInputNum now called by both ACS and DECORATE..
2016-06-20 09:41:46 -05:00
MajorCooke
26408a5043
Switched the pointer to AAPTR_DEFAULT.
2016-06-20 09:11:38 -05:00
MajorCooke
85a34bbb88
Added GetPlayerInput(int numinput, int ptr = AAPTR_PLAYER1).
...
- Works exactly like the ACS version, but with pointers instead. The pointer can be anything, so long as it can be identified as a player.
2016-06-20 08:49:57 -05:00
Edoardo Prezioso
6384e81d0f
- Add support for Skulltag ACS IsNetworkGame.
...
Once known as PlayerOnTeam, then it became IsMultiplayer, but Skulltag code ignored emulated multiplayer, hence the new and clearer name.
2016-06-20 09:34:41 +02:00
MajorCooke
e02ed3a6f7
Take in the targeter layers if someone disables the safety and uses 0 for start and stop.
2016-06-20 01:15:51 +02:00
MajorCooke
ecfa7415b3
This small change was left out by mistake.
2016-06-20 01:15:51 +02:00
MajorCooke
30880aab79
And a bit more optimization...
2016-06-20 01:15:50 +02:00
MajorCooke
2b91db7b3a
Refactored A_ClearOverlays.
2016-06-20 01:15:50 +02:00
MajorCooke
dd410876cf
Added A_ClearOverlays(int start, int stop, bool safety).
...
- Clears a set of overlays in ranges [start,stop]. If unspecified, wipes all non-hardcoded layers. Safety determines whether to affect core layers or not (i.e. weapon). Returns the number of layers cleared.
Added no override boolean to A_Overlay and a boolean return type.
- If true, and a layer already has an active layer, the function returns false. Otherwise, sets the layer and returns true.
2016-06-20 01:15:49 +02:00
Edoardo Prezioso
2f6c98ead3
- Added support for old Skulltag ACS PlayerTeam.
2016-06-19 22:57:42 +02:00
Edoardo Prezioso
de55d693f9
- Fixed ACS Singleplayer for non-net multiplayer.
2016-06-19 12:59:46 +02:00
Christoph Oelckers
8cf150e68a
- set up portal rotations in the finalizing step, not during initialization.
...
Anything earlier may miss some information required to do this correctly.
2016-06-19 12:40:38 +02:00
Christoph Oelckers
da05dfa72e
fixed: Polyobject-based line portals may not cache their angle as it may change at any time.
2016-06-19 12:32:45 +02:00
Edoardo Prezioso
4e148f00e6
- Fixed wrong Skulltag ConsoleCommand pcode name.
...
Also report this pcode as not supported by the program.
2016-06-19 12:01:29 +02:00
Christoph Oelckers
b364926e93
Merge branch 'master' of https://github.com/rheit/zdoom
2016-06-19 11:53:17 +02:00
Christoph Oelckers
cebd877191
- fixed the center point calculation for triangular sectors.
...
The old method does not work as expected with the higher precision of doubles, so instead just average the 3 vertex positions to get the triangle's center.
2016-06-19 11:48:20 +02:00
alexey.lysiuk
2813a22740
Fixed inconsistent state of lights in compatibility renderer
2016-06-19 11:19:31 +03:00
Christoph Oelckers
7b99c883e1
- use the exact same semantics and methods to handle player visibility as in the software renderer.
...
This fixes invisible player sprites in recursive line portals.
2016-06-18 12:14:20 +02:00
Christoph Oelckers
849ee50689
Merge branch 'master' of https://github.com/rheit/zdoom
2016-06-18 10:01:44 +02:00
Christoph Oelckers
87d27b8db3
- fixed some crash issues with recent changes.
2016-06-18 10:01:24 +02:00
Edoardo Prezioso
56508a2d82
- Avoid issues with misused Strife actions.
2016-06-17 23:09:34 +02:00
Leonard2
24c73071f4
Fixed a crash with A_JumpIfNoAmmo
...
Non-weapon layers can pass the caller check even when there is no ReadyWeapon
2016-06-17 18:36:57 +02:00
Leonard2
68c483c041
Renamed the weapon action function caller check to ACTION_CALL_FROM_PSPRITE to avoid confusion
...
This was always checking for every psprites rather than just weapon layers
2016-06-17 18:36:57 +02:00
Leonard2
abc7113e09
Removed the INSTATECALL flag because it is now unused and was replaced by stateinfo
2016-06-17 18:36:57 +02:00
Christoph Oelckers
92e2ce2aef
- adjustments for weapon rendering in GL.
...
This adds support for the new weapon state code and fixed some lighting calculations.
Note that this currently will not allow combination of HUD models with other sprite frames yet.
2016-06-17 17:21:42 +02:00
Christoph Oelckers
b7d13c0711
Merge branch 'master' of https://github.com/rheit/zdoom
2016-06-17 16:18:24 +02:00
Christoph Oelckers
8ca07443f1
- fixed: Sprite splitting at 3D floors must set the fog parameters for the new light level.
2016-06-17 16:16:31 +02:00
Christoph Oelckers
05fabbe294
- fixed: G_InitNew may only clear the hub statistics when it is not called during loading of a savegame.
2016-06-17 16:14:58 +02:00
Christoph Oelckers
2c928a2cda
- fixed: Strife's firehands' coordinates need WEAPONTOP being added because it cannot be taken from the main weapon layer which no longer exists when the hands appear.
2016-06-17 15:26:00 +02:00
Christoph Oelckers
018615ca0d
- fixed weapon-based Psprite adjustment to always use the weapon this was called from and make non-weapon specific checks only exclude the targeter.
2016-06-17 14:14:35 +02:00
Edoardo Prezioso
574f2936d4
- Fixed GCC/Clang compiler errors and warnings.
2016-06-17 10:19:03 +02:00
Christoph Oelckers
cfaa3e3fa9
- changed action function interface so that callers can be identified directly, instead of guessing it from looking at the parameters.
...
With arbitrary PSP layers the old method was no longer safe because the layer ID was not available in the action function.
2016-06-16 16:16:27 +02:00
Christoph Oelckers
7ccdbf9b62
Merge branch 'PSprites'
2016-06-16 16:16:16 +02:00
MajorCooke
c9f4620702
Reimplemented P_SetPsprite.
2016-06-16 07:24:00 -05:00
Xaser Acheron
de0301a704
split bfg self-damage code into its own function, A_RadiusDamageSelf
2016-06-16 00:43:07 +02:00
Xaser Acheron
481ef7a5b5
added SMMU-BFG11k-style 'damrad' property to A_BFGSpray
2016-06-16 00:43:07 +02:00
Xaser Acheron
8e8248284a
added BFGF_HURTSOURCE and BFGF_MISSILEORIGIN to A_BFGSpray
2016-06-16 00:43:06 +02:00
MajorCooke
2d4eb8dde4
- Added limit parameter to A_RailAttack and A_CustomRailgun.
2016-06-14 18:20:43 -05:00
Christoph Oelckers
f1597a5d26
- fixed: Trace should set CrossedWater only if a water surface actually is crossed, i.e. the start of the trace and the end of the trace are on different sides of the surface.
...
This was incorrectly spawning splashes when shooting inside a deep water sector, but in most cases the splash just was not visible. It could become visible if its position got clipped by a nearby one-sided wall.
2016-06-13 21:30:58 +02:00
MajorCooke
82bc5e7bd1
Fixed wrong token for Light keyword.
2016-06-13 09:50:12 -05:00
Christoph Oelckers
d74584e5b2
- fixed: DAnimatedDoor must not start an interpolation on the door sector's ceiling.
2016-06-13 13:58:39 +02:00
Braden Obrzut
624c935385
- Fixed: Floating point conversion error in SBarInfo DrawBar which broke interpolation.
2016-06-12 06:28:50 -04:00
Christoph Oelckers
b8e392eaa5
- do not try to load empty BEHAVIOR lumps.
...
These would otherwise print an error message but there's a lot of maps out there which only have an empty entry to mark the map as Hexen format.
2016-06-12 11:45:25 +02:00
Christoph Oelckers
373c59f924
- fixed inverse sign for rocket trail particle movement.
2016-06-12 00:05:23 +02:00
Christoph Oelckers
db2cef96d6
- removed unnecessary FLOAT2FIXED call in particle code.
2016-06-11 23:43:07 +02:00
MajorCooke
4c8028d64b
- Fixed a discrepancy with A_FaceMovementDirection involving pitch adjustments going the wrong way both in motion, and standing still.
2016-06-11 14:07:27 -05:00
Christoph Oelckers
9eb18a9e45
Merge branch 'master' of https://github.com/rheit/zdoom
2016-06-11 17:15:55 +02:00
MajorCooke
fb286d1737
- Changed endsize to sizestep. Endsize affected more things than I thought it would.
2016-06-11 08:05:29 -05:00
Leonard2
ebe3f23677
Added GetCVar(string name)
...
Works like ACS's GetCVar
2016-06-11 10:15:49 +02:00
MajorCooke
d8bf958a06
Fixed: Frozen particles would still be deleted when frozen instead of doing nothing with.
2016-06-11 10:00:50 +02:00
MajorCooke
f787056198
- Added endsize parameter and SPF_NOTIMEFREEZE for A_SpawnParticle.
...
SPF_NOTIMEFREEZE processes particles with this flag regardless of time freeze. The endsize parameter changes the scale of the particle to that size throughout its lifetime linearly.
2016-06-11 10:00:50 +02:00
Christoph Oelckers
c4d8950a7f
- fixed: APROP_Friction was missing a 'break'.
2016-06-10 13:23:23 +02:00
Christoph Oelckers
ef86b3975a
- added 'strictdecorate' CVAR. If this is set to 'true', any DECORATE error that had to be demoted to a warning for backwards compatibility will be treated as an actual error.
2016-06-08 10:56:11 +02:00
Christoph Oelckers
cf21bb1524
- reinstated abort-on-error for any problem that gets reported during DECORATE code generation.
...
- fixed: DECORATE allowed a silent conversion from names to integers.
In old versions the name was converted to 0, since the scripting branch to the name index. Reverted to the old behavior but added a warning message.
2016-06-08 10:46:35 +02:00
Christoph Oelckers
1703842a94
- fixed some issues with teleport fog:
...
* many calls didn't use TELEFOGHEIGHT, mostly those coming from external code submissions that never were tested on anything but Doom. Addressed by adding this value inside P_SpawnTeleportFog and making the distinction between projectiles and non-projectiles from P_Teleport also part of this function.
* there were still a few places which spawned the teleport fog directly, skipping all the added features of P_SpawnTeleportFog.
2016-06-06 10:48:40 +02:00
MajorCooke
b2d2389343
Fixed: Slanted flat + roll sprites didn't take DONTFLIP into account.
2016-06-05 15:51:23 -05:00
MajorCooke
53837de17d
Added DONTFLIP flag.
...
- By default, when viewing a flat sprite from behind, the image is flipped around on the X axis. This may not always be desired, so this flag disables it.
2016-06-05 15:21:19 -05:00
MajorCooke
e58c6de7d6
DONTFLIP flag prevents the backside from flipping over.
2016-06-05 15:14:40 -05:00
alexey.lysiuk
56ce6abbc2
Fixed splitting of walls in compatibility renderer
...
Any wall adjacent to 3D floor sector were not rendered at all
2016-06-05 12:38:23 +03:00
Christoph Oelckers
8a08fb2f6a
- fixed nullptr/bool mixup.
2016-06-04 20:52:56 +02:00
Leonard2
0b88bae458
The strife firehands now make proper use of the psprite layers
2016-06-03 19:46:31 +02:00
Leonard2
afa708c138
Allow psprite layers to be manipulated directly from the player's own body
2016-06-03 19:18:58 +02:00
Leonard2
eeff17c550
Account for this on the renderer's side instead
...
This fixes the weapon's layer behaving differently when called from
A_Overlay (the flag would be set in this case breaking the offsets)
2016-06-03 00:50:12 +02:00
Leonard2
543414d31f
Added 2 new layer flags: PSPF_CVARFAST and PSPF_POWDOUBLE
...
These flags allowed to easily restore a lost part of the targeter layers
behavior
2016-06-03 00:50:11 +02:00
Leonard2
bc334ccc9f
Avoid creating the targeter layers if the inventory item isn't attached to
...
its owner yet
2016-06-03 00:50:11 +02:00
Leonard2
e1f139ddcd
The targeter layers now use a proper Caller
...
This will avoid having to check for certain stuff and also allow them to not be destroyed when the ReadyWeapon is null like before
2016-06-03 00:50:10 +02:00
Leonard2
8244d2c844
Make sure never to call GetPSprite when the ReadyWeapon is null
2016-06-03 00:37:55 +02:00
Leonard2
9ee5e57340
Call GetPSprite here to update the ReadyWeapon but avoid doing so if it
...
is null
TickPSprites will take care of destroying the weapon/flash layers if the
ReadyWeapon is null
2016-06-03 00:37:54 +02:00
Leonard2
f14a840777
The ReadyWeapon is now assumed to not be null
2016-06-03 00:37:54 +02:00
Leonard2
8668719bbc
Revert "- re-added P_SetPSrite."
...
This reverts commit e6d89b9f71
.
2016-06-02 20:02:03 +02:00
Leonard2
d933f77bf5
Fixed: the game could crash if some inventory items were destroyed in a
...
certain way
2016-06-02 20:00:22 +02:00
Christoph Oelckers
2afadb0108
- fixed: ADehackedPickup was missing NULL pointer checks in nearly all methods that used RealPickup.
...
Some DECORATE hacks make it possible that this does not contain a valid pointer when these methods are called.
2016-06-01 23:41:34 +02:00
Christoph Oelckers
18ebe92cfc
Merge branch 'master' of https://github.com/rheit/zdoom
...
# Conflicts:
# src/g_level.cpp
2016-06-01 11:45:57 +02:00
Christoph Oelckers
26a15d0ccc
- delete thinkers before starting to restore the savegame data to avoid interference of the old thinkers' Destroy() method with the newly loaded data.
...
Note that even with this change it is still not possible to unarchive any thinker pointers before the thinker list has been loaded as it would create broken lists.
2016-06-01 11:43:56 +02:00
Christoph Oelckers
978e522fb4
- fixed: portal-related sound calculations offset the sound in the wrong direction.
2016-06-01 11:14:25 +02:00
Christoph Oelckers
14e4a64c82
- fixed: Destroying a SkyViewpoint disabled all sector portals.
2016-06-01 10:10:18 +02:00
alexey.lysiuk
5348a15b75
Added option to control dynamic loading of OpenAL
...
Dynamic loading is enabled by default, set DYN_OPENAL to OFF to link with static or dynamic library
# Conflicts:
# src/sound/oalsound.cpp
# src/sound/oalsound.h
2016-05-29 14:25:04 +02:00
Edoardo Prezioso
243030046a
- Fixed issues with invalid GetMaxInventory calls.
2016-05-29 12:50:37 +02:00
Christoph Oelckers
44f09edf4c
- fixed: monsters cannot crouch, so their crouch factor has to be 1, as 0 would yield incorrect results if the value is used in subsequent calculations (e.g. adjusting a trajectory to a target which can be or may not be a player.)
2016-05-29 12:48:27 +02:00
MajorCooke
bb91723174
- Added GetCrouchFactor(ptr).
...
Gets the crouch factor of a player. Can be set to target/master/tracer, as long as it's a player. Defaults to the first player.
2016-05-29 12:43:46 +02:00
MajorCooke
2719905ade
- Added source and inflictor parameters to all A_Damage/Kill functions.
...
- Source is the actor to blame for the cause of damage (monster infighting for example). For missiles, modders should consider setting to AAPTR_TARGET.
- Inflictor is the actor doing the damage itself. Note that by changing this, it will take into account the flags on the pointed actor.
2016-05-29 12:40:17 +02:00
MajorCooke
33ddbe8ab3
Added SKYEXPLODE support for P_LineAttack on horizons.
2016-05-29 12:38:37 +02:00
Benjamin Moir
6633e41cca
added CheckProximity to ACS
2016-05-29 12:38:37 +02:00
alexey.lysiuk
89016020a8
Used ISO Latin 1 encoding for title text in startup window on OS X
...
Windows version uses ANSI_CHARSET to handle the corresponding text
This solves the problem like in https://github.com/alexey-lysiuk/gzdoom/issues/63 :
*** Assertion failure in -[NSTextFieldCell _objectValue:forString:errorDescription:], /Library/Caches/com.apple.xbs/Sources/AppKit/AppKit-1404.47/AppKit.subproj/NSCell.m:1684
Invalid parameter not satisfying: aString != nil
2016-05-29 10:58:12 +03:00
Christoph Oelckers
4940f0249d
Merge branch 'master' of https://github.com/rheit/zdoom
2016-05-28 20:33:29 +02:00
Christoph Oelckers
fc25a74a03
- fixed: In case of a crash the buffered console output was not dumped to the rich edit control so it never got into the crash log.
2016-05-28 20:11:19 +02:00
Leonard2
360ad7a844
Replaced every remaining instances of the old layer names
2016-05-28 01:19:42 +02:00
Leonard2
2f5ae3b51e
Changed the default layer indices and renamed them
...
Note that this doesn't compile yet
2016-05-28 01:19:41 +02:00
Leonard2
c82620129c
Added A_OverlayFlags
...
Allows psprites to follow the weapon and/or the player's bobbing
2016-05-28 01:19:40 +02:00
Christoph Oelckers
c0fe86028d
Merge branch 'master' of https://github.com/rheit/zdoom
2016-05-27 23:47:19 +02:00
Leonard2
8f360f3bea
Small refactor
2016-05-27 23:37:35 +02:00
Leonard2
b220db4ebe
Fixed: a layer's movements weren't interpolated in some cases
...
The old position members would be incorrectly updated if a layer sets another layer's offsets and this layer ticks before the other
2016-05-27 23:37:34 +02:00
Leonard2
bca9829950
Fixed: a few members weren't properly initialized
...
This could go wrong if a layer had only one state of -1 tics
2016-05-27 22:58:27 +02:00
Leonard2
599fa7cfd1
Fixed: it was no longer possible to set the flash state in the very first
...
weapon's state
This was due to an oversight in my first commit
2016-05-27 22:31:18 +02:00
Christoph Oelckers
d43ea33031
- fixed: A_CustomBulletAttack may not rely on the parameter default setter to get a valid puff. This must be checked explicitly in the functions body to ensure it is never NULL.
2016-05-27 11:39:44 +02:00
Christoph Oelckers
b926cf35d5
- fixed: The portal init code should only delete REJECT if there's actually some portals to consider.
2016-05-27 09:45:17 +02:00
Christoph Oelckers
19003a7973
- fixed: The node builder's FindMapBounds function included all vertices generated by the node builder.
...
This could cause problems on maps with bogus nodes so it's better to only check vertices that are referenced by a linedef.
2016-05-27 09:38:33 +02:00
Christoph Oelckers
34c67b9eae
- fixed: The NoiseList array was not cleared before use.
2016-05-27 00:00:27 +02:00
Christoph Oelckers
ded479b1a5
Merge branch 'master' of https://github.com/rheit/zdoom
2016-05-25 12:02:37 +02:00
Christoph Oelckers
cc685e982b
- fixed: interactive line portals were always deactivated, regardless of alignment type.
2016-05-25 11:36:23 +02:00
Christoph Oelckers
f241d9773a
- made P_NoiseAlert non-recursive to avoid stack overflow problems in large open-area maps with a high sector count.
2016-05-25 11:30:11 +02:00
Christoph Oelckers
72a3257400
- fixed: DIntermissionScreen::Init did not handle non-existent strings in the string table and crashed on a NULL pointer.
2016-05-25 01:45:55 +02:00
Christoph Oelckers
a0dc4ae738
Merge branch 'master' of https://github.com/rheit/zdoom
2016-05-24 13:53:52 +02:00
Christoph Oelckers
49234b1fc3
- fixed: UpdateRenderSectorList did some bad calculations for checking portal plane order.
2016-05-24 13:53:29 +02:00
Christoph Oelckers
e6d89b9f71
- re-added P_SetPSprite.
...
For debugging purposes it's better to have this as a function.
2016-05-24 13:05:43 +02:00
Christoph Oelckers
d058820c65
- fixed scroll speed calculation for Heretic.
2016-05-24 10:01:57 +02:00
Christoph Oelckers
d70601471a
- fixed the spawn position of Strife's sentinel's attack's trail.
2016-05-24 09:37:01 +02:00
Christoph Oelckers
3bde8824a3
- fixed A_Burst's velocity calculation.
2016-05-24 09:32:30 +02:00
MajorCooke
1b1195df6a
- Added limit parameter to A_RadiusGive.
...
- The function ends operation if the number of successfully given actors reaches this count.
2016-05-23 21:11:26 -05:00
alexey.lysiuk
aa6753383d
Fixed fullscreen mode on non-default monitor in OS X backend
...
Fullscreen window was incorrectly placed on the main screen instead of the current one
Honestly I have no idea what was the reason behind that [NSWindow setFrameOrigin:] call
Apparently it's redundant and moreover it's incorrect for multi-monitor configuration
2016-05-22 13:22:07 +03:00
Christoph Oelckers
ae31e0ba72
- changed the default key name string because '#' is used as a comment in the config files.
2016-05-22 12:20:46 +02:00
Christoph Oelckers
db944df467
- fixed 3D floor rendering with nearby slopes.
2016-05-22 12:15:14 +02:00
Christoph Oelckers
eed32ee285
- fixed: The friction calculations for terrain based friction had some fixed/float mixups.
2016-05-22 12:11:39 +02:00
Christoph Oelckers
e43c9826dd
Merge branch 'master' of https://github.com/rheit/zdoom
2016-05-22 09:31:48 +02:00
Christoph Oelckers
36dfa97802
- fixed: Polyobjects did not save their specialdata pointer.
...
- fixed: DMovePoly did not save its m_Speedv member.
# Conflicts:
# src/version.h
2016-05-22 01:27:05 +02:00
Christoph Oelckers
f184438032
- fixed: Polyobjects did not save their specialdata pointer.
...
- fixed: DMovePoly did not save its m_Speedv member.
2016-05-22 01:26:13 +02:00
Christoph Oelckers
d767d10322
- made PSprites submission GC aware.
2016-05-21 13:11:43 +02:00
Christoph Oelckers
4781b73d5b
Merge branch 'master' of https://github.com/rheit/zdoom
2016-05-21 01:09:21 +02:00
Leonard2
8c205ebac3
Added A_OverlayOffset
...
Like A_WeaponOffset except it can access any psprites
2016-05-20 17:04:45 +02:00
Leonard2
1ecfb5897b
Added A_Overlay
2016-05-20 17:04:45 +02:00
Leonard2
1966b61b8f
Generalized the psprites implementation
2016-05-20 17:04:44 +02:00
Christoph Oelckers
bd396ccb7c
- made P_Move's multiple-step movement portal and teleporter-aware.
2016-05-20 13:30:10 +02:00
Christoph Oelckers
428bd52295
- fixed: It was not possible to step through a ceiling portal into the upper sector.
2016-05-20 13:10:42 +02:00
Gaerzi
68c5191798
Add GOG path for SVE
...
Since GOG.com is finally offering this game.
2016-05-20 02:18:48 +02:00
Christoph Oelckers
5017a192eb
- fixed: The texture matrix was not reset after drawing the texture pass for multipass textured dynamic lights.
2016-05-19 12:22:39 +02:00
Christoph Oelckers
13da14e915
- disable dynamic lights on additively blended surfaces because it doesn't look good at all.
2016-05-18 22:20:18 +02:00
Christoph Oelckers
ea62d4c2d1
Merge branch 'master' of https://github.com/rheit/zdoom
2016-05-18 21:47:42 +02:00
Christoph Oelckers
78055733c8
- fixed: automap markers were scaled too small
2016-05-18 21:25:58 +02:00
Christoph Oelckers
f22adcc398
- be more thorough with Eternal Doom MAP03. The compatibility option does not seem to fully solve the problem, so let's just clear the tags in the bogus stair sectors.
2016-05-18 21:06:07 +02:00
Christoph Oelckers
9e0301c1a1
- prevent message spam with no MIDI devices.
2016-05-18 13:11:01 +02:00
Christoph Oelckers
7642c2cdaa
- fixed: Opening a non-existent menu left the engine in an invalid state.
2016-05-18 12:02:54 +02:00
Christoph Oelckers
3dcb05e5d2
- fixed: Lock #255 was inaccessible for LOCKDEFS.
2016-05-18 11:56:39 +02:00
Christoph Oelckers
a7fd04a235
Merge branch 'master' of https://github.com/kcat/zdoom
2016-05-18 11:48:27 +02:00
MajorCooke
115dbd0b58
- Added A_WeaponOffset(x = 0, y = 32, flags).
...
- Places the weapon offset by the defined x and y. Both are floats. This stacks with weapon bobbing.
- WOF_KEEPX: Don't change the X offset.
- WOF_KEEPY: Don't change the Y offset.
- WOF_ADD: Add onto instead of replacing the coordinates.
2016-05-18 11:19:24 +02:00
Christoph Oelckers
661c2e5919
- added missing NULL pointer check to ACS's CheckInventory.
2016-05-18 09:39:19 +02:00
Christoph Oelckers
362e21a6b3
- fixed: The pitch negation required for INHERITACTORPITCH was also applied to the one from PITCHFROMMOMENTUM.
2016-05-17 09:12:26 +02:00
Chris Robinson
fe966916d7
Set head-relative for sources near the listener
...
This matches the behavior of the FMOD backend
2016-05-16 17:02:39 -07:00
Christoph Oelckers
5e4be101f1
Merge branch 'master' of https://github.com/rheit/zdoom
2016-05-15 23:25:02 +02:00
Christoph Oelckers
9e847c252b
- fixed: When linking an actor into the blockmap multiple portal groups, AActor::LinkToWorld would delete the links to the previous nodes for each new group. This was causing random crashes when the affected actor was deleted by the garbage collector.
2016-05-15 23:24:30 +02:00
Christoph Oelckers
aff8b00575
- added NULL pointer checks to SpecialDropAction methods that call CheckLocalView.
2016-05-15 09:16:37 +02:00
Christoph Oelckers
6949afc334
- fixed: For allowing an unblocking move, PIT_CheckThing used the wrong actor's position. This was causing monster pile-ups with moving ceilings.
...
- don't let P_PushUp move any actors with the same z as the pushing actor. This should solve most monster pile-ups, but the entire logic here needs some serious rethinking. The only reason this doesn't cause more problems is some fudging in several other places.
2016-05-14 15:05:06 +02:00
Christoph Oelckers
52e19c59b3
Revert "- let gl_draw_sync default to false."
...
This reverts commit 616f84209b
.
Now I remember why this is not active: This is causing some problems with interpolated plane heights. Since there is no synchronization with the vertex buffer, the next frame will reset all plane coordinates before the GPU can use them. This will require some rethinking about when to update the buffer - it cannot be done in the render data setup loop.
2016-05-13 20:44:04 +02:00
Christoph Oelckers
03b31796cc
Merge branch 'master' of https://github.com/rheit/zdoom
2016-05-13 10:09:24 +02:00
Christoph Oelckers
ebca170e73
- fixed a few warnings in OpenAL code.
2016-05-13 10:07:18 +02:00
Christoph Oelckers
cd8213f067
- fixed: The skybox pointer in FSectorPortal must at least be initialized to nullptr when the struct is deserialized, to avoid an access violation if the partially initialized data is used. This can happen when P_SerializeThinkers destroys the original thinkers that were created on map load.
...
- removed the sector loop for deleting skybox references in ASkyViewpoint::Destroy. Since this only refers to the sectorPortals array it is completely redundant as the following code will clear them just as well.
2016-05-13 10:07:01 +02:00
Christoph Oelckers
99bfc64af6
- another failed attempt to use GL_CLIP_PLANE. Leave it in because it's closer to what is needed than the old code.
2016-05-12 23:41:06 +02:00
MajorCooke
4998d4a84d
Use the direct pointer of P_PointInSector instead.
2016-05-12 22:15:06 +02:00
MajorCooke
2ba26693d1
- Added 3D Floor + Portal awareness, along with flags to turn off detection of both features.
2016-05-12 22:15:06 +02:00
MajorCooke
b91ed5dc5d
Added GetZAt DECORATE function.
...
- float GetZAt(x, y, angle, flags, pick_pointer);
- Gets the floor z at x distance ahead and y distance to the side in relative form from the calling actor pointer. Flags are as follows (GZF_ prefix):
- CEILING: Returns the ceiling z instead of floor.
- ABSOLUTEPOS: x and y are absolute positions.
- ABSOLUTEANG: angle parameter does not add the pointer's angle to the angle parameter.
2016-05-12 22:15:05 +02:00
Christoph Oelckers
616f84209b
- let gl_draw_sync default to false.
...
No need to waste valuable processing time if we can let the GPU run in parallel with the code that generates the next frame.
2016-05-12 20:23:18 +02:00
MajorCooke
39f64383cb
Changed RTF_THRUSTZ to match RADF_THRUSTZ's bitmap.
2016-05-11 19:41:33 +02:00
MajorCooke
952219a018
Added RTF_THRUSTZ for A_RadiusThrust.
...
- Allows thrusting with Z velocity.
2016-05-11 19:41:33 +02:00
Christoph Oelckers
852ed6cd04
- un-revert P_CheckMove fix.
2016-05-11 19:39:08 +02:00
Edoardo Prezioso
769521b2e1
- Fixed second player lock after error in netgame.
2016-05-11 14:05:29 +02:00
Christoph Oelckers
078e27e61f
- fixed: The mugshot's angle was inverted.
2016-05-11 14:04:21 +02:00
Christoph Oelckers
d4b258f15b
- don't place the chasecam right at the hit position of the trace. This will be the intersection with a wall or sector plane and may cause clipping issues. Instead place it very slightly in front of the actual hit position.
2016-05-11 13:57:49 +02:00
MajorCooke
9ab620814d
- Fixed: Armor absorption did not take ALLOW/CAUSEPAIN flags into account.
2016-05-11 13:33:39 +02:00
Christoph Oelckers
0726a88ab9
- only return DWORD aligned addresses in openings because the 3D floor code stores floating point values in there which cannot be accessed on platforms with strict alignment rules.
2016-05-11 12:04:41 +02:00
Christoph Oelckers
220255e6a4
- fixed P_CheckMove's dropoff check and removed some unneeded code.
2016-05-11 11:56:03 +02:00
Christoph Oelckers
12b84d9f71
Merge branch 'master' of https://github.com/rheit/zdoom
2016-05-11 11:47:00 +02:00
Christoph Oelckers
43d93a19a0
- fixed: P_AlignFlat had the 'dist' value negated. Also simplified the code a bit.
2016-05-11 11:36:53 +02:00
Christoph Oelckers
f8c12f4533
- fixed warning in s_sound.cpp
2016-05-11 10:32:57 +02:00
Christoph Oelckers
cc88130362
- fixed: P_CheckMove's dropoff check had the heights swapped. This also shouldn't in any way depend on COMPATF_DROPOFF and must be skipped entirely for actors with either MF_FLOAT or MF_DROPOFF set.
2016-05-11 10:09:13 +02:00
Christoph Oelckers
77e30bb7d7
- fixed: The line portal links were not deleted when an actor was destroyed.
2016-05-11 09:58:03 +02:00
Christoph Oelckers
15933f9c72
- fixed: Texture precaching for sprites had some inverted logic and deleted everything that was still required.
2016-05-10 20:51:23 +02:00
Christoph Oelckers
0cc57c6141
- fixed: BoundTextureDraw2D must reset the texture mode.
2016-05-10 20:50:01 +02:00
Christoph Oelckers
2709391ce9
Merge branch 'master' of https://github.com/rheit/zdoom
2016-05-09 23:50:06 +02:00
Christoph Oelckers
966e6797e4
- fixed: The view path for checking whether the player sprite should be drawn during a portal transition was never set properly in the portal transitioning case.
2016-05-09 23:16:06 +02:00
Christoph Oelckers
2e4b8dd416
- fixed incorrect sign in P_TranslatePortalVXVY
2016-05-09 21:59:13 +02:00
Christoph Oelckers
15c711f2a1
- added a missing break in the wall draw dispatcher.
2016-05-09 00:58:55 +02:00
Christoph Oelckers
d5eb1008a4
- implemented texture overlay pass for textured dynamic lights.
2016-05-08 22:07:18 +02:00
Christoph Oelckers
b90173ed21
- fixed: ADynamicLight::visibletoplayer was not initialized for placed lights when restoring a savegame.
2016-05-08 09:34:22 +02:00
Christoph Oelckers
ad713b1c25
Merge branch 'master' of https://github.com/rheit/zdoom
2016-05-08 09:28:01 +02:00
Christoph Oelckers
841a5795ae
- savegame version bump for a GZDoom exclusive change (to avoid synchronization problems in the future.)
2016-05-08 09:27:42 +02:00
Christoph Oelckers
6753cddce1
- fixed: The HUD weapon drawer partially took the render state from the previous things that got rendered. Especially the blend mode could be randomly set to different values.
2016-05-08 09:22:38 +02:00
Chris Robinson
8334189d66
Merge remote-tracking branch 'zdoom/master'
2016-05-05 12:55:16 -07:00
Christoph Oelckers
f4e4221da7
Merge branch 'master' of https://github.com/rheit/zdoom
2016-05-05 21:51:54 +02:00
Chris Robinson
ba1574e65a
Don't define OpenAL redirect macros with the IDE's parser
...
At least with KDevelop4, macros like this interefere with contextual info by
causing it to show information about the macro itself (where it's defined and
what it defines to), rather than the function (parameters, comments, etc). It
also gets in the way of auto-completion.
2016-05-05 21:00:30 +02:00
Chris Robinson
fa46965a71
Check for OpenAL device errors after pausing/resuming the device
2016-05-05 21:00:30 +02:00
Chris Robinson
0b7b78c5d2
Better handle channel configs when monoizing in LoadSound
2016-05-05 21:00:29 +02:00
Chris Robinson
e298f8389b
Avoid divide-by-0 when the area sound radius is less than the max distance
2016-05-05 21:00:29 +02:00
Chris Robinson
66c61a7c8b
Set the appropriate start offset for non-3D sounds too
2016-05-05 21:00:28 +02:00
Chris Robinson
26a8a8a1ba
Pause OpenAL processing using ALC_SOFT_pause_device when inactive
2016-05-05 21:00:28 +02:00
Chris Robinson
e1c8890c5e
Set the appropriate start offset for restarted sounds
2016-05-05 21:00:27 +02:00
Chris Robinson
c3cef91a4f
Properly sum the channels being downmixed to mono
2016-05-05 21:00:27 +02:00
Chris Robinson
12c9281a7e
Avoid redundantly setting DistanceScale
2016-05-05 21:00:26 +02:00
Chris Robinson
bf5ac9b476
Use AL_EXT_SOURCE_RADIUS for area sounds
2016-05-05 21:00:26 +02:00
Chris Robinson
55294c5806
Use the correct OpenAL lib name on Linux
2016-05-05 21:00:25 +02:00
Edoardo Prezioso
52995f8fc2
- Fixed missing sector light clamp in DFlicker.
...
For some reason, this code didn't care about the sector light limits. Found by code inspection.
2016-05-05 21:00:08 +02:00
Christoph Oelckers
c193bb7799
- removed the special case 0 in A_SpawnItem, meaning 'in front of the player'.
...
As it turned out this has been broken for many, many years, so one can assume that most content using this function depends on this special case not working. I could track it down to at least 2008.
2016-05-05 20:12:26 +02:00
Christoph Oelckers
d61ec05c0f
- draw texture based dynamic lights on walls.
2016-05-05 12:18:09 +02:00
Christoph Oelckers
2b92048a5b
- renamed the texture coord variables in GLWall.
...
It makes no sense having them organized differently in this struct than what the rendering code needs. This saves one redundant copy operation and a function-local static variable.
2016-05-05 11:48:39 +02:00
Christoph Oelckers
51baa7d137
- added code to calculate light texture coordinates on walls.
2016-05-05 11:32:21 +02:00
Christoph Oelckers
0b2821d696
- added dynamic light rendering with textures on flats
2016-05-05 10:28:21 +02:00
Christoph Oelckers
c9d4c68039
- added dynamic light drawer for flats.
2016-05-05 00:24:47 +02:00
Christoph Oelckers
4412f99b38
- added the flat dispatcher for textured lighting.
2016-05-04 23:07:16 +02:00
Christoph Oelckers
ec7b4b1ba4
- initial work on textured dynamic light processing.
2016-05-04 22:14:39 +02:00
Christoph Oelckers
8817f89192
- do not clip the first frame of very slow projectiles.
2016-05-04 20:31:21 +02:00
Christoph Oelckers
7b65e6d424
- use glMapBuffer instead of glMapBufferRange on older hardware.
2016-05-04 19:16:07 +02:00
Christoph Oelckers
317730584f
- GZDoom still needs this.
2016-05-04 14:39:31 +02:00
Christoph Oelckers
bb378f2d94
Merge branch 'master' of https://github.com/rheit/zdoom
2016-05-04 14:38:57 +02:00
Christoph Oelckers
0b833be06e
- removed accidentally added GZDoom specials.
2016-05-04 14:37:52 +02:00
Christoph Oelckers
bdb7594e60
- fixed: Incomplete model definitions flagged the actor as having a model, which could cause a crash.
2016-05-04 14:25:58 +02:00
Christoph Oelckers
5f095082c0
- fixed: The 2D drawing code incorrectly set the shader override to disable all special effects.
2016-05-04 14:10:06 +02:00
Christoph Oelckers
2c88816577
- fixed parameters for warp type 2.
2016-05-04 13:25:26 +02:00
Christoph Oelckers
54571beaca
- reset the path to "" before a model definition is parsed.
2016-05-04 12:28:35 +02:00
Christoph Oelckers
fd8a59bd24
- fixed: INHERITACTORPITCH was inverted.
...
- changed PITCHFORMOMENTUM to do nothing for very small velocities.
2016-05-04 12:23:40 +02:00
Christoph Oelckers
ab8a647433
- fixed the disabled visibility rules check for dynamic lights by doing the actual check in the light's Tick() method and letting the renderer only use the result.
2016-05-04 11:33:18 +02:00
Christoph Oelckers
0a94371974
- reinstated old code for rendering fog boundaries and mirrot surfaces without shaders.
...
- added code for filling the render list for textured dynamic lights. This is not yet active because no code is present to handle this data.
2016-05-03 23:28:42 +02:00
Christoph Oelckers
4ea3339e40
Merge branch 'master' of https://github.com/rheit/zdoom
2016-05-03 19:46:09 +02:00
Christoph Oelckers
be3b126f7b
- fixed: Order of skybox and portal initialization was not well defined. It was always the last item to get initialized that got set. Changed it so that skyboxes cannot override portals at all.
2016-05-03 19:42:53 +02:00
Christoph Oelckers
0f8f08edfd
- fixed: camera facing sprites need to orient themselves toward the actual camera position, not the view actor (which may be invalid or in a completely different part of the map if a portal is being rendered.)
2016-05-03 19:24:28 +02:00
Christoph Oelckers
b6af4677f3
- implemented model precaching.
2016-05-03 18:14:16 +02:00
Christoph Oelckers
534500f36d
- fixed software-based model interpolation.
2016-05-03 16:49:10 +02:00
Christoph Oelckers
f7fda94ec9
- changed model data to store models and textures by index instead of by pointer.
...
The indices are needed for efficient precaching and actual changes to the logic are minor so that this was the best option overall.
2016-05-03 15:45:21 +02:00
Christoph Oelckers
0e14f00b51
- fixed caching of texture sampler state for old hardware.
...
- fixed handling of CLAMP_XY_NOMIP sampler mode. This cannot be lumped together with CLAMP_XY because it has different mipmap requirements.
2016-05-03 13:39:41 +02:00
Christoph Oelckers
4d7be0e20e
- added software interpolation as a fallback for models.
...
This is not tested yet so no guarantees!
2016-05-03 13:10:00 +02:00
Christoph Oelckers
ce714ac519
Merge remote-tracking branch 'remotes/zdoom/master'
2016-05-03 11:29:49 +02:00
Christoph Oelckers
942138b307
- undid some leftover texture state checks from the first attempt to handle this without sampler objects.
...
This code was written under the assumption that the glGenerateMipmap function does not exist. But all supported hardware has this function through the GL_EXT_framebuffer_object extension.
2016-05-03 11:27:52 +02:00
Christoph Oelckers
a576243ff2
- fixed: ThrustThing should add to the velocity, not set it.
2016-05-03 10:26:29 +02:00
Christoph Oelckers
6f2b0a6293
- rewrote texture caching so that not the base texture but the actually used translations for sprites get precached.
2016-05-03 01:00:52 +02:00
Christoph Oelckers
ec037bfd1a
- fixed: The check for one-way portals in the renderer was incomplete.
2016-05-02 19:47:27 +02:00
MajorCooke
16bea6cf1f
- Fixed: Roll must orient the rotation based on pitch, not the other way around.
2016-05-02 10:46:44 -05:00
MajorCooke
9ec3093a34
Fixed some missed cases.
2016-05-02 08:52:44 -05:00
MajorCooke
def785e462
Removed PITCHFLATSPRITE. FLATSPRITE now encompasses its behavior.
2016-05-02 06:32:33 -05:00
MajorCooke
673dab7f23
Removed PITCHFLATSPRITE. FLATSPRITE now encompasses the behavior.
2016-05-02 06:29:19 -05:00
alexey.lysiuk
4c4b97316e
Fixed inconsistent texture wrapping
...
Sampler state needs to be reseted when hardware texture resources are released
2016-05-02 13:02:55 +03:00
alexey.lysiuk
333560086d
Calculate color values for gamma correction directly in shader
...
Gamma table texture is no longer needed
2016-05-02 11:24:42 +03:00
alexey.lysiuk
44b019413c
Implemented gamma correction in OS X native backend using shader effect
2016-05-02 10:04:09 +03:00
MajorCooke
a163220e8c
Removed FlatAngle.
2016-05-01 17:30:30 -05:00
MajorCooke
0bf7c3e362
- Removed FlatAngle. This will come back hopefully in another commit sometime in the future.
2016-05-01 17:19:39 -05:00
Christoph Oelckers
f2f3fa6d09
- parched the texture precaching so that it compiles and works again. The real work will come later.
2016-05-02 00:13:00 +02:00
Randy Heit
4fbe77fb82
Very minor optimization for ACS str(i)cmp
...
- If the two strings compared both point to the same location in memory,
then we know they are the same string without having to bother actually
comparing their contents. Note that the opposite is not neccessarily
true: If they point to two different locations, they could still match a
case-sensitive comparison because there are still two ACS string tables:
the one that belongs to the map's script and the one that belongs to
everything else.
2016-05-01 16:55:28 -05:00
Christoph Oelckers
b2e67c2c7e
Merge branch 'master' of https://github.com/rheit/zdoom
...
# Conflicts:
# src/textures/texturemanager.cpp
2016-05-01 23:46:05 +02:00
MajorCooke
f41dcc75d1
FlatAngle can now be defined directly via properties.
2016-05-01 16:33:00 -05:00
Christoph Oelckers
65e1589543
- allow specifying actor classes whose graphics to precache through MAPINFO.
...
- some reorganization of texture precaching so that the renderer can decide what to do with actors.
Just marking the sprite textures loses too much info if more is needed than just loading the images into memory.
2016-05-01 22:47:36 +02:00
Chris Robinson
0d402618a3
Load mono copies of multichannel sounds that are used in 3D
2016-05-01 21:44:03 +02:00
MajorCooke
3ed9551054
Fixed typo.
2016-05-01 14:33:22 -05:00
MajorCooke
980a310755
GZDoom Roll Submission
2016-05-01 14:08:09 -05:00
Christoph Oelckers
b443ac8f71
- let Trace() be a bit smarter about checking 3D slopes. If one matches right up with the floor or ceiling at the line where the trace enters a sector, check a second point to see whether we deal with something inside valid sector bounds or not.
2016-05-01 19:30:51 +02:00
MajorCooke
9ba547e6e3
Revert MINSAVEVER and added FlatAngle DECORATE property expression.
2016-05-01 11:38:20 -05:00