264db8f424
ref/gl: refactor gl extension checking again
2023-12-17 01:56:26 +03:00
1bb168b33f
ref/r_sprite: move dframetype to inner block
2023-12-16 23:17:42 +03:00
412e999475
ref/gl: do not set type on 1D textures on GLES (will fallback to 2D)
2023-12-16 19:46:08 +03:00
mittorn
e47189e107
ref_gl: fix loop scope in ripple code
2023-12-13 20:17:52 +03:00
a4a53f40fb
ref_gl: workaround using fake arb functions on GLES (Mali400 has stub glBindBufferARB somehow\!)
2023-12-13 18:47:57 +03:00
mittorn
b73b213ed5
gl2shim: add SOFTFP_LINK support for gles3compat
2023-12-13 18:47:57 +03:00
mittorn
17a73e63f7
gl2shim: fix gcc 4.9 build
2023-12-13 18:47:57 +03:00
9a96032e20
ref_soft,ref_gl: fix unaligned read in sprite code
2023-12-13 18:47:57 +03:00
21797f9ac8
ref: gl: fix solor to color
2023-12-06 05:22:02 +03:00
mittorn
c800b34cd4
ref_api: add R_Flush method
2023-12-06 04:13:27 +03:00
26d229c8ca
engine, ref: RefAPI 5. Simplify remap calls
2023-12-06 04:13:03 +03:00
9c66e86be1
engine, ref: RefAPI 5. Remove unused calls
2023-12-06 04:13:03 +03:00
7e9f87de2d
engine, ref: eliminate calls to global arrays, instead store array pointers at renderer side
2023-12-06 04:13:03 +03:00
255773b4de
ref: gl: remove useless calls to glGetString if we're running under GL4ES
2023-12-04 02:53:51 +03:00
5b73a788da
ref: gl: disable unused variable warning for GL functions defintions
2023-12-04 02:53:27 +03:00
08dbfc45d3
ref: gl: refactor getting edge position, texture and lightmap coords
2023-12-02 18:02:18 +03:00
Andrey Akhmichin
16cc0ca0fe
ref: gl: gl2_shim: replace "malloc.h" header with ALLOCA_H macro.
2023-11-20 00:13:04 +03:00
e481e1d73e
ref: gl: enable GL waves with r_ripple
2023-10-31 21:52:00 +03:00
6c0eed1b2b
ref: gl: allow viewing water textures in their full glory with enabled r_ripple 2
2023-10-31 21:52:00 +03:00
a6c67fdf9f
ref: gl: upload only part of texture we're using, i.e. 64x64 for 64x64, 128x128 for 128x128
2023-10-31 21:52:00 +03:00
46889ed453
ref: gl: libc rand() does better job at randomizing
2023-10-31 21:52:00 +03:00
882fcc152c
ref: gl: always scale down texture to 64x64, like sw.dll does
2023-10-31 21:52:00 +03:00
a6af32dafd
ref: gl: connect ripply water to others parts of renderer (init, reset, animation and rendering)
2023-10-31 21:52:00 +03:00
d6dfb83be7
ref: gl: ripply water implementation (bugfixed version from my Quake-2 patches)
2023-10-31 21:52:00 +03:00
mittorn
f2c080e736
gl2shim: fix broken matrix update when fog attribute enabled (32 bit shift overflow)
2023-10-30 22:34:34 +03:00
ea55e78855
ref: _inline -> static
2023-10-29 23:38:43 +03:00
30d1492b93
engine: remove Set/GetCurrentLoadingModel from RefAPI
2023-10-28 15:22:21 +03:00
mittorn
bf5fd40d64
gl2shim: workaround empty rgb5/rgb8 textures
2023-10-26 23:08:02 +03:00
mittorn
6bc613bdb4
ref_gl: force gles2 on non-nanogl until we support gles1 directly
2023-10-26 23:07:39 +03:00
a982562658
ref_gl: Fix missing DebugOutput functions on GLES
2023-10-26 23:07:22 +03:00
34d7664342
ref: gl: disable TGA flip for detail textures, GoldSrc ignores it, so we will too
2023-10-26 05:12:38 +03:00
b0a79df86f
ref: change r_traceglow to 0, as GoldSrc does
2023-10-26 04:59:01 +03:00
3251b68df5
ref: gl: more simple search of GL func with alternative name (EXT, OES suffixes or no suffix)
2023-10-22 20:02:14 +03:00
mittorn
c1d1aa6787
ref_gl: rewrite ARB workaround to check EXT/OES names, notify user that function found with different name
2023-10-22 20:02:14 +03:00
b76a75d6b4
ref: gl: respect gl_texture_nearest value for skyboxes
2023-10-20 18:55:22 +03:00
Ivan Avdeev
a251600c8a
engine: common: imagelib: add KTX2 support ( #1455 )
...
* engine: common: imagelib: add KTX2 support
Adds basic KTX2 support for a few compressed formats. KTX2 essentially
is a Vulkan-centric texture format that supports literally hundreds of
pixel formats.
For now only support for these is added:
- `VK_FORMAT_BC4_UNORM_BLOCK`
- `VK_FORMAT_BC4_SNORM_BLOCK`
- `VK_FORMAT_BC5_UNORM_BLOCK`
- `VK_FORMAT_BC5_SNORM_BLOCK`
- `VK_FORMAT_BC6H_UFLOAT_BLOCK`
- `VK_FORMAT_BC6H_SFLOAT_BLOCK`
- `VK_FORMAT_BC7_UNORM_BLOCK`
- `VK_FORMAT_BC7_SRGB_BLOCK`
Adding more formats is relatively straightforward:
- Copy format definition from `VkFormat` enum in `vulkan_core.h`
- Add a new definition into `pixformat_t` enum.
- Add format size calculation into `Image_ComputeSize()`
While we're at it, also adds a few new formats to DDS:
- BC4_UNORM -- PF_BC4_UNSIGNED
- BC4_SNORM -- PF_BC4_SIGNED
- BC5_UNORM -- PF_BC5_UNSIGNED
- BC5_SNORM -- PF_BC5_SIGNED
- BC7 is expanded into BC7_UNORM and BC7_SRGB
ref_gl and ref_soft code is updated where it made sense. But not tested
really. Support for these formats has been tested with ref_vk.
* address spaces-vs-parentheses formatting where noticed
* parenthesize sizeofs
* move ktx2.h to imagelib as img_ktx2.h; massage it a bit
* use SetBits() instead of |=
* remove stale TODO comments
2023-10-18 10:31:40 +03:00
a2b992d865
ref_gl: fix codestyle
2023-10-16 06:47:55 +03:00
ddf3f2ffdb
gl2shim: Allow drawing huge QUADS sequences by splitting drawcalls on overflow
2023-10-16 06:47:55 +03:00
2454e87509
ref_gl: gl2shim: refactoring, add missing spaces in parentheses and ternary ops, remove singleline multiple assignments, use bitset macros
2023-10-16 06:47:55 +03:00
mittorn
0dc44249a2
ref_gl: fix XASH_GL_STATIC build
2023-10-16 06:47:55 +03:00
mittorn
150cbfa4de
ref_gl: do not trust REFAPI context version, get it from OpenGL anyway
2023-10-16 06:47:55 +03:00
mittorn
c0b068d81b
ref_gl: add workarounds for detecting extensions correctly on gles1/gles2 without wrapper (swiftshader works now)
2023-10-16 06:47:55 +03:00
mittorn
fbc312b6cf
gl2shim: remove float suffix in shaders, that makes glsl100 work in swiftshader
2023-10-16 06:47:55 +03:00
mittorn
342e0d3e2e
gl2shim: add glsl100 support
2023-10-16 06:47:55 +03:00
mittorn
202b228691
gl2shim: correct allocation/cleanup
2023-10-16 06:47:55 +03:00
mittorn
c9c1286803
ref_gl: fix typo
2023-10-16 06:47:55 +03:00
mittorn
eab98b0eda
gl2shim: dynamic extension checking and autoconfiguration
2023-10-16 06:47:55 +03:00
mittorn
35be80fc21
ref_gl: request gl1.1 if compatibility profile unavailiable, this fixes launching with GL <= 2.0, improve old version extension detection
2023-10-16 06:47:55 +03:00
mittorn
c7dd9d6437
ref_gl: init r_temppool before InitExtensions, fix extension string allocation
2023-10-16 06:47:55 +03:00
mittorn
d378878c91
gl2shim: try fix getting program link log
2023-10-16 06:47:55 +03:00