Christoph Oelckers
2d320a2e86
- added an option to disable the pickup screen flash.
2016-10-05 09:59:19 +02:00
Magnus Norddahl
00e72028ef
Add another gbuffer with normal data and make ssao pass use it
2016-10-05 07:57:27 +02:00
raa-eruanna
3f020e686f
Merge http://github.com/coelckers/gzdoom
2016-10-04 23:26:50 -04:00
Magnus Norddahl
490dd612b3
Keep using render buffers when ssao is off, for better performance
2016-10-05 03:56:58 +02:00
Christoph Oelckers
64863d30f3
Merge branch 'master' of https://github.com/rheit/zdoom
2016-10-04 18:17:32 +02:00
Major Cooke
0e9f808c8a
Fixed: FLATSPRITES were drawn backwards.
2016-10-04 10:05:57 -05:00
Christoph Oelckers
15cbf4bae6
- fixed: DecoHandleRuntimeState must check all parent classes when trying to determine if the target is a valid state. It should also ensure that both the calling and target state belong to the same actor. Although unlikely it cannot be entirely ruled out that a bogus index randomly points to a seemingly valid state elsewhere.
2016-10-04 09:28:19 +02:00
raa-eruanna
cc5f3a0ec0
Merge http://github.com/rheit/zdoom
2016-10-03 23:49:31 -04:00
Marisa Heit
594b344be9
Don't use MIN<short> when clamping topclip.
...
- This was fine with fixed point numbers, since they could never be
outside of short range when converted to regular ints. With floating
point numbers now, that condition no longer holds.
2016-10-03 22:05:02 -05:00
raa-eruanna
f9795a2533
Revert "Remove linear sky again"
...
This reverts commit 21390e91b8
.
- also set r_linearsky to "false" by default.
2016-10-03 21:39:15 -04:00
Magnus Norddahl
e05ed47fee
Remove C++ and SSE drawers
2016-10-04 01:36:26 +02:00
Magnus Norddahl
e9d13e5d74
Remove gl_light_math (reverts last remains of old lightmath branch)
2016-10-04 00:25:35 +02:00
Magnus Norddahl
51f867bc6c
Merge branch 'ssao' into qzdoom
...
# Conflicts:
# src/gl/renderer/gl_renderer.cpp
# wadsrc/static/language.enu
# wadsrc/static/menudef.zz
# wadsrc/static/shaders/glsl/main.fp
2016-10-04 00:16:05 +02:00
Magnus Norddahl
ecb57d6cd9
Merge remote-tracking branch 'gzdoom/master' into ssao
...
# Conflicts:
# src/gl/renderer/gl_renderer.cpp
# src/gl/scene/gl_scene.cpp
# src/gl/shaders/gl_shader.cpp
# wadsrc/static/language.enu
# wadsrc/static/menudef.zz
2016-10-04 00:01:03 +02:00
Magnus Norddahl
bcb64a3445
Merge branch 'ssao' into qzdoom
...
# Conflicts:
# src/gl/renderer/gl_postprocess.cpp
# src/gl/renderer/gl_renderer.cpp
# src/gl/scene/gl_scene.cpp
# src/gl/shaders/gl_ambientshader.cpp
# src/gl/shaders/gl_ambientshader.h
# src/gl/system/gl_cvars.h
# wadsrc/static/language.enu
# wadsrc/static/menudef.zz
2016-10-03 23:47:09 +02:00
Magnus Norddahl
dcb6c1ac3a
Move ApplyFXAA to PostProcessScene
2016-10-03 23:30:00 +02:00
Magnus Norddahl
9c8f841858
Merge branch 'llvmcompiler' into qzdoom
2016-10-03 23:22:28 +02:00
alexey.lysiuk
5d99e7dafe
Fixed compilation on platforms other than Windows
2016-10-03 22:13:33 +03:00
alexey.lysiuk
d6346fb0c6
Fixed compilation with GCC or Clang
2016-10-03 21:44:00 +03:00
Christoph Oelckers
15af9242d6
Merge branch 'master' of https://github.com/rheit/zdoom
2016-10-03 16:22:16 +02:00
Christoph Oelckers
7ab7fc9a57
- seems I missed this part...
2016-10-03 16:21:50 +02:00
Christoph Oelckers
4eb5f10b02
- use normals to have proper light attenuation. So far only implemented for walls and flats. Models are planned but need some thinking about how to efficiently collect all required lights for an object.
2016-10-03 16:09:32 +02:00
Christoph Oelckers
41ab08ee47
- fixed: TVector::Resized needs to consider that the input vector has a length of 0. In this case just performing the normal calculations results in an invalid vector.
2016-10-03 11:00:26 +02:00
Magnus Norddahl
7c47806382
Fix aspect ratio bug in LensDistortScene
2016-10-03 09:18:47 +02:00
raa-eruanna
267b131c03
Merge http://github.com/rheit/zdoom
2016-10-02 23:10:28 -04:00
raa-eruanna
c6408e92e2
Merge http://github.com/coelckers/gzdoom
...
# Conflicts:
# src/gl/renderer/gl_postprocess.cpp
# src/gl/renderer/gl_renderer.cpp
# src/gl/scene/gl_scene.cpp
# wadsrc/static/language.enu
# wadsrc/static/menudef.zz
2016-10-02 23:10:07 -04:00
Christoph Oelckers
2da18bfa56
Merge branch 'master' of https://github.com/rheit/zdoom
2016-10-03 00:56:55 +02:00
Major Cooke
201ae3c60f
Added OverlayID() for retrieving psprite layer numbers.
2016-10-03 00:44:06 +02:00
alexey.lysiuk
c68aa2b241
Added FXAA post-processing
...
Implementation of Fast Approximate Anti-Aliasing is based on nVidia sample:
https://github.com/NVIDIAGameWorks/GraphicsSamples/tree/master/samples/es3-kepler/FXAA
2016-10-03 00:15:45 +02:00
Christopher Bruns
5391216756
Delete unused new BlitFromEyeTexture() method I ended up not using.
2016-10-02 16:27:43 -04:00
Christopher Bruns
63b28a1d80
Retain stereoscopic parity after dragging window in row interleaved 3D mode.
2016-10-02 16:11:06 -04:00
Christopher Bruns
0240cdef18
Modulate row interleaved stereo 3d offset with window height parity, because gl_FragCoord.y approaches zero at the bottom, not the top of the window.
2016-10-02 16:10:58 -04:00
Christopher Bruns
576619504e
Remove unused WindowHeight uniform.
2016-10-02 16:10:50 -04:00
Christopher Bruns
fcbf9342d6
Compute row location using gl_FragCoord.
2016-10-02 16:10:39 -04:00
Christopher Bruns
460b653709
Row interlaced 3d might be working, at least in fullscreen 1920x1080 mode.
2016-10-02 16:10:21 -04:00
Christopher Bruns
79046580d5
Partial implementation of row interlaced mode.
2016-10-02 16:09:22 -04:00
Christopher Bruns
960d4d6755
Create TopBottom3D mode and begin sketching RowInterleaved3D mode.
2016-10-02 16:09:02 -04:00
N.E.C
671646be26
Fix errors encountered when compiling for v140_xp target
2016-10-02 13:05:26 -07:00
Major Cooke
1620ff58c8
Added INTCVAR to DrawNumber.
...
- Allows retrieval and displaying of an int/bool user/server cvar.
2016-10-02 20:11:13 +02:00
Christoph Oelckers
e84a7de390
- variable was in the wrong scope.
2016-10-02 18:56:04 +02:00
Christoph Oelckers
37d61167ea
- hotfix for a RapidJSON bug: If the Writer tries to process an INF or NaN value, it aborts and leaves the writer in a broken state, unable to recover. Changed so that it writes a 0 value so that the resulting JSON at least parses correctly.
2016-10-02 18:50:37 +02:00
Christoph Oelckers
3418710a38
- be a bit more thorough and also call Effect() on vertically moving missiles with zero damage.
2016-10-02 14:38:48 +02:00
Christoph Oelckers
865863ab6f
- fixed: AFastProjectile did not work properly for perfectly vertically moving missiles. Like AActor::Tick it needs to ensure that a tiny bit of lateral movement is present so that collision detection and the Effect() function work as intended.
2016-10-02 14:37:26 +02:00
Christoph Oelckers
0bce6e3925
- added ACS and DECORATE setter functions for named translations.
2016-10-02 14:09:45 +02:00
Christoph Oelckers
a505e91032
- added TRNSLATE lump for defining global translations which are accessible by name.
...
This is only the definition part, manipulation functions for ACS and DECORATE still to do.
2016-10-02 13:35:25 +02:00
alexey.lysiuk
d7683a8c55
Fixed crash on early fatal error exit
...
Process terminates correctly if zdoom.pk3 is missing
2016-10-02 10:13:45 +03:00
Marisa Heit
efc9ed2fe9
Fix state lookup from non-action functions (i.e. Damage functions)
2016-10-01 22:31:07 -05:00
Marisa Heit
eb2ee33950
FxVMFunctionCall must pass null pointers when calling an action function from a non-action function
2016-10-01 22:29:57 -05:00
Marisa Heit
944ae2bc09
Only generate the self==stateowner check inside action functions
2016-10-01 21:47:43 -05:00
raa-eruanna
ff0d409e2b
Merge http://github.com/rheit/zdoom
2016-10-01 19:06:43 -04:00
raa-eruanna
a89ec61dc1
Merge http://github.com/coelckers/gzdoom
2016-10-01 19:06:40 -04:00
Christoph Oelckers
51ffd6d9c6
- fixed some warnings.
...
- A_SetRenderStyle should not default to STYLE_None.
2016-10-02 01:00:07 +02:00
Christoph Oelckers
80f2f5829f
- added A_SetRenderStyle function which replaces A_SetTranslucent. A_SetTranslucent had to be deprecated due to obsolete semantics of the renderstyle argument.
2016-10-02 00:43:05 +02:00
Christoph Oelckers
ff0b879323
- added UDMF portal flags. Names are identical with Eternity for compatibility reasons.
2016-10-02 00:31:25 +02:00
Christoph Oelckers
cfa6b817b5
- made bloom and tonemap settings game specific and save all related CVARs.
...
As was pointed out: "That said, there is one minor problem - different game artstyles can constitute whether Bloom is turned on, which tonemap is used, etc. For example, when playing Doom, I like having my bloom on, but if I am going to start playing the Adventures of Square, the art style and bloom don't mix, in my opinion. For this, I have to remember to switch my bloom settings every time I switch IWad"
2016-10-01 21:34:13 +02:00
Christoph Oelckers
3a3d538a45
Merge branch 'master' of https://github.com/rheit/zdoom
2016-10-01 18:22:00 +02:00
Christoph Oelckers
7720359f4c
- fixed: AActor::Masacre must restore the flag if it cannot kill the monster.
2016-10-01 12:08:07 +02:00
alexey.lysiuk
099bfed806
Fixed endianness issue with precaching of MUS files
2016-10-01 11:50:29 +02:00
Magnus Norddahl
c960742dbd
Fix 64 bit compile errors
2016-10-01 11:47:21 +02:00
alexey.lysiuk
e9ce699042
Fixed compilation with GCC or Clang
2016-10-01 12:17:15 +03:00
Magnus Norddahl
8765cf2016
Change Windows build to use a precompiled version of LLVM
2016-10-01 06:51:55 +02:00
raa-eruanna
558a7fcfb0
Merge http://github.com/rheit/zdoom
2016-09-30 19:34:27 -04:00
Christoph Oelckers
b400cf1454
- added an integrity check to the SNDINFO parser to detect and eliminate recursive links. Normally these would crash the sound code later.
...
- allow recursive linking of $random definitions (as long as they do not link back, see above.)
- fixed the sound precaching which did not handle $alias inside $random. Normally this went undetected but in cases where the random sound index was the same as a sound index in the current link chain this could hang the function.
2016-09-30 10:50:41 +02:00
Magnus Norddahl
28bb5da181
Hooked up LLVM wall drawers
2016-09-30 07:27:25 +02:00
raa-eruanna
6e3a49b065
Multilayer skies (Hexen) now properly show in truecolor mode. This is only supported for paletted skies, but it still offers a true-color output.
2016-09-29 21:29:40 -04:00
raa-eruanna
bbec9b86a3
- fixed: un-commented the line with said hack. oops.
2016-09-29 20:00:56 -04:00
raa-eruanna
1560ed07af
Added a hack that allows maps using fogmap to display properly in the true-color renderer. Unfortunately, this could be implemented better but at least for now it's here.
2016-09-29 20:00:00 -04:00
raa-eruanna
7cbaf80a2a
- Okay - so - last commit didn't actually fix anything. I think for now, it's better to turn off multi-threading by default until this can be fixed. r_multithreading has been changed to false by default, and is now saved in the user's .ini.
2016-09-29 12:49:10 -04:00
raa-eruanna
d58da58aee
- fixed: Prevents too many drawer thread commands from queueing up. Previously, drawing too many columns (which was accumulated by amassing a huge number of sprites) would crash the game.
2016-09-29 12:20:32 -04:00
raa-eruanna
2987668af8
Non-tiling skies (Heretic/Hexen) now render properly.
2016-09-29 06:20:30 -04:00
Magnus Norddahl
afab45674b
Added half of wall codegen
2016-09-29 07:38:33 +02:00
Magnus Norddahl
7be2511269
Add codegen files for walls and columns
2016-09-29 05:21:43 +02:00
Magnus Norddahl
e5f3c119cd
Codegen all DrawSpan variants
2016-09-29 04:01:42 +02:00
Magnus Norddahl
efd22346d8
Fix linear sampling bug
2016-09-29 02:26:36 +02:00
Magnus Norddahl
bfa291b02f
Create LLVMDrawers class as the external interface to the drawers
2016-09-29 02:10:14 +02:00
Magnus Norddahl
3aea3a0bee
Fully implemented codegen for DrawSpan
2016-09-28 18:49:39 +02:00
raa-eruanna
2f557419ed
Merge http://github.com/rheit/zdoom
2016-09-28 06:40:58 -04:00
raa-eruanna
dd9881b5fa
Merge http://github.com/coelckers/gzdoom
2016-09-28 06:40:56 -04:00
Marisa Heit
3988a63789
Fixed: The menu no longer refreshed the screen border
2016-09-28 06:40:55 -04:00
Marisa Heit
77ea195162
Fixed: Y and Z were flipped for sound velocity
2016-09-28 06:40:54 -04:00
Christoph Oelckers
2d5061e81f
- fixed: DScroller did not initialize m_LastHeight in all situations. This caused a problem with the serializer because RapidJSON aborts the write of a floating point value if it is invalid.
...
- ensure that floats are always written out. If the actual value causes an error (i.e. INF or NaN), write a 0 to guarantee proper formatting.
2016-09-28 11:58:12 +02:00
Christoph Oelckers
f1bb7679a3
Merge branch 'master' of https://github.com/rheit/zdoom
2016-09-28 09:50:03 +02:00
Christoph Oelckers
676d2365e1
- fixed: The ACS strings deserializer set incorrect indices in the bucket array. This only caused a problem if there were gaps in the string pool.
2016-09-28 09:49:41 +02:00
Christoph Oelckers
b75395aa74
- fixed: Screen size update coordinates were copied into the wrong buffer location.
2016-09-28 09:25:48 +02:00
Christoph Oelckers
d5e31aff1b
Merge branch 'master' of https://github.com/rheit/zdoom
2016-09-28 08:27:55 +02:00
Christoph Oelckers
12ea8ffbe4
- removed some leftover garbage from the floating point rewrite in the floorRaiseToLowestCeiling case of DFloor.
2016-09-28 08:06:15 +02:00
Magnus Norddahl
576fed5afc
Add light, blend and sampler functions
2016-09-28 05:18:16 +02:00
Marisa Heit
e3be6e4819
Fixed: The menu no longer refreshed the screen border
2016-09-27 18:58:09 -05:00
raa-eruanna
d05ed3740b
Corrected forum links in version.h
2016-09-27 19:27:57 -04:00
Marisa Heit
40f0dbf51c
Fixed: Y and Z were flipped for sound velocity
2016-09-27 16:27:31 -05:00
Magnus Norddahl
f9a7186550
Improve DrawSpan codegen enough to do the simple shade for 64x64 flats
2016-09-27 22:54:37 +02:00
Magnus Norddahl
20f67ad40a
Add SSAShort, shift, and, or, and fix unaligned store
2016-09-27 22:53:20 +02:00
raa-eruanna
1b7827342c
- Fixed: Changed r_clearbuffer to do a little more than clear the top quarter of the screen. Still need to do an actual color fill - will do it later.
2016-09-27 04:14:00 -04:00
Magnus Norddahl
d5c7a7ab76
Make LLVM compile and optimize for the current CPU
2016-09-27 03:07:03 +02:00
Magnus Norddahl
4f2ae42ed5
Revert duplicate entry in CMakeLists.txt
2016-09-26 09:04:29 +02:00
Magnus Norddahl
3dd8b593b6
Use LLVM to JIT the code for one of the drawer functions
2016-09-26 09:00:19 +02:00
raa-eruanna
c8d0a478d8
Merge http://github.com/coelckers/gzdoom
2016-09-25 19:43:52 -04:00
Christoph Oelckers
750c194959
- changed order of SwapBuffers and glFinish call. The new order with glFinish coming last is recommended by OpenGL and it fixes a stalling problem with portals and camera textures visible at the same time.
...
- check and use WGL_EXT_swap_control_tear extension. The above change makes the system always wait for a full vsync with a wglSwapInterval of 1, so it now uses the official extension that enables adaptive vsync. Hopefully this also works on the cards where the old setup did not.
2016-09-26 01:38:25 +02:00
raa-eruanna
0bc54cbda4
Fixed SDL backend. This project is now Linux capable!
2016-09-25 17:40:37 -04:00
raa-eruanna
d91fe1572c
Merge http://github.com/coelckers/gzdoom
2016-09-25 14:08:20 -04:00
raa-eruanna
6cc1cea54d
Merge branch 'master' of https://github.com/raa-eruanna/QZDoom
2016-09-25 13:50:11 -04:00
raa-eruanna
08166473ca
Merge branch 'truecolor' of http://github.com/dpjudas/dpdoom
...
# Conflicts:
# src/v_video.cpp
2016-09-25 13:48:52 -04:00
alexey.lysiuk
e9b1da57a3
Fixed compilation on macOS
2016-09-25 17:43:52 +03:00
Christoph Oelckers
d65589281f
Merge branch 'master' of https://github.com/rheit/zdoom
2016-09-25 10:28:51 +02:00
Christoph Oelckers
f4462a7b93
- fixed: Any DSectorEffect thinker must be placed into STAT_SECTOREFFECT.
...
The slot had been there forever to address this same problem but only one of the two constructors actually set it, too bad that it was the wrong one...
This is something that normally won't be noticed. But if some actor is spawned on a moving platform, with both thinkers on the same statnum it means that the order of execution is not correct with the platform being done first, resulting in the actor to 'jump' while the platform is moving. To prevent this it is necessary that all sector movers only tick after all actors have completed their thinking turn.
2016-09-25 09:43:17 +02:00
Christoph Oelckers
92d0043a81
- undid part of the last commit and hopefully corrected it for good now.
...
We have to be extremely careful with the player data, because there's just too much code littered around that has certain expectations about what needs to be present and what not.
Obviously, when travelling in a hub, the player_t should be retained from the previous level. But we still have to set player_t::mo to the PlayerPawn from the savegame so that G_UnsnapshotLevel doesn't prematurely delete it and all associated voodoo dolls, because it checks player_t::mo to decide whether a player is valid or not.
The actual deletion of this redundant PlayerPawn should only be done in G_FinishTravel, after the actual player has been fully set up
2016-09-25 09:23:44 +02:00
raa-eruanna
ed07ff1bdd
Merge http://github.com/dpjudas/dpdoom
2016-09-25 02:19:39 -04:00
raa-eruanna
1c25ad7ce4
Merge http://github.com/rheit/zdoom
2016-09-24 23:36:51 -04:00
raa-eruanna
9ecb7d44f7
Merge http://github.com/coelckers/gzdoom
2016-09-24 23:36:47 -04:00
Christoph Oelckers
6a6a0e8017
- removed some more hubtravel related player start fudging.
...
* do not skip the player_t init when travelling in a hub. The old player may still be needed in some edge cases. This applies only to singleplayer for now. The multiplayer version still needs reviewing. I left it alone because it may shuffle players around which is not wanted when doing hub travelling.
* do not spawn two temp players in G_FinishTravel. Instead handle the case where no player_t::mo can be found gracefully by adding a few nullptr checks. This temp player served no real purpose except for having a valid pointer. The actual start position was retrieved from somewhere else.
2016-09-25 01:28:27 +02:00
Magnus Norddahl
287acea6b4
Update copyright
2016-09-25 00:31:57 +02:00
Magnus Norddahl
6cb9f875dd
Fix missing call from merge
2016-09-25 00:31:43 +02:00
Magnus Norddahl
979e70ca8f
Add gl_ssao_portals for controlling how many portals gets SSAO
2016-09-25 00:22:38 +02:00
Magnus Norddahl
3f11c0562c
Add ssao quality setting
2016-09-25 00:22:38 +02:00
Magnus Norddahl
0397fe185f
Don't do ambient occlusion when rendering to texture
2016-09-25 00:22:32 +02:00
Magnus Norddahl
d774136282
Added SceneData texture as the second colorbuffer when rendering a scene and placed fog data into it
2016-09-25 00:22:32 +02:00
Magnus Norddahl
9af34bac69
Add gbuffer pass support to FShaderManager and FRenderState
2016-09-25 00:22:32 +02:00
Magnus Norddahl
37e3172c94
Fix random texture sampling bug
2016-09-25 00:22:31 +02:00
Magnus Norddahl
0a8cc1b74c
Fix depth blur
2016-09-25 00:22:31 +02:00
Magnus Norddahl
24ab13f1ce
Fix stripes in the reconstructed normals due to down scaling
2016-09-25 00:22:31 +02:00
Magnus Norddahl
11725c435e
Grab tanHalfFovy from the projection matrix
2016-09-25 00:22:31 +02:00
Magnus Norddahl
e025f6e54b
Mark portals in scene alpha channel for the SSAO pass
2016-09-25 00:22:31 +02:00
Magnus Norddahl
c7c0ffadb5
Move SSAO pass to be before translucent rendering
...
Fix depth sampling location when not using fullscreen scene
2016-09-25 00:19:16 +02:00
Magnus Norddahl
09bec67821
Resolve multisampling depth in shader
2016-09-25 00:19:16 +02:00
Magnus Norddahl
a246b58673
Change SSAO blur to be depth aware
2016-09-25 00:19:16 +02:00
Magnus Norddahl
a6fdaca633
Fix precision issue in SSAO shader
2016-09-25 00:19:16 +02:00
Magnus Norddahl
723eb746f6
Add ssao random texture
2016-09-25 00:19:15 +02:00
Magnus Norddahl
9076d46261
Added SSAO pass
2016-09-25 00:19:15 +02:00
Christoph Oelckers
7d978a115e
Merge branch 'master' of https://github.com/rheit/zdoom
2016-09-24 17:54:53 +02:00
Major Cooke
74b8e9f286
- Don't use Normalized180() on angles. This could result in ranges being wrongly inverted.
...
- Fixed properties not having the proper indices.
- Use ViewPos-to-actor instead of measuring actor-to-actor.
- Use the actual camera instead of the actor so camera textures can work.
2016-09-24 17:54:09 +02:00
alexey.lysiuk
a419b581a8
Fixed compilation on macOS
2016-09-24 13:15:45 +03:00
Christoph Oelckers
8907a8bfe8
- fixed incorrect function name in sprites drawer.
...
- fixed duplicate property key in ADynamicLight serializer. Radius was already claimed by AActor so this needs a different name.
2016-09-24 12:09:53 +02:00
Christoph Oelckers
3f17d64f90
- fixed pitch comparison in visibility checking.
2016-09-24 09:42:35 +02:00
Magnus Norddahl
5ef46d1730
Merge remote-tracking branch 'gzdoom/master' into qzdoom
2016-09-24 09:37:18 +02:00
Magnus Norddahl
7ef5a9f117
Add the experimental swrenderer2
2016-09-24 09:36:37 +02:00
Major Cooke
561edd31ec
Added check for angle visibility for GZDoom.
2016-09-24 09:29:00 +02:00
Christoph Oelckers
6b02ea9871
Merge branch 'master' of https://github.com/rheit/zdoom
...
# Conflicts:
# CMakeLists.txt
2016-09-24 09:28:09 +02:00
Christoph Oelckers
3862c77b4b
- undid savegame version bump because it's not needed.
2016-09-24 09:18:25 +02:00
Major Cooke
dfa4f38c8f
Updated to new save game code.
2016-09-24 09:17:18 +02:00
Edoardo Prezioso
7e4d0ecdbf
- Fixed GCC/Clang regression post serialization.
2016-09-24 09:00:31 +02:00
Magnus Norddahl
8172949800
Merge branch 'lightmath' into dpdoom
2016-09-24 08:40:47 +02:00
Magnus Norddahl
4350587714
Remove accidental UpdateCameraExposure duplicate from merge
2016-09-24 08:40:28 +02:00
Magnus Norddahl
c21090333f
Merge remote-tracking branch 'qzdoom/master' into dpdoom
2016-09-24 08:17:49 +02:00
Magnus Norddahl
d126e91ded
Merge remote-tracking branch 'gzdoom/master' into lightmath
...
# Conflicts:
# src/gl/renderer/gl_renderbuffers.cpp
# src/gl/renderer/gl_renderbuffers.h
# src/gl/renderer/gl_renderer.h
# src/gl/scene/gl_scene.cpp
2016-09-24 08:12:12 +02:00
Christoph Oelckers
ee2766d00b
- made adjustments for new savegame code.
2016-09-24 01:47:44 +02:00
Christoph Oelckers
6bfbe30b99
Merge branch 'master' of https://github.com/rheit/zdoom
...
# Conflicts:
# src/CMakeLists.txt
# src/g_level.cpp
# src/p_saveg.cpp
# src/r_defs.h
# src/version.h
(note that this commit will not compile!)
2016-09-24 00:40:15 +02:00
Christoph Oelckers
b7c822d208
- fixed secplane_t serializer. It passed incorrect defaults to the sub-serializers and calculated negiC wrong.
2016-09-23 23:47:25 +02:00
Christoph Oelckers
69291b9cf9
- completely eliminated the horrible fudging that went on with players during hub travel. This means that DestroyMostThinkers and the player substitution mechanism in the object deserializer are gone now.
...
I wish I had realized this the last time it came up - it would have saved me a lot of trouble.
But as it turns out, the more recent travelling code makes all of this completely unnecessary, working perfectly fine with deleting the player pawns along with the rest of the thinkers before loading the stored ones from the savegame (and getting rid of those in G_FinishTravel.)
And with a sane savegame format that does not depend on side effects from how the thinker serializing handled linking into the lists the old code was even harmful, leaving voodoo dolls behind.
I had the exact same effect when I tried to reshuffle some things for reliably restoring portals, but did not make the connection to interference between two mutually incompatible player travelling mechanisms that just worked by sheer happenstance with the original order of things.
2016-09-23 23:03:11 +02:00
Christoph Oelckers
2318db0b1a
- let DWaggleBase use the interpolation pointer of its parent instead of defining its own one.
...
- do not call checking code for loading savegames when writing them in ACS module serializer.
2016-09-23 22:03:44 +02:00
Christoph Oelckers
36bf099d54
- fixed: object pointers as array members may not be skipped if they are null.
...
- changed S_GetMusic to return a const pointer to the actual music name instead of a copy. The only thing this is used for is the savegame code and it has no use for a copy, it can work far more efficiently with a const pointer.
2016-09-23 21:24:56 +02:00
Christoph Oelckers
02b3884dff
- added copyright header to serializer.cpp.
2016-09-23 20:13:22 +02:00
Christoph Oelckers
e4924c3d47
- added some missing End... calls in player deserialization code.
...
- fixed reading of music name.
In its current state the code is now capable of reading an E1M1 savegame and continuing play.
2016-09-23 20:05:12 +02:00
Christoph Oelckers
b844ab137e
- added some comments about the special player treatment in hub travels because this is not really intuitive...
2016-09-23 18:12:38 +02:00
Christoph Oelckers
01d28e3eb2
- added the last missing bits of the savegame code - thinker list deserialization and handling of players during hub travel. Now testing is what remains...
2016-09-23 17:49:33 +02:00
Christoph Oelckers
edb7f7959e
- re-enable some commented-out stuff.
2016-09-23 14:06:51 +02:00
Christoph Oelckers
86e9282193
- removed the sequential processing of JSON objects because the benefit is too small.
...
After testing with a savegame on ZDCMP2 which is probably the largest map in existence, timing both methods resulted in a speed difference of less than 40 ms (70 vs 110 ms for reading all sectory, linedefs, sidedefs and objects).
This compares to an overall restoration time, including reloading the level, precaching all textures and setting everything up, of approx. 1.2 s, meaning an increase of 3% of the entire reloading time.
That's simply not worth all the negative side effects that may happen with a method that highly depends on proper code construction.
On the other hand, using random access means that a savegame version change is only needed now when the semantics of a field change, but not if some get added or deleted.
- do not I_Error out in the serializer unless caused by a programming error.
It is better to let the serializer finish, collect all the errors and I_Error out when the game is known to be in a stable enough state to allow unwinding.
2016-09-23 14:04:05 +02:00
Christoph Oelckers
5a3f1dcdb6
- made reading of objects from the savegame work.
...
It turned out this may not be done automatically when opening the savegame - it has to be done later, after the pre-spawned map thinkers and all connected objects have been destroyed.
The object deserializer also has to be rather careful about dealing with parse errors, because if something goes wrong a whole batch of uninitialized or partially initialized objects will be left behind to destroy.
This means that no object class may assume that anything but the default constructor has been run on it and needs to check any variable it may reference.
2016-09-23 09:38:55 +02:00
Christoph Oelckers
a83ea4ddd2
- fixed two typos in property names.
2016-09-23 09:20:58 +02:00
Christoph Oelckers
cad2be46ac
- fixed several Destroy methods which blanketly assumed that the object's pointers were valid to use without checks.
...
This is not the case if deserialization prematurely aborts. The entire object may be invalid if something in the deserializer I_Error's out.
2016-09-23 08:49:30 +02:00
Christoph Oelckers
657140f985
- fixed: The canvastexture serializer did not call EndArray to close the containing object.
2016-09-23 08:27:31 +02:00
Christoph Oelckers
4964f94de1
- added a destructor zo DFsScript, because if this gets deleted outside the GC process it'll leave an allocated buffer behind, so make sure it always gets destroyed.
2016-09-23 08:26:36 +02:00
Christoph Oelckers
f397a4943c
- added OutputDebugString calls to I_Error functions in Win32, so that these messages can be seen in the debug output.
2016-09-23 08:14:40 +02:00
Christoph Oelckers
c17da32dbd
- added object deserialization. It seems to work, at least the stuff I sampled looked like it was properly reatored and it triggers no error condition.
...
- always make the top level object randomaccess when opening a JSON file for reading. Some things won't work right if this is opened for sequential access.
2016-09-23 00:45:41 +02:00
Christoph Oelckers
604b2b316b
- we need to save the OF_JustSpawned flag to insert thinkers into the proper list.
2016-09-22 21:17:34 +02:00
Christoph Oelckers
c22e8c50af
- fixed some errors with parsing globals.json. It looks like this file is being processed correctly now.
2016-09-22 19:36:23 +02:00
Christoph Oelckers
d9dbf26f63
- do not list savegames for different IWADs.
2016-09-22 17:39:09 +02:00
Christoph Oelckers
f52e2a8cc4
- removed bogus BeginObject call in deferred script serializer.
2016-09-22 12:36:29 +02:00
Christoph Oelckers
d5b771afdd
- fixed: Both array serializers need the bounds check.
2016-09-22 11:53:09 +02:00
Christoph Oelckers
68dc75bf9e
- fixed: array clamping may only be done when reading a savegame.
...
- fixed generation of savegame names for level snapshots.
2016-09-22 11:51:29 +02:00
raa-eruanna
2a9e97688d
Merge http://github.com/coelckers/gzdoom
2016-09-22 05:23:02 -04:00
Christoph Oelckers
e01965b747
- fixed deserialization of level.Scrolls.
2016-09-22 11:22:15 +02:00
Christoph Oelckers
18ee6353fa
- let's be safe and set the proper texture mode for the fullscreen blend rect. I've got spurious reports that on some occasions it was rendered opaque.
2016-09-22 10:54:16 +02:00
Christoph Oelckers
1bddc277e6
- fixed winding of voxel polygons.
2016-09-22 10:28:14 +02:00
Christoph Oelckers
960ed5130c
- fixed: DTA_ColorOverlay was not properly handled by F2DDrawer.
2016-09-22 10:20:36 +02:00
Christoph Oelckers
52d4c3970e
- use glPOlygonOffset on non-translucent flat and wall sprites to avoid z-fighting.
2016-09-22 10:00:40 +02:00
Christopher Bruns
2e8d2ed626
Implement vr_swap_eyes CVAR, now that side-by-side mode is mostly working.
2016-09-22 09:25:49 +02:00
Christopher Bruns
a1cbd39f3f
Move call to Stereo3DMode.AdjustPlayerSprites into FGLRenderer.DrawPlayerSprites()
...
(cherry picked from commit 5b5598d7d85c6bb8930e874d5d94cca835061bf0)
2016-09-22 09:25:48 +02:00
Christopher Bruns
a5c27af59b
Show weapon at full width in SideBySideFull 3D mode.
...
(cherry picked from commit c42e98c0042937adc05c1f1569d909d58a5b8ffb)
2016-09-22 09:25:48 +02:00
Christopher Bruns
7b8847c6be
Update comment for other file.
2016-09-22 09:25:47 +02:00
Christopher Bruns
d10a0309ab
Update header comment in gl_sidebyside3d source files
2016-09-22 09:25:47 +02:00
Christopher Bruns
1f79e23d5b
Implement wide side-by-side mode, using adjusted aspect ratio in projection matrix.
...
Use optimal framebuffer size for side-by-side modes.
2016-09-22 09:25:46 +02:00
Christopher Bruns
9a257ac158
Implement side-by-side narrow 3D mode.
2016-09-22 09:25:46 +02:00
raa-eruanna
72491049e0
Changes to the contrast/brightness/gamma formula for both hardware and shader gamma correction. Mainly makes a correction with the shader version where contrast/brightness being negative values would clip them inappropriately.
2016-09-22 09:23:25 +02:00
Magnus Norddahl
af699dcebc
Make bloom/exposure less aggressive
2016-09-22 09:13:33 +02:00
Magnus Norddahl
f7b6b1433c
Added exposure pass calculating the bloom/tonemap exposure based on what the eye is seeing
2016-09-22 09:13:32 +02:00
Christoph Oelckers
f0e8e860f1
Merge branch 'master' into json
2016-09-22 09:09:48 +02:00
Christoph Oelckers
1e6b99cebd
Merge branch 'master' of https://github.com/rheit/zdoom
2016-09-22 09:06:34 +02:00
Christoph Oelckers
146b5d2d06
- use 'override' qualifier on renderer interface.
...
Bad things can happen if these get changed in ZDoom without adapting to the change so better let the compiler handle this automatically.
2016-09-22 09:06:21 +02:00
nashmuhandes
a49e15c541
Added REOPEN script type. These scripts behave just like OPEN scripts, except they will re-execute themselves every time the level is re-entered (ie as part of a hub).
2016-09-22 08:57:22 +02:00
LordMisfit
715aa80cf2
- Fix for DamageFactor bug w/ PowerDamage & PowerProtection
2016-09-22 08:52:43 +02:00
alexey.lysiuk
2d55f713c2
Fixed support for automatic graphics switching on macOS
...
The corresponding setting in .plist is wrong but Xcode fixes it automatically
This doesn't happen however when building via makefiles
2016-09-22 08:52:43 +02:00
Major Cooke
1383355be7
Removed the positive-only ripper level requirement.
...
- Several mods were able to just take advantage of A_SetRipperLevel and the likes, essentially bypassing this gate so there really is no point in doing this anymore.
2016-09-22 08:50:38 +02:00
raa-eruanna
76c5ff29fe
If Inventory.MaxAmount > 1 on weapons, allow and track multiple pickups.
2016-09-22 08:47:23 +02:00
alexey.lysiuk
0a24c15445
Added ability to customize path to FluidSynth dynamic library
...
Use fluid_lib CVAR to set path or default name of dynamic library will be used instead
2016-09-22 08:43:00 +02:00
alexey.lysiuk
4f7e1f0171
FluisSynth dynamic library is now referenced by system specific name on macOS
2016-09-22 08:43:00 +02:00
raa-eruanna
bc0624e3b2
Fixed my error where I was using a local session variable rather than the proper user info for the weapon bob speed.
2016-09-22 08:42:59 +02:00
raa-eruanna
780d672b25
Adds user-definable weapon bob speed
2016-09-22 08:42:59 +02:00
Leonard2
b5b9baaa87
The VM now aborts when a wrong self pointer is used with user variables to avoid random crashes
2016-09-22 08:42:59 +02:00
Magnus Norddahl
7c862b85b3
Don't do ambient occlusion when rendering to texture
2016-09-22 03:49:19 +02:00
Christoph Oelckers
5dfc396bb9
- read snapshots from zip.
2016-09-22 01:28:05 +02:00
Christoph Oelckers
f93e4813d1
- removed farchive.cpp and .h
2016-09-22 00:48:22 +02:00
Christoph Oelckers
1c9dbc3c36
- converted the basic savegame loader so that all remnant of FArchive have been removed now.
2016-09-22 00:18:31 +02:00
Christoph Oelckers
88c27e2cc0
- allow the compact and pretty writers for JSON to coexist by wrapping the whole stuff into another class that calls the proper one as needed. Due to the implementation it is not possible to decide at run time how this should behave so there have to be two different objects for either mode.
...
- savegame code handles new format.
2016-09-21 21:57:24 +02:00
Christoph Oelckers
ac3c00883d
- implemented saving of new format savegames as zips. The code for that was adapted from zipdir.c.
2016-09-21 17:37:56 +02:00
Christoph Oelckers
810ef8f775
- save global savegame data to JSON as well.
...
This is incomplete and untested, just a safety commit before going on.
2016-09-21 12:19:13 +02:00
Christoph Oelckers
dbea80e943
- put savegame extension in version.h
2016-09-21 09:06:04 +02:00
Christoph Oelckers
67239cd623
- added a FileWriter class (taken from another project of mine) and changed m_png.cpp to use it.
...
This is so that PNGs can be written to memory, not just to an external file. stdio's FILE cannot be easily redirected but a C++ class can.
The writer is very simple and primitive right now, allowing no seeking, but for the job at hand it is sufficient.
Note that large parts of savegame creation have been disabled, because they are about to be rewritten and it makes no sense to adjust them all before.
2016-09-21 09:01:12 +02:00
Rachael Alexanderson
eeb4cbdfbc
Merge http://github.com/rheit/zdoom
2016-09-21 01:47:36 -04:00
raa-eruanna
d9e60644b1
Some Linux SDL fixes. Will have to do this for Mac, later, too.
2016-09-21 01:08:00 -04:00
Braden Obrzut
8aa09768f0
- Fixed: Memory(Array)Reader's seek range didn't include the end of file. Since GetLength exists this is inconsequential for ZDoom, but still incorrect.
2016-09-20 21:23:37 -04:00
Magnus Norddahl
b6c64416be
Added SceneData texture as the second colorbuffer when rendering a scene and placed fog data into it
2016-09-21 02:04:56 +02:00
Christoph Oelckers
075e98c967
- use FCompressedBuffer to store level snapshots. FCompressedMemFile has been removed.
2016-09-21 01:48:23 +02:00
Christoph Oelckers
da83d9e2bd
- converted player serializer and everything it needs.
...
This means that everything belonging to the level snapshot will be generated in the JSON output.
2016-09-21 01:18:29 +02:00
Christoph Oelckers
3a1191281f
- some preparations for converting the player serialization code.
...
- converted sound and canvas texture serialization.
- refactored file_zip, so that it can be used to load loose zip files and extract their compressed data directly.
- added handling to FSerializer to generate and consume compressed Zip file entries.
If all goes well this will allow saving savegames as Zips when the rework is done, which will make analyzing them a lot easier.
2016-09-20 23:13:12 +02:00
Christoph Oelckers
970c168b13
- re-added serialization of treanslations.
...
- removed more dead code.
2016-09-20 19:45:32 +02:00
Christoph Oelckers
e101014432
- converted the user variable serializer.
2016-09-20 18:27:47 +02:00
Christoph Oelckers
e41296a64d
- added some separators to dobject.cpp
...
- added restore code for subsector automap info.
2016-09-20 13:30:31 +02:00
Christoph Oelckers
f3e8c7c241
- fixed incomplete hudmessage serialization.
...
- fixed a few errors in the ACS module serializer.
- reordered a few things to how they were in the old code.
- optimized serialization of the level.Scrolls array to happen within the sector. This is to allow skipping 0-entries which normally constitute the vast majority of them.
2016-09-20 13:21:41 +02:00
Christoph Oelckers
cf1e6d5275
- converted FBehavior::StaticSerializeModuleStates.
...
- removed some code which is no longer needed.
2016-09-20 11:35:25 +02:00
Christoph Oelckers
42e38f6cc1
- more cleanup to reduce references to FArchive.
2016-09-20 10:59:48 +02:00
Christoph Oelckers
af6404f763
- all DObjects converted.
...
- cleaned out some old cruft that's no longer needed.
2016-09-20 10:27:53 +02:00
Christoph Oelckers
daf43f9d35
- added polyobject serializer.
...
- added sanity checks to prevent a savegame from being loaded with an incompatible map
- refactored a few things to simplify serialization.
- started work on main level serializer function.
2016-09-20 09:11:13 +02:00
Magnus Norddahl
24f748da03
Add gbuffer pass support to FShaderManager and FRenderState
2016-09-20 02:57:57 +02:00
Christoph Oelckers
ab43e0c8cb
- all thinker serializers done.
2016-09-20 00:41:22 +02:00
Magnus Norddahl
77233f2f65
Merge remote-tracking branch 'upstream/master' into truecolor
...
# Conflicts:
# src/v_video.cpp
2016-09-19 23:55:15 +02:00
Christoph Oelckers
a5000ead4c
- another batch.
2016-09-19 19:58:04 +02:00
Christoph Oelckers
e89d072abc
- most thinkers are done. Some stuff about polyobject pointers is temporarily disabled right now because some of the required functions have already been pulled out.
2016-09-19 19:14:30 +02:00
Christoph Oelckers
340c7795f3
- clean out the dump. It's not like this branch is ever going zo be used for saving with the old code anyway. Only the stuff needed to not make it crash or fail on compilation is kept.
2016-09-19 16:10:25 +02:00
Christoph Oelckers
88eab9d1f9
- And another batch of serializers.
2016-09-19 15:07:53 +02:00
Christoph Oelckers
a542e99143
- a few more
2016-09-19 13:36:58 +02:00
Christoph Oelckers
7edf4c1afc
- added new serializers to several classes and moved the old ones to the dump file.
2016-09-19 12:53:42 +02:00
Christoph Oelckers
d24aa5dec9
- reformatting for easier search.
2016-09-19 10:47:59 +02:00
Christoph Oelckers
e754fae0a8
- removed FS HUD pics. No mod in existence ever used them and a quickly thrown together test showed that the code did not even work. And since there's no reason to fix it they are gone now.
2016-09-19 10:41:21 +02:00
Christoph Oelckers
c665cc53f9
- moved new code to its proper location and started moving the replaced old archive code to a placeholder file for easy removal later.
2016-09-19 10:34:54 +02:00
raa-eruanna
20e620bbe7
Merge http://github.com/coelckers/gzdoom
...
# Conflicts:
# src/version.h
2016-09-19 03:05:38 -04:00
Christoph Oelckers
475077f1de
Merge branch 'master' of https://github.com/rheit/zdoom
2016-09-19 09:01:34 +02:00
Christoph Oelckers
daf33b5b4f
- master is now at 2.3pre.
2016-09-19 09:01:21 +02:00
Christoph Oelckers
65c6388d44
Merge branch 'master' into json
2016-09-19 03:54:36 +02:00
Christoph Oelckers
3eb1af6957
- added a GetMissileDamage function to DECORATE which can be used to properly retrieve an actor's damage value.
...
The damage property should be considered deprecated inside expressions from now on.
2016-09-19 03:45:22 +02:00
Christoph Oelckers
f1ba19073f
- split Damage into two variables: DamageVal for the old constant and DamageFunc for the DECORATE function.
...
The way this was done was a major headache inducer, requiring reconstruction of the function each time the value was changed and in general made actor damage a major hassle.
There was a DECORATE wrapper to mimic the original behavior but this looked quite broken because it completely ignored the different semantics of both damage calculation types.
It also made it impossible to determine if damage was a function or a value.
This accessor has been reverted to what it should be, only returning the constant, which now is -1 for a damage function. I am sorry if this may break the odd mod out but a quick look over some DECORATE-heavy stuff showed that this was never combined in any of them so that accessing 'damage' in DECORATE code depended on an actual damage function.
To get proper damage, a future commit will add a DECORATE function which calls AActor::GetMissileDamage.
2016-09-19 03:36:51 +02:00
Christoph Oelckers
967ed48fd3
- fixing.
2016-09-19 01:48:48 +02:00
Christoph Oelckers
718614a820
- cleanup
2016-09-19 01:07:51 +02:00
Magnus Norddahl
b1871b272b
Merge branch 'exposure_pass' into lightmath
2016-09-18 19:31:36 +02:00
Magnus Norddahl
210dd6d26a
Make bloom/exposure less aggressive
2016-09-18 19:31:09 +02:00
Christoph Oelckers
ceaa040750
- added a workaround to avoid sprite splitting when it may cause glitches for sprites that get rotated in the draw pass.
2016-09-18 17:45:02 +02:00
Christoph Oelckers
a5628518c1
- cut down on data size by not saving trivial defaults.
2016-09-18 16:41:34 +02:00
Magnus Norddahl
38be2333d0
Merge branch 'exposure_pass' into lightmath
...
# Conflicts:
# src/gl/renderer/gl_renderbuffers.cpp
# src/gl/renderer/gl_renderbuffers.h
# src/gl/renderer/gl_renderer.h
# src/gl/scene/gl_scene.cpp
2016-09-18 16:22:44 +02:00
Magnus Norddahl
8dd12c8216
Merge remote-tracking branch 'gzdoom_upstream/master' into lightmath
2016-09-18 16:01:21 +02:00
Magnus Norddahl
1e2935f4e0
Added exposure pass calculating the bloom/tonemap exposure based on what the eye is seeing
2016-09-18 15:57:22 +02:00
Christoph Oelckers
9313a99e12
- started implementing a JSON based serializer. Unfortunately it is far too slow to be of any real use.
2016-09-18 13:26:34 +02:00
Christoph Oelckers
3db7d9ad84
- fixed: AActor::alternative was not declared as a pointer.
2016-09-18 12:22:56 +02:00
raa-eruanna
e47e6d1d6e
Merge http://github.com/coelckers/gzdoom
2016-09-17 20:06:22 -04:00
Christoph Oelckers
6b4aee28bc
Merge branch 'master' of https://github.com/rheit/zdoom
2016-09-17 20:22:43 +02:00
Major Cooke
80c1baa596
Fixed: Pitch was rotating around the wrong axis.
2016-09-17 12:10:22 -05:00
raa-eruanna
962291d18e
Merge http://github.com/coelckers/gzdoom
2016-09-17 11:32:57 -04:00
Christoph Oelckers
bec17bd222
- FLATSPRITE fixes.
2016-09-17 08:26:30 +02:00
Major Cooke
d01b0e061e
Moved flatsprite code into CalculateVertices.
2016-09-16 12:07:28 -05:00
Major Cooke
66d20726c2
Reintroduced flat sprites once more.
...
- Take note, current flat sprites will change. With no pitch involved, sprites are now flat across the ground.
2016-09-16 11:47:20 -05:00
raa-eruanna
922360ae35
Merge http://github.com/rheit/zdoom
2016-09-16 11:49:45 -04:00
raa-eruanna
7da94e5aca
Merge http://github.com/coelckers/gzdoom
2016-09-16 11:49:42 -04:00
Christoph Oelckers
7c2886e8ea
- fixed the last commit:
...
The altered vertices must always be copied to the actual buffer and it's not necessary to copy everything, copying the 4 changed ones is sufficient.
2016-09-16 08:10:19 +02:00
raa-eruanna
476b727d5d
"actorlist" and "actornum" no longer return already-owned inventory objects
2016-09-16 00:47:56 -04:00
Magnus Norddahl
3c1868f7e6
Fix wrong flash rectangle size after window resize
2016-09-16 02:53:19 +02:00
raa-eruanna
a83477e549
Merge http://github.com/rheit/zdoom
2016-09-15 19:18:56 -04:00
raa-eruanna
ac70f77e44
Added the following ccmds:
...
actorlist, actornum, monsternum, itemsnum, countitemsnum
Modified the following ccmds:
monster, items, countitems
All commands with "num" at the end simply print a count of their respective filters, all other listed commands now print a list and a count.
2016-09-15 15:09:36 -04:00
Magnus Norddahl
0d27996a64
Replace CheckRatio with AspectTallerThanWide in DrawHUD
2016-09-15 07:52:53 +02:00
Magnus Norddahl
48f491cfd1
Fix video mode selection bug
2016-09-15 07:52:53 +02:00
Magnus Norddahl
95fef44200
Merge remote-tracking branch 'gzdoom_upstream/master' into lightmath
2016-09-15 00:31:34 +02:00
Christoph Oelckers
d128e28044
Merge branch 'master' of https://github.com/rheit/zdoom
2016-09-14 21:05:45 +02:00
Leonard2
cb17e109f1
Added "division by zero" to the VM-aborting errors
2016-09-14 20:47:00 +02:00
Leonard2
65af26f962
The VM now properly aborts on critical errors
2016-09-14 20:46:18 +02:00
raa-eruanna
4ccba9c49e
Merge http://github.com/rheit/zdoom
2016-09-14 14:08:41 -04:00
raa-eruanna
343cde4595
Merge http://github.com/coelckers/gzdoom
2016-09-14 14:08:19 -04:00
Christoph Oelckers
8b6e09ca09
- changed the license of the OpenGL renderer to LGPL v3.
...
This was done to clean up the license and to ensure that any commercial fork of the engine has to obey the far stricter requirements concerning source distribution. The old license was compatible with GPLv2 whereas combining GPLv2 and LGPLv3 force a license upgrade to GPLv3. The license of code that originates from ZDoomGL has not been changed.
2016-09-14 20:01:13 +02:00
raa-eruanna
842558384a
Forgot to set vid_renderer defaults for Linux and Mac.
2016-09-14 07:33:31 -04:00
raa-eruanna
b0029fcd1e
Set version to 0.0 (prerelease), set render defaults for true-color software renderer since that is the focus of this project
2016-09-14 06:38:08 -04:00
raa-eruanna
3ebf8c7e74
More code fixes - now it compiles.
2016-09-14 06:28:39 -04:00
raa-eruanna
004c7de89b
Part 1 of code merge
2016-09-14 04:03:39 -04:00
raa-eruanna
b17b7446cb
Merge http://github.com/coelckers/gzdoom
2016-09-14 03:15:56 -04:00
raa-eruanna
81545d9b4e
Merge http://github.com/rheit/zdoom
...
# Conflicts:
# src/v_video.cpp
2016-09-14 02:24:59 -04:00
raa-eruanna
b85e3b56e3
Establish QZDoom
2016-09-14 02:21:35 -04:00
Major Cooke
3b2359959e
Quakes must use their own independent falloffs.This caused discrepencies and sudden drop-outs in stacked quakes otherwise.
2016-09-13 23:06:57 -05:00
Braden Obrzut
f1bca9d20e
The old DirectX setup is required to utilize v140_xp.
...
Revert "- removed DirectX setup from CMakeLists for Visual Studio"
This reverts commit 954ac8ce5e
.
2016-09-13 20:12:59 -04:00
Magnus Norddahl
c54b4e74f5
Merge remote-tracking branch 'gzdoom_upstream/master' into lightmath
2016-09-13 23:44:12 +02:00
Magnus Norddahl
017d1cee29
Change canvas rendering to use the aspect ratio of the canvas and generalize 5:4 rendering as AspectTallerThanWide
2016-09-13 23:42:05 +02:00
Magnus Norddahl
172f58c165
Fix 5:4 aspect ratio gun and status bar
2016-09-13 23:42:05 +02:00
Christoph Oelckers
0c0e716ccd
Merge remote-tracking branch 'remotes/zdoom/master'
2016-09-13 23:37:30 +02:00
Christoph Oelckers
a98f364cc3
- added another missing nullptr check.
2016-09-13 23:37:19 +02:00
alexey.lysiuk
dcabcaa5b6
Fixed compilation on non-Windows platforms
2016-09-13 22:10:07 +03:00
Christoph Oelckers
ba68cfd611
- do not even allow creation of names in C_RemoveTabCommands if there are no tab commands, so that FindName cannot be called after the NameManager has been destroyed.
2016-09-13 21:01:50 +02:00
Christoph Oelckers
e10abcad06
- fixed: The TabCommands array needs to be cleared before the NameManager is destroyed.
...
TabCommands use an FName to store the command's name so once the NameManager is destroyed its data will become invalid.
This is a problem because C_RemoveTabCommand is being called from FBaseCVar's destructor and most CVARs are global variables.
2016-09-13 10:43:53 +02:00
Christoph Oelckers
c593dda8f3
- added missing nullptr check.
2016-09-12 23:03:27 +02:00
Magnus Norddahl
0fc5ee1ffd
Merge remote-tracking branch 'gzdoom_upstream/master' into lightmath
2016-09-12 22:30:46 +02:00
Christoph Oelckers
3778799f92
Merge branch 'master' of https://github.com/rheit/zdoom
2016-09-12 21:33:49 +02:00
Christoph Oelckers
823f75e592
- fixed: UDMF user value lists need to be sorted for binary search to work but weren't.
2016-09-12 21:32:17 +02:00
Magnus Norddahl
b378b3d05a
Remove black bars from windowed mode
2016-09-12 20:43:45 +02:00
alexey.lysiuk
b308a7df52
Proper name of FMOD .dylib in loading path adjustment for macOS
2016-09-12 20:37:13 +02:00
alexey.lysiuk
9c91686e0f
Set delay loading for proper .dll depending on FMOD version (Studio vs. Ex)
2016-09-12 20:37:13 +02:00
alexey.lysiuk
7e61a1ce2b
Added simple detection for FMOD Studio API in CMake
2016-09-12 20:37:12 +02:00
alexey.lysiuk
c88eec3d73
Fixed 'unreferenced local variable' warnings when building with FMOD Studio API
2016-09-12 20:37:12 +02:00
alexey.lysiuk
764705a8e0
Fixed 'Could not set resampler method. Defaults will be used. (Error 31)' message with FMOD Studio API
2016-09-12 20:37:11 +02:00
alexey.lysiuk
a2a1d2a36d
Fixed significant distortion of sound effects with FMOD Studio API
2016-09-12 20:37:11 +02:00
Magnus Norddahl
7bdbaaff22
GL aspect ratio adjustments
2016-09-12 20:29:26 +02:00
Magnus Norddahl
7070bded77
Merge remote-tracking branch 'origin/aspectratio' into aspectratio_gzdoom
2016-09-12 20:03:21 +02:00
Magnus Norddahl
01b1efe9ee
Switch from abs to fabs
2016-09-12 18:44:04 +02:00
Magnus Norddahl
4e58e6626c
Fix buffer overrun in CommandAspectRatio for 21:9 aspect ratio
2016-09-12 16:05:42 +02:00
Magnus Norddahl
5b438d220f
Switch from ratio enum to float
2016-09-12 15:51:50 +02:00
Magnus Norddahl
6d4e4dad25
BaseRatioSizes replacement functions
2016-09-12 14:37:10 +02:00
Magnus Norddahl
5720634045
Add ActiveRatio to be used where CheckRatio is used today
2016-09-12 13:59:01 +02:00
Magnus Norddahl
b003c47e3e
Improve CheckRatio to always return the closest ratio
2016-09-12 13:37:05 +02:00
Magnus Norddahl
d3d8180f57
Resize framebuffer in windowed mode to match the client area
2016-09-12 13:04:36 +02:00
Magnus Norddahl
a0b6a0275c
Fix random texture sampling bug
2016-09-11 11:09:40 +02:00
Christoph Oelckers
be647dc7b2
Merge branch 'master' of https://github.com/rheit/zdoom
2016-09-11 00:45:40 +02:00
Christopher Bruns
924aaa3a92
fixed: Delay setup of quad-buffered stereo 3d mode, in case a useful OpenGL context is not immediately provided.
2016-09-11 00:45:17 +02:00
Magnus Norddahl
03d0b09f29
Fix depth blur
2016-09-10 22:39:09 +02:00
alexey.lysiuk
66c5121e38
Do not use OpenGL Core Profile for software renderer on macOS
2016-09-10 17:54:19 +03:00
Christoph Oelckers
71f4bacbd7
- missed something for last commit.
2016-09-10 12:36:44 +02:00
Christoph Oelckers
d3246be488
- draw wall sprites without translucent pixels as opaque. This looses the border smoothing with texture filtering but avoids sorting problems.
2016-09-10 12:24:13 +02:00
Christoph Oelckers
30cb651d92
- completely removed the flat sprite code.
...
This was conceptionally so wrong that there is no chance to salvage any of it.
2016-09-10 10:58:53 +02:00
raa-eruanna
02e4ba464a
Fixed mirror angle issue, fixes rendering of mirrors
2016-09-10 08:56:40 +02:00
Magnus Norddahl
303da0e071
Fix center text alignment issue
2016-09-09 20:09:54 +02:00
Magnus Norddahl
63fb604e98
Fix stripes in the reconstructed normals due to down scaling
2016-09-09 18:19:00 +02:00
raa-eruanna
b0e104d566
Merge http://github.com/coelckers/gzdoom
2016-09-09 11:31:31 -04:00
Magnus Norddahl
8861b1aaff
Grab tanHalfFovy from the projection matrix
2016-09-09 09:47:46 +02:00
Magnus Norddahl
f6bede8374
Merge remote-tracking branch 'gzdoom_upstream/master' into lightmath
...
# Conflicts:
# src/gl/renderer/gl_renderbuffers.cpp
# src/gl/renderer/gl_renderbuffers.h
# src/gl/renderer/gl_renderer.h
# src/gl/scene/gl_scene.cpp
# wadsrc/static/language.enu
# wadsrc/static/menudef.z
2016-09-09 09:31:30 +02:00
Magnus Norddahl
d83a72f361
Add missing IsEnabled check
2016-09-09 00:36:12 +02:00
Magnus Norddahl
63dc394913
Present function for left, right and quad-buffered stereo3d
2016-09-09 00:36:11 +02:00
Magnus Norddahl
8b7267cf87
MaskAnaglyph present mode
2016-09-09 00:36:11 +02:00
Magnus Norddahl
ccbe5160b0
Split F2DDrawer::Flush into Draw and Clear
2016-09-09 00:36:10 +02:00
Magnus Norddahl
aaa3581ee6
Hook up eye textures in renderer
2016-09-09 00:36:10 +02:00
Magnus Norddahl
4bdd872f09
Add eye textures and FBOs to FGLRenderBuffers
2016-09-09 00:36:09 +02:00
Christoph Oelckers
b9ca3c85f8
- fixed: translucency detection in multipatch textures did not work.
...
- fixed: The flat drawer never checked if a texture had translucent parts.
2016-09-08 12:18:09 +02:00
raa-eruanna
dede94b7e2
Merge branch 'master' of https://github.com/coelckers/gzdoom
...
# Conflicts:
# src/posix/cocoa/i_video.mm
# src/win32/hardware.cpp
# wadsrc/static/menudef.txt
2016-09-08 03:26:11 -04:00
raa-eruanna
32f758de41
Merge branch 'truecolor' of https://github.com/dpjudas/zdoom
...
# Conflicts:
# src/v_video.cpp
2016-09-08 03:19:08 -04:00
raa-eruanna
5a64307ad1
Changes the tonemap generation algorithm.
2016-09-08 00:51:48 +02:00
Christoph Oelckers
7e2e3e8768
Merge branch 'master' of https://github.com/rheit/zdoom
2016-09-08 00:48:27 +02:00
Magnus Norddahl
e794e59cd2
Add con_scale for scaling just the console
2016-09-08 00:39:52 +02:00
Magnus Norddahl
d2f8fc63fc
Scale the console itself as specified by con_scaletext
2016-09-08 00:39:51 +02:00
Magnus Norddahl
6414e01354
Add uiscale slider controlling what scale the On setting uses for hud_scale, hud_althudscale and con_scaletext
2016-09-08 00:39:51 +02:00
Major Cooke
01e9d351b4
- Don't pass flags directly from A_Explode to P_RadiusAttack. XF_EXPLICITDAMAGETYPE would cause explosions to deal no damage otherwise.
2016-09-08 00:38:12 +02:00
Major Cooke
043ada24da
Wave quakes now stack.
2016-09-08 00:38:12 +02:00
Major Cooke
ce13b5c6e1
Enhanced FastProjectile trails.
...
- Trails now copy pitch, and set the projectile as the target.
- Added GETOWNER flag. Using it sets the owner of the fast projectile as the target instead, if it has an owner.
2016-09-08 00:38:11 +02:00
yqco
2e8aa53e6a
Add SetActorFlag ACS function
...
int SetActorFlag(int tid, str flagname, bool value);
- Mimics DECORATE's A_ChangeFlag
- Returns number of actors affected (number of things with the flag)
- Affects activator if TID is 0
# Conflicts:
# src/p_acs.cpp
2016-09-07 20:44:56 +02:00
Christoph Oelckers
33ac551a9a
Merge branch 'master' of https://github.com/rheit/zdoom
2016-09-06 22:37:15 +02:00
Christoph Oelckers
f536523fbd
- It's Height, not height...
2016-09-06 22:36:53 +02:00
Christoph Oelckers
77a79048f8
Merge branch 'master' of https://github.com/rheit/zdoom
2016-09-06 22:35:27 +02:00
Christoph Oelckers
5a3147407e
- fixed floatification error in A_MaulerTorpedoWave.
2016-09-06 22:34:59 +02:00
Christoph Oelckers
181e5dc4db
- fixed floor clipping of sprites.
2016-09-06 22:18:47 +02:00
Christoph Oelckers
bfe34f4dc7
- cleanup.
2016-09-06 21:39:13 +02:00
Christoph Oelckers
a36d89405a
- separated the coordinate calculation from GLSprite::Draw.
2016-09-06 12:22:00 +02:00
Christoph Oelckers
a5c0f9a548
- use the predefined fullscreen vertices for clearing a portal instead of using the quad drawer.
2016-09-06 11:58:22 +02:00
Christoph Oelckers
3ce25bc348
- fixed: FxPreIncrDecr depended on undefined compiler behavior.
...
It could only work with right to left function argument processing, but with left to right it failed because the ParseExpressionA call altered sc.TokenType.
Note that with register-based arguments on 64 bit platforms this is a very critical issue!
2016-09-06 08:41:13 +02:00
Christoph Oelckers
74ede7bb4e
- fixed: The DrawBlend call in the postprocessing case was using the global 'viewsector' variable directly.
...
As with the Stereo3D stuff, this cannot be done because recursive processing of portals will change it. Instead the local copy has to be used here, just like the EndDrawScene call already did.
2016-09-05 09:10:29 +02:00
alexey.lysiuk
108dcf122a
Updated support for legacy renderer in Cocoa backend
...
Added fallback to legacy profile when creation of pixel format for core context failed
Added handling of -glversion command line switch
2016-09-04 15:25:37 +03:00
Christoph Oelckers
d2ead39bcc
- force framebuffers for camera textures on GL 3+ hardware. With all the postprocessing stuff added I don't think it's ok to use the screenbuffer for this anymore.
...
- disable framebuffers for camera textures in legacy mode entirely. This depends on a GL_DEPTH24_STENCIL8 surface which most of these old chipsets do not support, and I really see no point to invest any work here. The worst that can happen is that oversized camera textures won't be processed, which, due to general performance issues, might even be a good thing.
2016-09-04 14:16:05 +02:00
Christoph Oelckers
95bedac6ca
- inlined FHardwareTexture::GetTexDimension.
2016-09-04 13:14:14 +02:00
Christoph Oelckers
8b01a88b76
- removed gl_lights_size and gl_lights_intensity.
...
Both of these were inherited from ZDoomGL and in terms of light design in maps it makes absolutely no sense to have them user configurable. They should have been removed 11 years ago.
2016-09-04 12:45:09 +02:00
Christoph Oelckers
e7856ce1e3
- removed unused forceadditive parameter from gl_GetLight.
...
- restricted gl_lights_additive to legacy code and removed menu entry for this.
For modern hardware this setting is completely pointless, it offers no advantage and degrades visual quality. Its only reason for existence was that drawing additive lights with textures is a lot faster, and that's all it's being used for now.
2016-09-04 12:35:26 +02:00
Christoph Oelckers
37d0f97808
Merge branch 'master' of https://github.com/rheit/zdoom
2016-09-04 10:29:15 +02:00
Christoph Oelckers
954ac8ce5e
- removed DirectX setup from CMakeLists for Visual Studio
...
For VS 2015 this is no longer needed, the DX headers and libraries are part of the Windows SDK and do not need to be looked for explicitly.
2016-09-04 10:28:29 +02:00
Christoph Oelckers
eff03d13f0
- fixed last commit.
2016-09-04 10:28:29 +02:00
alexey.lysiuk
677efb73bc
Fixed compilation with GCC/Clang
...
No longer aborts with error: cannot pass object of non-trivial type 'FString' through variadic method; call will abort at runtime
2016-09-04 10:05:07 +03:00
Christoph Oelckers
f021d13ead
Merge branch 'master' of https://github.com/rheit/zdoom
2016-09-04 08:33:40 +02:00
Christoph Oelckers
77ac3bb265
- fixed angle range checks in A_CheckIfTargetInLOS.
...
The fixed point version had a mostly useless check that excluded ANGLE_MAX, this got incorrectly converted to floating point.
Note that this version will clamp the angle to 360°, not merely overflow like it did with the fixed point code
2016-09-04 08:33:19 +02:00
Magnus Norddahl
3727c5ed0f
Mark portals in scene alpha channel for the SSAO pass
2016-09-04 08:15:29 +02:00
Magnus Norddahl
527703ae8c
Fix missing flash if multisampling was on and no post processing effects active
2016-09-04 03:21:47 +02:00
Magnus Norddahl
5f02e08c8e
Fix minimize crash
2016-09-04 03:15:50 +02:00
Magnus Norddahl
dc39a006dc
Fix palette tonemap precision and compile error on Intel
2016-09-04 02:37:59 +02:00
Christoph Oelckers
4eda5f841e
Merge branch 'master' of https://github.com/rheit/zdoom
2016-09-04 01:46:49 +02:00
Christoph Oelckers
217601f338
- fixed: FPortal::ClearScreen may not use the 2D drawing code anymore.
...
2D calls are accumulated and then executed all at once at the end of the frame, but this one needs to be interleaved with the 3D rendering. It now uses the quad drawer to fill the portal with blackness.
2016-09-04 01:46:29 +02:00
Blue-Shadow
2ed4208a1b
Added IfCVarInt SBARINFO command
2016-09-03 18:55:19 +03:00
Christoph Oelckers
c3ad0a2f16
Merge branch 'master' of https://github.com/rheit/zdoom
2016-09-03 17:29:47 +02:00
Christoph Oelckers
f31346968f
- added missing #include.
2016-09-03 17:29:28 +02:00
Christoph Oelckers
3ae2e77512
- added xBRZ files.
2016-09-03 16:55:16 +02:00
Christoph Oelckers
4a80f8e4ed
- fixed: Camera textures and savegame pictures should not be drawn with a Stereo3D mode.
2016-09-03 16:54:17 +02:00
Christoph Oelckers
e08015a181
Merge branch 'master' of https://github.com/rheit/zdoom
2016-09-03 14:02:28 +02:00
Christoph Oelckers
aece9aaa58
- added xBRZ texture scaler after clearing the licensing conditions. A screenshot of the confirmation that this is ok has been added to the 'licenses' folder.
2016-09-03 14:01:51 +02:00
Christoph Oelckers
5770e5dfaf
- split up m_specialpaths.cpp to be a separate file for each operating system.
...
The reason for this is that the macOS version uses a deprecated API and in order to correct this, the file needs to be compiled as Objective-C++ which requires a different extension.
2016-09-03 12:00:08 +02:00
arookas
d7b5bdc0f7
Renamed Thing_Damage3 to DamageActor
2016-09-03 08:27:38 +02:00
arookas
d14782fb37
Added Thing_Damage3 function
...
It acts as a simple wrapper around P_DamageMobj which can damage a
single actor, but can also set the actor inflicting the damage. It
returns the amount of damage actually done, or -1 if the damaging was
cancelled.
2016-09-03 08:27:38 +02:00
Magnus Norddahl
e7765bb240
Move SSAO pass to be before translucent rendering
...
Fix depth sampling location when not using fullscreen scene
2016-09-03 04:29:50 +02:00
Magnus Norddahl
902097d6da
Resolve multisampling depth in shader
2016-09-03 04:12:00 +02:00
Magnus Norddahl
b1c1e6aae7
Merge remote-tracking branch 'gzdoom_upstream/master' into lightmath
...
# Conflicts:
# src/gl/renderer/gl_renderbuffers.cpp
2016-09-03 01:17:16 +02:00
Christoph Oelckers
8b7a87f256
- fix conditions for DrawBlend calls.
2016-09-03 00:43:18 +02:00
Christoph Oelckers
90ab0223a6
- handle colormap parameter reset when renderbuffers are toggled.
2016-09-03 00:36:23 +02:00
Magnus Norddahl
77dde2e3ad
Fix not switching back to the default frame buffer when gl_renderbuffers is toggled off
2016-09-03 00:13:05 +02:00
Christoph Oelckers
ee503ea275
- removed now redundant mystdint.h file.
...
Visual Studio now ships stdint.h so this workaround is no longer needed.
2016-09-02 10:55:56 +02:00
Magnus Norddahl
98032bc73f
Change SSAO blur to be depth aware
2016-09-02 05:45:00 +02:00
Magnus Norddahl
5a0c61a2d5
Merge remote-tracking branch 'gzdoom_upstream/master' into lightmath
...
# Conflicts:
# src/gl/renderer/gl_postprocess.cpp
# src/gl/renderer/gl_renderbuffers.cpp
# src/gl/scene/gl_scene.cpp
2016-09-02 02:40:44 +02:00
Christoph Oelckers
7135a6909c
Merge branch 'master' of https://github.com/rheit/zdoom
2016-09-02 00:44:10 +02:00
Major Cooke
c4357bd352
Tracer pointer is no longer a safe candidate for storing player morph pointers. Instead, actors must have a new, non-manipulatable pointer. This fixes the following circumstances:
...
- Crashes occurred if a particular actor was a tracer to the player and the actor was not gone by the time the player unmorphs.
- Failed unmorphs occur if tracer was manipulated through means like A_RearrangePointers, etc.
2016-09-01 13:49:58 -05:00
Christoph Oelckers
4e8027612f
- restored 2 lines of code that somehow got lost before the last commit.
2016-09-01 17:38:17 +02:00
Christoph Oelckers
589936f570
- draw the colormap blend after postprocessing, not before it.
...
- added colormap shader to postprocessing.
This replaces the in-place application of fullscreen colormaps if renderbuffers are active. This way the fully composed scene gets inverted, not each element on its own which is highly problematic for additively blended things.
2016-09-01 17:14:51 +02:00
Christoph Oelckers
7efae2c8f8
- fixed: When requesting GL version 2.x, do not try to create a core profile context, because that can not support legacy features.
2016-09-01 12:14:20 +02:00
Christoph Oelckers
3389a5a74e
- removed most of the specific options for legacy hardware and consolidated them in one variable (does not work yet.)
2016-09-01 11:52:52 +02:00
Magnus Norddahl
8a2737a0ce
Fix precision issue in SSAO shader
2016-09-01 07:15:40 +02:00
Christoph Oelckers
4a0e082836
- fixed: The wall splitter in the translucent sorting code needs to set fracleft and fracright so that vertex generation is done correctly for the split segments.
2016-08-31 23:26:49 +02:00
Christoph Oelckers
4993018520
- fixed: Actor velocity requires an upper limit to prevent uncontrolled accumulation, as can happen when multiple exploding and pushable objects overlap. The value 5000 was chosen because it is high enough to not occur under regular circumstances and small enough to prevent severe slowdowns. In the old fixed point code the lack of such a check just caused random overflows.
2016-08-31 09:18:59 +02:00
Magnus Norddahl
55ea4a7729
Add ssao random texture
2016-08-30 01:09:21 +02:00
Christoph Oelckers
45ff15559d
- removed gl_draw_synv because with the postprocessing this is no longer useful.
2016-08-30 00:33:02 +02:00