Christoph Oelckers
2fd2ad2212
- sky code cleanup and transitioning of Duke's.
2020-07-15 00:06:19 +02:00
Christoph Oelckers
1e9679aceb
- removed faketimerhandler and the last static remains of EDuke's netcode.
2020-07-14 21:15:37 +02:00
Christoph Oelckers
af225abf80
...
2020-07-14 21:05:26 +02:00
Christoph Oelckers
05abc262ba
- removed libdivide for good and the unused C++ wrapper for fix16 along with it.
2020-07-14 20:57:42 +02:00
Christoph Oelckers
3cd475570c
- fixing problems.
2020-07-14 20:39:48 +02:00
Christoph Oelckers
424716bb88
- say goodbye to libdivide!
2020-07-14 20:21:16 +02:00
Christoph Oelckers
2f3d405f8b
- moved getatoken to scriptfile.cpp so common.cpp could be removed.
2020-07-14 19:51:54 +02:00
Christoph Oelckers
f9c03760a3
- removed setuptile DEF command due to the hacky implementation and general uselessness of what can be done with it.
2020-07-14 17:47:11 +02:00
Christoph Oelckers
fedeec73c7
- cleaned out some unused parts of engine.cpp
2020-07-14 17:35:19 +02:00
Christoph Oelckers
5655015691
- YAX is also gone now.
2020-07-14 16:06:14 +02:00
Christoph Oelckers
1d9d1396ac
- got rid of print.h (a.k.a. 'how not do design a text formatting library'.)
2020-07-14 15:41:19 +02:00
Christoph Oelckers
117e78cb3b
- removed clipshape feature as it is a feature of modern EDuke32 maps only.
2020-07-14 15:36:25 +02:00
Christoph Oelckers
aa01adb2f1
- removed osd.h as it was merely a minimal wrapper around c_dispatch, giving some alias names.
...
Nothing that's needed when cutting ties to upstream.
2020-07-14 14:00:27 +02:00
Christoph Oelckers
2e05ff532b
- got rid of the struct trackers.
...
They were only used for handling an undefined case in the renderer but the overhead and side effects were too severe.
2020-07-14 13:51:03 +02:00
Christoph Oelckers
7e261425bb
- time to get rid of clockticks.hpp.
...
Aside from its non-existent license it was also not the correct way to handle more precise view interpolation.
2020-07-14 13:00:52 +02:00
Christoph Oelckers
481ac965cf
- reverted ClockTicks to an integer so that interpolation can be reimplemented without it affecting the global game timer.
...
The entire method at use here is essentially not correct. Interpolation should be handled independently of the game timer directly based on the underlying clock, like in ZDoom.
There's interpolation bugs in the Build games that cannot be fixed if totalclock is used for it, but if we use something else we do not need a fractional totalclock.
2020-07-14 11:52:38 +02:00
Christoph Oelckers
6b86d7606f
- safety commit - does not compile!
2020-07-07 13:19:09 +02:00
Christoph Oelckers
f2380f8829
- constant cleanup.
2020-07-06 13:26:26 +02:00
Christoph Oelckers
cfe1e531c5
- activated the newly added render code and deleted the old one.
2020-07-05 21:21:39 +02:00
Christoph Oelckers
8a1206edbc
Merge remote-tracking branch 'remotes/origin/master' into back_to_basics2
2020-07-05 11:55:41 +02:00
Mitchell Richters
bbacc9e816
- factor in xdimenscale and viewingrangerecip when calculating renderSetVisibility().
...
* Changes performed in 0bd460d9e3
didn't take into account xdimenscale and viewingrangerecip like the days of old and this wasn't picked up in d80a32d379
or d80a32d379
, where the applied fixes only appeared to work because they worked for me at 2560x1440p.
2020-07-03 14:42:41 +02:00
Christoph Oelckers
c09b4896a6
- made RR summary screens work.
2020-07-01 22:14:11 +02:00
Christoph Oelckers
fc017f5868
- removed unused editwall variable.
2020-06-26 20:28:57 +02:00
Christoph Oelckers
e146e73345
- consolidated the 'music' parsing in Defs (pending a refactor of the MAPINFO system.)
...
- removed the remaining parts of the game Defs parser because we do not want anything EDuke in here.
2020-06-24 00:40:22 +02:00
Mitchell Richters
291475eeb5
- simplify visibility calculation from changes performed in d80a32d379
.
...
* Achieves the exact same result in a cleaner fashion.
2020-06-23 14:16:42 +02:00
Christoph Oelckers
56834dee6b
- 2D animation fix.
2020-06-22 00:27:11 +02:00
Christoph Oelckers
4c00e4cf7c
- got rid of the old precaching code.
...
# Conflicts:
# source/games/duke/src/zz_premap.cpp
2020-06-22 00:07:25 +02:00
Christoph Oelckers
ed9b418db7
- deleted a bit more unused code.
...
# Conflicts:
# source/games/duke/src/zz_config.cpp
2020-06-22 00:06:34 +02:00
Christoph Oelckers
e3153f143d
hudweapon
...
# Conflicts:
# source/build/src/engine.cpp
2020-06-22 00:05:07 +02:00
Christoph Oelckers
990cb2acb8
-'shoot' replaced.
...
# Conflicts:
# source/build/src/palette.cpp
2020-06-21 23:24:49 +02:00
Christoph Oelckers
f56a8360b0
- spawnglass functions and fta_sounds.
2020-06-21 23:23:21 +02:00
Christoph Oelckers
18d6a8e65d
- another safety commit.
...
# Conflicts:
# source/games/duke/src/zz_actors.cpp
2020-06-21 23:07:42 +02:00
Christoph Oelckers
e007b9bceb
- safety commit
2020-06-21 23:07:41 +02:00
Christoph Oelckers
15c744f3da
- movement code of the VM transitioned
2020-06-21 23:07:41 +02:00
Christoph Oelckers
577a800843
- the rest of sector.cpp, except for the input function.
2020-06-21 22:40:12 +02:00
Christoph Oelckers
92f5236b24
- more sector stuff.
2020-06-21 22:40:12 +02:00
Christoph Oelckers
c8cb0e4efd
- the beginning of sector.cpp
...
The math backend functions have been moved out of Build because they originally have a good license.
# Conflicts:
# source/build/src/mdsprite.cpp
# source/build/src/polymost.cpp
2020-06-21 22:39:05 +02:00
Christoph Oelckers
8cc273955d
- moveeffectors, actors.c complete.
2020-06-21 22:38:04 +02:00
Christoph Oelckers
7b75a0683a
moveactors plus backing code.
2020-06-21 22:37:29 +02:00
Christoph Oelckers
89e555761d
- guts and moves
2020-06-21 22:36:09 +02:00
Christoph Oelckers
c11963b41a
- movesprite
2020-06-21 22:36:08 +02:00
Mitchell Richters
d80a32d379
- fix render visibility calculation following changes in 0bd460d9e3
.
...
* Output from PrintVis() in 9dfd3ddd02
showed resulting global visibility as 0.078125.
* Following 0bd460d9e3
, resulting global visibility shown as 0.041667.
* Scaling g_visibility by (8.f / 15.f) (0.533333) restores resulting global visibility to 0.078125.
2020-06-21 10:12:54 +02:00
Mitchell Richters
3325ef272e
- make r_ambientlight work globally for all games by performing adjustment engine-side.
2020-06-21 10:12:54 +02:00
Christoph Oelckers
1bb7da173a
- removed a few more dependencies on Build includes.
2020-06-20 18:17:49 +02:00
Christoph Oelckers
686999381b
- moved non-Build definitions out of baselayer.h.
2020-06-20 17:52:10 +02:00
Christoph Oelckers
15d869ccde
-moved scancodes.h out of Build folder.
...
This file is from the Duke source and available under a good license so it can be moved to a better place.
2020-06-20 12:54:33 +02:00
Christoph Oelckers
198ed45357
- clean up redundancy
2020-06-20 10:58:47 +02:00
Richard C. Gobeille
d28929c437
engine: add klabs() back into ksqrtasm_old()
2020-06-17 17:10:11 +02:00
Richard C. Gobeille
4128fd62c7
engine: set g_loadedMapVersion in engineLoadBoardV5V6()
...
# Conflicts:
# source/build/src/engine.cpp
2020-06-17 12:26:05 +02:00
Richard C. Gobeille
1cab7b9765
engine: add divideu64()/divideu64_noinline()
2020-06-17 12:26:03 +02:00
Dino Bollinger
9c2c1cc765
Fix 3D model animation depending on the number of sprites present on the map.
...
Fixes terminx/eduke32#64 .
2020-06-17 12:26:03 +02:00
Christoph Oelckers
2a29dbf793
- use backend independent code to render the camera textures.
2020-06-14 21:57:21 +02:00
Christoph Oelckers
946da7d622
- moved the textures used for the animations into the texture manager.
...
This is to allow giving them a texture ID so that they can be used from ZScript which has no access to naked textures.
This also consolidates AnimTexture and VpxTexture.
2020-06-14 20:27:13 +02:00
Christoph Oelckers
67b1963e7c
- fixed render state management.
...
There are effectively two states - the one in the backend and a local one in the drawer for the render list which is supposed to eliminate some of the more costly repeated calls.
This higher level state was cached globally, which did not work anymore because the real render state could be changed elsewhere without this code realizing it.
All this means that the render list drawer must create a new state cache for each call and also must apply its current pending render state before leaving to ensure that everything is properly reset.
2020-06-12 22:32:49 +02:00
Christoph Oelckers
a419181c36
- simplified screenshot code.
2020-06-12 00:39:06 +02:00
Christoph Oelckers
f2d075e0d0
- code cleanup.
2020-06-12 00:37:40 +02:00
Christoph Oelckers
6a9f1e9da1
- removed the old OpenGL interface.
2020-06-12 00:25:52 +02:00
Christoph Oelckers
ba397f5ca1
- always draw floors opaque
2020-06-11 23:55:23 +02:00
Christoph Oelckers
22aad4999c
- use the engine backend to render the scene
2020-06-11 22:26:46 +02:00
Christoph Oelckers
a6545788a6
- do RR's lightning flash as a postprocessing effect.
2020-06-07 22:06:47 +02:00
Christoph Oelckers
4c6abe1bb9
- pass the shade through the 2D drawer, so that palette emulation can still use it.
2020-06-07 14:50:12 +02:00
Christoph Oelckers
b6d204a88b
- fixed: Weapons are part of the scene and always need to be rendered with the global base palette.
2020-06-07 13:50:41 +02:00
Christoph Oelckers
f2a637418d
- moved palette.cpp out of Build folder.
2020-06-07 13:06:18 +02:00
Christoph Oelckers
3fe4dbed01
- fixed fog translation table generation.
2020-06-07 12:51:26 +02:00
NY00123
ec11d22caf
Use static instead of LUNATIC_EXTERN
...
# Conflicts:
# source/build/include/build.h
# source/duke3d/src/gamedef.cpp
2020-06-07 10:36:43 +02:00
NY00123
6a70389f1d
Let's just use __fastcall instead of LUNATIC_FASTCALL
...
# Conflicts:
# source/build/include/build.h
2020-06-07 10:36:04 +02:00
NY00123
cca922f023
Engine: Adjust krand for removal of LUNATIC
...
# Conflicts:
# source/build/include/build.h
# source/build/src/engine.cpp
2020-06-07 10:35:23 +02:00
NY00123
dba06d9601
Engine: Remove the LUNATIC-specific definitions
...
of engine_main_arrays_are_static, engine_v8 and Mulscale.
# Conflicts:
# source/build/src/engine.cpp
2020-06-07 10:34:33 +02:00
Richard C. Gobeille
a0876223ab
Assignments
...
# Conflicts:
# source/build/src/clip.cpp
2020-06-07 10:17:33 +02:00
Christoph Oelckers
09e31fd5f4
- disabled sky texture clamping because it never really worked.
2020-06-07 10:14:32 +02:00
Christoph Oelckers
60d7f4f7c2
- got rid of the RF_NPOTEmulation flag.
...
This can easily be controlled with the 2 main variables alone.
2020-06-07 09:30:55 +02:00
Christoph Oelckers
f159496f6e
- moved the ShadeDiv array into the lookup table and took the numshades-2 divisor out of the stored value.
...
The value was changed to allow easier reuse in scenarios where the size of the shade table does not matter anymore.
2020-06-05 23:18:21 +02:00
Christoph Oelckers
0bd460d9e3
- split up the visibility factor into a scene specific and an element specific part.
...
The main reason here is that the scene specific part contains a projection dependent component which would be a problem when transitioning to GZDoom's code. The global viewpoint data already has a field for such a factor so now that gets used.
This also means a significant simplification of the visibility code in Polymost and the removal of several global variables.
2020-06-05 19:06:31 +02:00
Christoph Oelckers
9dfd3ddd02
- migration of texture tinting to GZDoom's version.
...
- start of visibility migration - removing unused globvis variable.
2020-06-05 17:02:21 +02:00
Christoph Oelckers
d812c2997c
- start renaming uniforms to match GZDoom.
...
Needed to allow using the same shader with the backend.
2020-06-04 21:34:27 +02:00
Christoph Oelckers
cf6855904d
- took projection and view matrix out of the render state.
...
This is a preparation to migrate to GZDoom's HWViewpointUniforms buffer.
2020-06-04 18:46:44 +02:00
Christoph Oelckers
7638ead1c8
- simplified the texture sampler setup.
...
DAMETH_CLAMPED was redundant and only causig problems.
2020-06-02 16:55:02 +02:00
Christoph Oelckers
080333311c
- removed polymost_dorotatespritemodel.
...
Models are inoperable right now anyway so this would never get called, but it does a few things that would cause problems with refactoring the backend code.
2020-06-01 11:28:07 +02:00
Christoph Oelckers
350acd2ac3
- scale the vertex coordinates that get output to the hardware by 1024.
...
This is needed to get a coordinate system that is compatible with GZDoom's so that its lighting code can be reused more easily.
2020-06-01 09:55:28 +02:00
Christoph Oelckers
ab2686db34
- camtex transition
2020-05-31 21:43:32 +02:00
Christoph Oelckers
c26b6cdf59
- backend sync with GZDoom.
2020-05-31 21:25:52 +02:00
Christoph Oelckers
611dad7f69
- added the softpoly and Vulkan backend code fron GZDoom.
...
Not hooked up yet.
2020-05-31 10:53:11 +02:00
Christoph Oelckers
1d15fe63a6
- another backend update, pulling in the sky renderer.
2020-05-31 10:32:10 +02:00
Christoph Oelckers
1e2a3da5fd
- video base code unified.
...
# Conflicts:
# source/core/rendering/v_video.cpp
2020-05-31 09:18:43 +02:00
nukeykt
714ed1ecdd
Engine: fix sprite sorting issue that caused broken voxel rendering in polymost
2020-05-30 23:28:41 +02:00
Christoph Oelckers
5728241c1c
- updated backend from GZDoom.
2020-05-30 23:10:17 +02:00
Christoph Oelckers
ea08fa0a4e
- updated common code.
...
Most of what got added is still unused.
# Conflicts:
# source/build/src/palette.cpp
# Conflicts:
# source/build/src/palette.cpp
# Conflicts:
# source/common/engine/i_interface.h
2020-05-30 22:28:24 +02:00
Christoph Oelckers
423f758314
- texture code restructuring.
2020-05-30 21:42:35 +02:00
Christoph Oelckers
cdcb25bc1f
- use high level textures to render voxels.
2020-05-30 00:30:56 +02:00
Christoph Oelckers
cca4fc609f
- texture code cleanup, mainly cppying layer data into the textures at startup to be able to use a real material system.
2020-05-29 23:33:26 +02:00
Christoph Oelckers
2c94b2bb6d
- split texture selection from binding.
2020-05-29 21:53:28 +02:00
Christoph Oelckers
1bc744b77b
- moved hictinting data into the lookup tables.
2020-05-29 20:15:42 +02:00
Christoph Oelckers
66809ca9f4
- fixed indexed display of 2D content.
2020-05-29 16:46:36 +02:00
Christoph Oelckers
87a87c155d
- moved to GZDoom's gl_hwtexture.cpp.
2020-05-29 01:03:01 +02:00
Christoph Oelckers
381e53017d
- some hackery to make the camera textures in DN3D work again.
...
They depend on a deleted texture not writing to the depth buffer, but other parts in the engine like ROR surfaces depend on them writing a proper depth buffer value, so for now there is a global variable that allows to exclude a single tile from ever getting rendered.
2020-05-29 00:44:13 +02:00
Christoph Oelckers
72889540a5
- use GZDoom's gl_samplers.cpp
2020-05-28 23:48:50 +02:00
Christoph Oelckers
362be65060
- removed FHardwareTexture's mSampler member.
...
This was a mostly unused relic of early development, the few places using it were static sampler settings.
2020-05-28 21:45:33 +02:00
Christoph Oelckers
5e93b8f3e7
- fixed transparent color.
2020-05-28 08:31:08 +02:00
Christoph Oelckers
a3e6829817
- fixed Exhumed menu by adding a proper layout mode to the drawer instead of hacking the broken tile offsets.
2020-05-27 23:30:36 +02:00
Christoph Oelckers
193b940eef
- palette code cleanup.
2020-05-27 22:19:02 +02:00