Commit graph

1304 commits

Author SHA1 Message Date
vladislavbelov
4d77de66d4 Removes GUI dependency from Canvas2D.
Initially the GetDefaultGuiMatrix function was added in 4113aa0a36 and
renamed in 04c63a4093.

This was SVN commit r27111.
2022-10-04 20:25:39 +00:00
vladislavbelov
adc6447b7b Fixes vertex attribute stride in Canvas2D.
This was SVN commit r27110.
2022-10-04 19:38:40 +00:00
vladislavbelov
75518d0e15 Removes drawing via IDeviceCommandContext from CMinimap.
Comments By: phosit
Differential Revision: https://code.wildfiregames.com/D4779
This was SVN commit r27109.
2022-10-04 19:32:42 +00:00
vladislavbelov
296daea4ba Cleanups CShaderParams::SItems comparisons.
Patch By: phosit
Differential Revision: https://code.wildfiregames.com/D4689
This was SVN commit r27107.
2022-10-04 19:13:44 +00:00
vladislavbelov
95106b2d9b Fixes crash in Atlas when switching from the Actor viewer. Fixes #6524
Tested By: Stan
Differential Revision: https://code.wildfiregames.com/D4732
This was SVN commit r27041.
2022-08-10 17:17:24 +00:00
Stan
833f8d0e79 Bump the max amount of instanced icons to 256 to account for Egypt 3v3 as suggested by @vladislavbelov.
192 worked as well but the error spam isn't really nice going above 256
is madness anyway.
Reported by: @Langbart
Fixes: #6578

This was SVN commit r26969.
2022-06-20 07:12:43 +00:00
vladislavbelov
8ee8e63bcc Fixes same sequenced frames for LOS smooth textures. Fixes #6569
Tested By: Langbart
Differential Revision: https://code.wildfiregames.com/D4700
This was SVN commit r26950.
2022-06-17 19:42:48 +00:00
vladislavbelov
28e46ba765 Groups close minimap icons by path and color to decrease their visible count.
Comments By: phosit, Stan
Tested By: Langbart
Differential Revision: https://code.wildfiregames.com/D4702
This was SVN commit r26949.
2022-06-17 19:40:50 +00:00
wraitii
274fe129a1 Change deprecated binary_negate<> to not_fn<>
Deprecated in C++17

Patch by: jprahman
Reviewed By: wraitii
Differential Revision: https://code.wildfiregames.com/D4693
This was SVN commit r26939.
2022-06-12 08:45:39 +00:00
vladislavbelov
24140bf620 Fixes crash in LOSTexture because of incorrect nullptr check introduced in 648e68e49c.
This was SVN commit r26923.
2022-06-06 21:21:52 +00:00
vladislavbelov
ffe4ea24ab Fixes LOS flickering because of float precision. Fixes #6546
Tested By: Langbart
Differential Revision: https://code.wildfiregames.com/D4684
This was SVN commit r26922.
2022-06-06 20:48:18 +00:00
vladislavbelov
54aae3e6d4 Moves anisotropic filtering support check from GL texture to TextureManager to make it explicit.
This was SVN commit r26919.
2022-06-06 06:59:20 +00:00
vladislavbelov
095838da0a Fixes A8 framebuffer format used for LOS interpolation and enables smooth LOS by default.
Tested By: Langbart, mastoras
Differential Revision: https://code.wildfiregames.com/D4654
This was SVN commit r26906.
2022-05-26 16:36:57 +00:00
vladislavbelov
68d73e1726 Fixes double shader program reloading after dddd599146.
This was SVN commit r26904.
2022-05-25 17:33:54 +00:00
vladislavbelov
a6f60afdc5 Adds instancing support to backend and enables it for minimap.
Tested By: Langbart
Differential Revision: https://code.wildfiregames.com/D4650
This was SVN commit r26901.
2022-05-24 07:11:23 +00:00
wraitii
08e7efc76a Allo native builds on Mac OS M1 / Apple Silicon
- Update GMP to a version that supports arm64 darwin
- Patch spidermonkey 78 to build and run on arm64 darwin
- Choose the correct architecture dynamically in build scripts
- Include python workaround that fixes python related errors on
spidermonkey build

Based on a patch by: kumikumi
Based on a patch by: Langbart
Fixes #6474

Differential Revision: https://code.wildfiregames.com/D4607
This was SVN commit r26881.
2022-05-15 06:45:53 +00:00
wraitii
557fa0312e Fix non-visual autostart, as well as client/host autostart.
Follows 8eecc39e71.

