0
0
Fork 0
mirror of https://github.com/id-Software/DOOM-3-BFG.git synced 2025-03-16 15:41:16 +00:00
Commit graph

293 commits

Author SHA1 Message Date
Robert Beckebans
91ae3aa3ed Sync NVRHI branch by SP 2022-03-15 11:41:56 +01:00
Robert Beckebans
5ebbbf32e4 Added support for the prototype.wad in the convertMapQuakeToDoom cmd 2022-03-02 17:47:05 +01:00
Robert Beckebans
6d7ebabcbf Fixed a divide by zero bug in the convertMapToValve220 cmd 2022-03-02 09:27:09 +01:00
Robert Beckebans
920df3df63 Tweaked export to TrenchBroom cmds with proxymodels 2022-02-27 13:56:14 +01:00
Robert Beckebans
67aaf93af8 Added 2D Bin Packing library 2022-02-26 18:48:15 +01:00
Robert Beckebans
9cc5fa7a3a Write labels above model groups in zoo maps 2022-02-24 22:14:40 +01:00
Robert Beckebans
cbc9a31b74 Added cmd makeZooMapForModels 2022-02-23 22:52:23 +01:00
Robert Beckebans
1d93ad0a58 It can start and load a map! 2022-02-21 21:26:36 +01:00
Robert Beckebans
535e56f580 It's compiling! 2022-02-21 19:56:21 +01:00
Robert Beckebans
025ba4419e Added more missing files 2022-02-21 19:21:16 +01:00
Robert Beckebans
16a21fdeb8 NVRHI merge by Stephen Pridham part 1 2022-02-21 16:29:53 +01:00
Robert Beckebans
1f2df87be7 Fixed a couple of func_groups with TrenchBroom related bugs 2022-02-18 18:00:09 +01:00
Robert Beckebans
cde21c018d Did a little Quake to Doom experiment 2022-02-05 15:49:50 +01:00
Robert Beckebans
e978d92aeb Added TrenchBroom helper entities like func_door_model 2022-01-29 18:10:54 +01:00
Robert Beckebans
92c5cbf758 convertMapToValve220 now works with just the .resource files 2022-01-21 18:33:42 +01:00
Robert Beckebans
55abfc26aa Added entityDef misc_model helper for TB 2022-01-09 11:41:01 +01:00
Robert Beckebans
c104fff7ea Autoremove rotation keyword for TrenchBroom 2022-01-08 14:30:19 +01:00
Robert Beckebans
3cc6c0744e Added exportModelsToTrenchBroom console command 2022-01-07 18:46:35 +01:00
Robert Beckebans
362e7484e4 Added explanation about the difference between lite and full packages 2021-11-16 22:11:27 +01:00
Robert Beckebans
cbf0ffbcca Fixed UV projections within convertMapToValve220 cmd 2021-11-09 21:30:49 +01:00
Robert Beckebans
8863db872e Added CMake options STANDALONE and DOOM_CLASSIC 2021-11-09 19:47:06 +01:00
Robert Beckebans
083b031373 _extra_ents.map files can override entities 2021-10-20 14:49:45 +02:00
Robert Beckebans
77f8031eb9 Allow _extra_ents.map files next to the map files 2021-10-10 17:47:24 +02:00
Robert Beckebans
cbf17d4f36 Cleanup and Astyle 2021-09-11 18:02:16 +02:00
Admer
2f58f2b0c2 Re-order all pragma once statements to be AFTER the precompiled.h include, to silence IntelliSense's warning about PCH header stops 2021-09-11 17:53:30 +02:00
Admer
474a299a27 Use idMapFile instead of CM for brush origin offsets 2021-09-11 17:43:50 +02:00
Admer
17068426e4 dmap: write origin brushes to .cm files 2021-09-11 17:43:50 +02:00
Admer
1e18029909 idParallelJobList: fix syntax highlighting for AddJob 2021-09-11 17:43:50 +02:00
Robert Beckebans
c4030850ab
Merge pull request from r-a-sattarov/master
loongarch64: added initial support of LoongArch64 CPU architecture
2021-07-26 09:36:48 +02:00
Robert Beckebans
34cc04358d idMath::FLT_EPSILON -> idMath::FLOAT_EPSILON for system define clash on macOS 2021-07-26 08:51:44 +02:00
Robert Beckebans
9a0a89dbbd idMath::INFINITY -> idMath::INFINITUM for system define clash on macOS 2021-07-26 08:46:39 +02:00
r-a-sattarov
c82bc9c52b loongarch64: added initial support of LoongArch64 CPU architecture 2021-07-25 21:03:25 +03:00
raynorpat
b91080902b Convert USE_INTRINSICS to USE_INTRINSICS_SSE and fix CMakeLists.txt logic surrounding its check to focus on x86 and x86_64 CPU types 2021-05-25 20:06:37 -04:00
raynorpat
49e46df731 Fix two compiler warnings in idlib/math/Vector.h - floor to floorf 2021-05-25 20:04:41 -04:00
Robert Beckebans
5b0a3a8ac8 Merge branch '545-irradiance-light-grid' 2021-04-29 16:33:10 +02:00
Robert Beckebans
dbbcea94c5 Pull request cleanup 2021-04-29 16:32:15 +02:00
Robert Beckebans
0964c02bcf Ran Astyle 2021-04-29 15:20:45 +02:00
Stephen Saunders
d72ce4a2d5 Fixed assert on macOS when -D_DEBUG defined, assertion guarding atan2f in Math.h not needed 2021-04-23 01:06:53 -04:00
Stephen Saunders
0aae6f0902 macOS support for OpenGL and MoltenVK, demo recording/playback improvements 2021-04-19 14:32:52 -04:00
Robert Beckebans
6decaa2293 Started to bring back the Quake 3 lightgrid as irradiance cache 2021-04-13 15:50:46 +02:00
Robert Beckebans
2f8ae72431 Fixed Linux build issues. Tested with Clang 2021-04-10 09:53:52 +02:00
Robert Beckebans
c40ab1e7e8 Fixed irradiance fireflies using spherical harmonics 2021-04-08 18:36:23 +02:00
Robert Beckebans
ee4085b388 Added spherical harmonics math 2021-04-08 12:06:14 +02:00
Robert Beckebans
7c3ff6466b Minor cleanup 2021-04-01 14:23:47 +02:00
Robert Beckebans
d9112cd381 Merge branch '497-envprobe-rendertarget' 2021-03-26 11:20:53 +01:00
Robert Beckebans
5bbca6f98c Use id Tech 5 multithreading for generateEnvironmentProbes 2021-03-23 21:53:21 +01:00
Robert Beckebans
afae2740bf Fixed unnessary warnings with VS2017 2021-03-15 21:21:56 +01:00
Robert Beckebans
4f55ec094d
Merge pull request from r-a-sattarov/master
tiny improvements and fixes
2021-03-15 21:14:42 +01:00
r-a-sattarov
3e08e14b9e Exclude e2k/arm64/mips64 from the polygonBlock and brushBlock assertions 2021-03-12 22:13:14 +03:00
Robert Beckebans
bb2a5e523c Fixed Valve 220 projections, allow ingame light editor to save it 2021-03-12 18:13:33 +01:00
r-a-sattarov
0f6b6f53b3 sys_defines.h: added various PC architectures
risc-v, sparc
2021-03-11 22:16:24 +03:00
Robert Beckebans
288359067b Let ingame light editor handle anonymous lights 2021-02-20 19:07:08 +01:00
Robert Beckebans
b85db1e865 Merged stuff from Iced-Hellfire-Dev branch, no specular fix 2021-02-20 12:56:24 +01:00
Robert Beckebans
742624d3ac Added support for the Valve 220 .map format in dmap 2021-02-13 18:46:34 +01:00
Robert Beckebans
17631b2ab7 Merge branch '497-light-probe-interpolation' 2021-02-10 16:55:21 +01:00
Robert Beckebans
f1cc837fc4 Corrected call of Sys_CPUCount() in ParallelJobManager 2020-12-23 21:14:10 +01:00
Robert Beckebans
72cf7cef86 Smaller potential crashfixes from SS2 engine 2020-12-23 21:02:38 +01:00
r-a-sattarov
a0a8a8670f Support MIPS64 architecture 2020-11-21 21:45:05 +03:00
Robert Beckebans
86ff6cea87 Fixed a problem with octahedron irradiance sampling 2020-11-15 14:01:14 +01:00
Robert Beckebans
b8907b9754 Octahedron mapping hello world in IBL shader 2020-11-14 18:02:07 +01:00
Robert Beckebans
2e580b38ad Some experiments with octahedron probes 2020-11-14 16:04:03 +01:00
Robert Beckebans
6eb7925c77 Quadrupled static vertex cache limits for mods 2020-11-10 18:09:04 +01:00
Robert Beckebans
9349b280cc Applied astyle formatting 2020-11-05 01:32:50 +01:00
Robert Beckebans
a41c9b2f92
Merge pull request from runlevel5/ppc64le
Support PPC64LE architecture
2020-11-05 01:04:34 +01:00
r-a-sattarov
1a3dfc89c2 E2K: fixed build by MCST lcc compiler when using USE_INTRINSICS=ON
fixed "no suitable conversion function from __m128c to float" error
2020-10-22 21:14:37 +03:00
Robert Beckebans
eeff8100e0 Merge branch 'master' into PBR2 2020-07-14 18:40:48 +02:00
Trung Le
322764a8c2 Support PPC64LE architecture 2020-07-04 01:23:53 +10:00
r-a-sattarov
0f0053b143 CMake: fixed compiler check algorithm (support of C++11)
CXX_STANDARD supported values are 98, 11, 14, 17 and 20.
- https://cmake.org/cmake/help/latest/prop_tgt/CXX_STANDARD.html
2020-05-03 14:03:41 +03:00
Robert Beckebans
2c6f2377bf Show correct CPU string with Win64 2020-04-26 10:48:26 +02:00
Carlos Estrague
5836a99f7b Initial Nvidia jetson nano with Vulkan Support 2020-04-18 21:30:06 +02:00
Robert Beckebans
af701aea33 Vulkan works on Kubuntu 19.10, g++ and open source drivers for the AMD RX 580 2020-03-22 15:29:24 +01:00
Robert Beckebans
367d5af7a2 Fixed Windows build 2020-03-22 13:22:45 +01:00
Eric Womer
7145d9b3f1 Compiling/Linking/Running, but no rendering, there is audio. glConfig as
a temp fix for the surfaces having a width and height of 0 since
renderSystem->getHeight()/getWidth() access
glConfig.nativeResolutionHeight/Width directly.
2019-12-29 17:05:33 -05:00
Eric Womer
528da79001 Merge branch 'kung' into vulkan-merge-2 2019-12-29 12:14:29 -05:00
Eric Womer
f1e650e2c4 Applying KungFuJesus's patch from
https://github.com/RobertBeckebans/RBDOOM-3-BFG/issues/398#issuecomment-569442019
2019-12-29 11:12:34 -05:00
Eric Womer
eeceaba261 neo/CMakeListst.txt:
* setting the c++ standard via add_compile_options caused the setting
    to bleed into the C code, which caused clang to error out the cmake
    configuration, so switched to setting it with CMAKE_CXX_STANDARD.

    Some miscellaneous spacking.