Piping the autostart through a GUI page is easy but requires using the
GUI in non-visual mode, which is problematic since it's not initialized.
The GUI is not needed, only its ability to load scripts, so this diff
fixes the problem by adding an 'entrypoint' script in the new
`autostart` folder that gets called with this unique ability, setting
things up properly. The mod mod gets a placeholder.

Other changes:
- Fix some issues with networked autostart:
  - Players were not assigned slots.
  - The host didn't actually wait for other players.
- Move gamesettings from `gui/gamesettings/` to `gamesettings/`. This
moves attributes as well.
- Move autostart files from `gui/autostart/` to ` autostart/`. Note that
`gui/autostart/` still exists as it's used in the tutorial button from
the main menu.
- Rename the JSI_VFS functions to be explicitly about their function:
the ability to write and the potential restricted folders.
- Don't require `autostart` when using `--autostart-client` in
non-visual mode.

Starting the autostart client/host has poor UX in some situations, but
improving that feature is beyond the scope of this diff.

Suggestions for future work:
- Some files in gui/common should probably be moved elsewhere
- Template loading code is duplicated
- The gamesetup code still needs work for proper UI/logic separation.

Help & comments by: smiley

Reported by: vladislav / Langbart
Fixes #6513

Differential Revision: https://code.wildfiregames.com/D4628
This was SVN commit r26879.
2022-05-15 06:34:17 +00:00
vladislavbelov
dddd599146 Fixes shader program and technique reloading.
Tested By: Langbart
Differential Revision: https://code.wildfiregames.com/D4641
This was SVN commit r26869.
2022-05-10 12:54:57 +00:00
wraitii
69c76acabb Fix crash in non-visual autostart from not loading terrain textures
Fixes 410d2e883a

Reported by: langbart
Differential Revision: https://code.wildfiregames.com/D4627
This was SVN commit r26866.
2022-05-09 17:31:00 +00:00
vladislavbelov
62e589ab76 Adds renderer backend interface and dummy backend.
Comments By: phosit, Stan
Tested By: Langbart, phosit
Differential Revision: https://code.wildfiregames.com/D4636
This was SVN commit r26858.
2022-05-08 22:02:46 +00:00
vladislavbelov
3ed4eaf247 Removes ogl_WarnIfError from regular renderer code.
This was SVN commit r26850.
2022-05-02 21:52:21 +00:00
vladislavbelov
04bd96cee0 Moves uniform and texture binding to CDeviceCommandContext.
Tested By: Langbart
Differential Revision: https://code.wildfiregames.com/D4631
This was SVN commit r26848.
2022-05-02 20:57:22 +00:00
vladislavbelov
d8b8128abb Adds AsFloatArray to CMatrix3D.
This was SVN commit r26834.
2022-04-27 19:53:42 +00:00
vladislavbelov
069560a290 Fixes incorrect vertex buffer offset added in aba7a170d9. Fixes #6519
This was SVN commit r26829.
2022-04-26 18:12:56 +00:00
vladislavbelov
aba7a170d9 Moves vertex attribute binding to CDeviceCommandContext.
Tested By: Langbart, Stan
Differential Revision: https://code.wildfiregames.com/D4610
This was SVN commit r26815.
2022-04-23 20:11:14 +00:00
vladislavbelov
c6da4d9312 Adds a fallback texture to skies to avoid a crash if a sky texture was invalid.
This was SVN commit r26800.
2022-04-17 10:10:52 +00:00
vladislavbelov
2c8f4c4837 Moves AssertPointersBound to draw commands to not forget to call it for new shaders.
In the future it allows to call AssertPointersBound in a more lazy way.

This was SVN commit r26784.
2022-04-12 18:02:08 +00:00
vladislavbelov
d8d736f0eb Allows tex clients decide how to handle invalid textures instead of assertions. Fixes #6436
This was SVN commit r26783.
2022-04-12 17:39:05 +00:00
vladislavbelov
8a51e05c2e Avoids a crash if a texture size is not a power of two.
Tested By: Stan
Differential Revision: https://code.wildfiregames.com/D4586
This was SVN commit r26774.
2022-04-11 16:28:41 +00:00
vladislavbelov
249f7cad55 Fixes cinematic camera distortion on some angles.
Differential Revision: https://code.wildfiregames.com/D4567
This was SVN commit r26690.
2022-03-20 21:59:49 +00:00
vladislavbelov
2a66c783ee Make configurable mouse edge distance for view scroll.
Differential Revision: https://code.wildfiregames.com/D4552
This was SVN commit r26665.
2022-03-17 18:25:54 +00:00
vladislavbelov
37b30901b3 Removes C++ code for conditional defines removed in f29d059617.
Differential Revision: https://code.wildfiregames.com/D4551
This was SVN commit r26661.
2022-03-15 22:13:22 +00:00
vladislavbelov
ea6af3f148 Updates a model color uniform in RenderModifier only if it was changed.
This was SVN commit r26653.
2022-03-14 22:56:38 +00:00
vladislavbelov
b4253d48cb Moves CShaderProgram to backend and handling via CDeviceCommandContext.
Differential Revision: https://code.wildfiregames.com/D4548
This was SVN commit r26652.
2022-03-14 22:16:14 +00:00
vladislavbelov
376fe61df9 Adds missed shader program validation after 0456b09c3c.
Reported By: Freagarach
This was SVN commit r26637.
2022-03-13 11:01:32 +00:00
vladislavbelov
e89e55539e Removes custom vertex attribute locations for GLSL. Refs ce215cace3.
This was SVN commit r26630.
2022-03-12 23:25:23 +00:00
vladislavbelov
992c18aabb Enables ARB shaders only once since we should not mix different backends.
This was SVN commit r26629.
2022-03-12 22:10:47 +00:00
vladislavbelov
0456b09c3c Moves shader dependent XML parsing from shader manager to shader program.
This was SVN commit r26628.
2022-03-12 22:02:21 +00:00
Stan
9c22f9f123 Fix the loading of subfiles for LODS. It currently failed because el_actor and el_quality levels have different ids depending on the loaded file. e.g for an actor with qualitylevels el_actor will be 18 and el_qualitylevels will be 0 while for a standard actor el_actor will be 0 and el_qualitylevels will be -1, hence failing for all the files since the code assumed wrong. XeroActor.Load() takes care of all the other cases, e.g. trying to load a variant which means the only valid check is for qualitylevels.
Fixes 76acc4e146

This was SVN commit r26616.
2022-03-10 21:32:36 +00:00
vladislavbelov
12c304e494 Removes duplication of backend format in VertexArray usages, optimizes vertex color attribute of quad overlay.
This was SVN commit r26609.
2022-03-08 23:28:31 +00:00
vladislavbelov
41f2ab87ed Fixes macOS warnings after adding final keyword to simulation classes in 3eee3a444d.
Also fixes GLES.

Differential Revision: https://code.wildfiregames.com/D4528
This was SVN commit r26605.
2022-03-07 23:04:11 +00:00
vladislavbelov
647fccd410 Replaces native GL types by backend format in vertex attributes in CShaderProgram.
This was SVN commit r26594.
2022-03-07 02:21:05 +00:00
vladislavbelov
ce18f297d5 Adds icons to minimap.
Tested By: Langbart, Stan
Differential Revision: https://code.wildfiregames.com/D4513
This was SVN commit r26592.
2022-03-07 01:22:06 +00:00
vladislavbelov
3399791677 Adds renderer backend vertex formats and normalizes texture formats.
This was SVN commit r26588.
2022-03-06 22:14:57 +00:00
vladislavbelov
db7894ff6b Removes redundant binding slot retrieving from CShaderProgram.
This was SVN commit r26585.
2022-03-06 21:17:24 +00:00
vladislavbelov
bc6ab4ac49 Removes redundant CShaderProgram streams.
This was SVN commit r26582.
2022-03-06 20:53:39 +00:00
vladislavbelov
63f749da2d Removes unused functions from CShaderProgram.
This was SVN commit r26579.
2022-03-06 16:40:04 +00:00
vladislavbelov
3a4bbd11fd Moves all GL draw commands to CDeviceCommandContext.
Differential Revision: https://code.wildfiregames.com/D4518
This was SVN commit r26525.
2022-03-03 07:09:59 +00:00
bb
7c3aed5f36 Set the size of the overlaybox without relying on the arbitrary initSize
Comments By: vladislav
Differential Revision: D4489
This was SVN commit r26523.
2022-03-02 16:27:11 +00:00
vladislavbelov
da4ec670c1 Moves glViewport from CRenderer to CDeviceCommandContext.
This was SVN commit r26497.
2022-02-26 23:17:48 +00:00