neo/CMakeLists.txt      :
neo/idlib/CMakeLists.txt:
  * Added missing -std=c++${CMAKE_CXX_STANDARD} to the precompiled header
    compile flags since the precompiled header process was custom and
    using CMAKE_CXX_STANDARD didn't set it automatically.
2019-12-28 21:38:39 -05:00
Robert Beckebans
527b1fbfd5 Applied new AStyle settings 2019-11-19 21:33:59 +01:00
Robert Beckebans
08cb9730e3 Merge branch 'master' into vulkan 2019-11-19 21:29:16 +01:00
Robert Beckebans
4a6af2d609 Applied new Astyle settings 2019-11-11 20:27:44 +01:00
Jeffrey N. Johnson
07aa70f27e These changes allow the use of C++11. 2019-11-10 12:33:53 -08:00
Robert Beckebans
e6960cb876 Fixed rendering of stencil shadows with Vulkan 2019-11-08 20:09:57 +01:00
Robert Beckebans
2c07265be5 Merge branch 'master' into IBL-environment-probes2 2019-10-30 10:38:44 +01:00
Robert Beckebans
a3e8b52170 Ported ImGui light editor from OpenTechBFG 2019-10-28 15:39:00 +01:00
Robert Beckebans
fac1974f1b IBL envprobes initial render interface 2019-10-19 21:58:22 +02:00
Robert Beckebans
6ae887a591 Fixed VS2017 Build 2019-10-14 19:37:15 +02:00
Robert Beckebans
5ca8a97e10 Merge branch 'master' into vkdoom3-merge 2019-10-12 21:14:10 +02:00
r-a-sattarov
dfa1fc3db7 E2K: added initial support for MCST Elbrus CPU 2019-08-10 18:57:44 +03:00
Robert Beckebans
822f9be08d
Merge pull request from coldtobi/use_system_rapidjson
USE_SYSTEM_RADPIDJSON -- Use the system rapidjson instead of the bundled one
2018-10-07 22:05:38 +02:00
Robert Beckebans
095c68ca5b Moving towards vkneo. Started to stub out OpenGL if Vulkan enabled 2018-10-01 19:07:12 +02:00
George Kalampokis
223673da57
Show properly cpu on 64-bit linux 2018-07-08 19:50:13 +03:00
Robert Beckebans
c8e3cd9fe2 Merge pull request from rigred/master
Fix sprintf overflows in various locations (gcc 7)
2017-09-03 23:24:47 +02:00
Robert Beckebans
09f92b95d9 Disable ATL warning with VS2015 2017-09-02 13:58:21 +02:00
Darren Salt
5791f11a6b Kill a macro redefinition warning. 2017-08-27 23:31:51 +01:00
Caffeine Code
8a1ce622a3 Fix sprintf overflows in various locations (gcc 7) 2017-07-09 19:22:33 +01:00
Tobias Frost
f54323a442 .. CMake.txt and neo/idlib/precompiled.h to utilize define 2016-10-10 22:13:17 +02:00
Robert Beckebans
3d75dbcb4a GCC compile fixes under Kubuntu 15.10 2016-07-03 22:56:29 +02:00
Robert Beckebans
e6f75d3336 Merge branch 'flash-tools' 2016-07-03 15:11:43 +02:00
Robert Beckebans
f3c8e0748e Move worlspawn to first entry if map was read from Blender 2016-06-19 17:19:24 +02:00
Robert Beckebans
95de9c62a5 exportDecls command to export def/* stuff for Blender 2016-03-05 21:19:14 +01:00
Robert Beckebans
52b7775d83 Added support for new JSON based map format 2016-03-05 20:52:09 +01:00
Robert Beckebans
be556174e0 Merge branch 'master' into map-primitive-polygons-for-blender 2016-03-05 20:20:07 +01:00
Robert Beckebans
414a426b09 VS 2015 and Windows 10 support. close 2016-01-20 00:55:30 +01:00
Robert Beckebans
0792ac0f59 JSON Flash sprite import 2015-10-12 12:36:31 +02:00
Tobias Frost
bbb41c7781 Do not force USE_INTRINISCS to be set via source-code 2015-07-11 10:33:04 +02:00
Robert Beckebans
4fa4537978 Use SSE2 intrinsics on x86 2015-06-24 11:27:54 +02:00
Robert Beckebans
9d4c468f08 Merge pull request from coldtobi/master
rbdoom3: Option to set CPU_ID and to specify CPU Features to be used.
2015-06-24 11:14:30 +02:00
Robert Beckebans
8a8deb63fd Merge pull request from coldtobi/use_cmake_dl_libs
Do use CMAKE_DL_LIBS to determine the linkerflags needed to link against libdl
2015-06-24 11:12:30 +02:00
Tobias Frost
92dab63c30 - Do use CMAKE_DL_LIBS to determine the linkerflags needed to link against libdl.
- For !WINDOWS, add sys_defines based on compiler instead based on system. (enabled compilation e.g on hurd and kfreebsd)
2015-06-21 16:52:56 +02:00
Tobias Frost
cf6bb39e11 Make use of precompiled header configureable 2015-06-19 22:15:44 +02:00
Tobias Frost
9212ed4263 Propagate USE_INTRINSICS through CMake 2015-06-19 16:11:16 +02:00
Tobias Frost
90d79158ee Make the CPUSTRING and additional from default optimizations configureable 2015-06-19 15:50:17 +02:00
Robert Beckebans
61f568550e New Blender style mesh .map primitive type 2015-04-12 11:53:05 +02:00
Daniel Gibson
90b1ff0b65 Format Code with AStyle 2.05.1 2015-02-09 00:29:57 +01:00
Robert Beckebans
d691002296 Bumped engine version to 1.0.3 to prepare for new release 2015-01-18 12:13:24 +01:00
Tobias Frost
2550f84fbb USE_SYSTEM_LIBGLEW -- Use the system libglew instead of the bundled one 2014-11-12 19:35:38 +01:00
unknown
f039e3c668 precompiled for msvc fix 2014-10-26 03:36:49 +03:00
Robert Beckebans
9147482a37 Added check for Gallium drivers to use GLSL ES 3.00. 2014-08-20 13:07:59 +02:00
Robert Beckebans
45b0075a75 VectorSet compile fix. refs 2014-08-06 11:27:11 +02:00
Robert Beckebans
352df659a8 Replaced ( void ) with () 2014-08-02 14:48:04 +02:00
Pat Raynor
125191b866 Added back dmap and aas compiler from original Doom 3 GPL release 2014-08-01 03:07:00 -04:00
Radegast
4045be32b1 Replaced procfs dependent functions with native calls on OS X. 2014-05-21 22:31:18 +01:00
Radegast
b8676a513f Replaced MACOS_X define with standardised __APPLE__. 2014-05-20 13:51:53 +01:00
Robert Beckebans
be7d912cf2 Just to be safe. Changed Sys_Yield() 2014-05-20 09:31:40 +02:00
Robert Beckebans
05248cce6d AStyle 2014-05-20 09:29:08 +02:00
Radegast
ca5c463bbd Added clock_gettime() for OS X which always returns monotonic time. 2014-05-19 16:53:20 +01:00
Radegast
764b067825 Avoid 'unknown event' spam when testing with touchpad. 2014-05-19 15:52:33 +01:00
Radegast
812fb78d52 Initial OS X support. 2014-05-18 23:14:28 +01:00
Robert Beckebans
26bb497b3c Supress warnings about failed #include global.inc when using embedded Cg shaders 2014-05-14 19:14:21 +02:00
Robert Beckebans
96e879361d Fixed a problem with the searching for embedding local and embedded shaders 2014-05-10 16:00:18 +02:00
Robert Beckebans
277964f074 Because I can :)
- Implemented soft shadows using PCF hardware shadow mapping

  The implementation uses sampler2DArrayShadow and PCF which usually
  requires Direct3D 10.1 however it is in the OpenGL 3.2 core so it should
  be widely supported.
  All 3 light types are supported which means parallel lights (sun) use
  scene independent cascaded shadow mapping.
  The implementation is very fast with single taps (400 fps average per
  scene on a GTX 660 ti OC) however I defaulted it to 16 taps so the shadows look
  really good which should you give stable 100 fps on todays hardware.

  The shadow filtering algorithm is based on Carmack's research which was
  released in the original Doom 3 GPL release draw_exp.cpp.

- Changed interaction shaders to use Half-Lambert lighting like in HL2 to
  make the game less dark

- Fixed some of the renderer debugging/development tools like r_showTris
2014-05-10 14:40:01 +02:00
RobertBeckebans
e1661f8cde Merge branch 'master' into glew 2014-04-30 12:05:30 +02:00
RobertBeckebans
cacf1bb46b Embedded Cg renderprog sources into the renderer using Lua/Premake. Now the renderer can export the renderprogs to any GLSL version without having the user to copy the renderprogs/* shaders to the Doom 3 BFG installation directory. fixes 2014-04-26 14:13:25 +02:00
RobertBeckebans
60ccf3567b Merge branch 'master' into glew 2014-04-25 20:24:30 +02:00
dekadenZ
e4605633f0 Move format specifier macros to idlib/sys/sys_defines.h 2014-04-25 15:22:15 +02:00
RobertBeckebans
8018378c3c Merge branch 'master' into glew
Conflicts:
	neo/renderer/OpenGL/glext.h
	neo/renderer/OpenGL/qgl.h
	neo/renderer/OpenGL/wglext.h
	neo/renderer/RenderProgs.cpp
	neo/renderer/RenderProgs_GLSL.cpp
	neo/renderer/RenderSystem_init.cpp
	neo/renderer/tr_backend_draw.cpp
	neo/sys/win32/win_qgl.cpp
2014-04-21 15:01:50 +02:00
Robert Beckebans
a315630d7d Changed astyle-code.sh script to use the system astyle which is 2.03 on Kubuntu 13.10 2014-02-23 15:19:11 +01:00
Andreas Bergmeier
4d9970b148 Properly handle format analysis
Rename ATTRIBUTE_PRINTF to
- ID_STATIC_ATTRIBUTE_PRINTF
- ID_INSTANCE_ATTRIBUTE_PRINTF
since for instance functions, this has to be taken into account, too.
Add format analysis to idLib, DeclManager and idTokenParser functions.
Add support for clang.
2014-02-22 17:02:06 +01:00
Christoph Korn
264ffcb6f7 Fix typos
Just fix some typos.
2013-12-31 02:23:16 +01:00
Robert Beckebans
7690fb4b8e Merge branch 'master' into glew
Conflicts:
	neo/renderer/OpenGL/glext.h
	neo/renderer/RenderSystem_init.cpp
2013-12-24 15:49:06 +01:00
Jonathan Young
1c500b710b Mirror source code directory structure in generated MSVC projects. 2013-09-16 17:54:14 +10:00
Daniel Gibson
88b23611f9 Fix DEBUG_THREADS on FreeBSD
There was a typo in an #include, furthermore FreeBSD has no
pthread_getname_np equivalent.

I added Sys_GetThreadName() so the code is a bit cleaner.
2013-06-23 19:16:23 +02:00
Robert Beckebans
3b67eabf79 Fixed critical bug in the generic C++ code of DotProduct_SIMD that caused massive errors in the physics system 2013-06-01 18:29:12 +02:00
Robert Beckebans
db715535cc Merged generic C++ fallbacks for SSE optimized code to allow support for non-x86 based platforms like ARM 2013-06-01 15:13:00 +02:00
Robert Beckebans
aefa4ac6e3 Merge branch 'master' into glew and fixed a crash on Intel HD drivers 2013-04-23 00:41:54 +02:00
Robert Beckebans
3023533e57 Added pthread priority code but it is disabled by default because it requires root privileges 2013-03-26 13:43:30 +01:00
Daniel Gibson
3c755e490b change threadnames so they fit into 15chars
+ terminating null byte - that's the limit of threadnames on linux

Furthermore: idJobThread::Start used va() to create the threadname.
va() isn't threadsafe... so I replaced it with a local buffer and
idStr::snPrintf()
2013-03-26 00:36:04 +01:00
Daniel Gibson
da9ab07e9c Refactor setting threadname on POSIX systems
* setting threadname is now done in a seperate function
* if setting the threadname fails, it just prints a warning now
  instead of terminating the game with a FatalError
2013-03-26 00:36:04 +01:00
Daniel Gibson
fe18a49303 Improve POSIX threading code
* setting threadname is now done in a seperate function so it's a bit
cleaner (it's different for every platform..)
* replace/refactor signaling code (based on my SDL threading branch and
  the old pthread signaling code from RB):
  - The interface is like on win32 now (Sys_Signal* functions instead of
    overwriting idSysSignal class)
  - created a custom signalHandle_t struct for that, which contains all
    needed information
  - Mimic Windows functions used in win32 implementation more closely,
    e.g. signal all waiting threads on manualReset signalRaise, count
    waiting threads etc. I'm pretty sure the behavior on Win32 and POSIX
    now is identical (as far as possible).
2013-03-25 22:05:02 +01:00
Daniel Gibson
9aa63e4074 Some timer-related improvements for POSIX
* idSysSignal::Wait should now handle timeouts > 1s better (or at all)
* Use clock_gettime for Sys_Milliseconds()
* Use CLOCK_MONOTONIC_RAW (and CLOCK_MONOTONIC as fallback if
  that's not available) for Sys_Milliseconds() and Sys_Microseconds()
  CLOCK_MONOTONIC can behave strange when NTP is used
* Small fixes in Sys_Microseconds(): use 64bit int to store time
  (like return type...), divide by 1000 (not 1000000) for nsec=>musec
2013-03-16 14:32:47 +01:00
Daniel Gibson
4040a3a9ef shut up compiler warnings
and a small comment
2013-03-16 14:32:47 +01:00