Jonathan G Rennison
18ef0741e7
Use hash map instead of btree for SpritePointerHolder cache
2024-07-06 13:18:59 +01:00
Jonathan G Rennison
32b8ec34ff
Merge branch 'master' into jgrpp
...
# Conflicts:
# src/autoreplace_gui.cpp
# src/build_vehicle_gui.cpp
# src/cheat_gui.cpp
# src/company_gui.cpp
# src/debug.cpp
# src/engine_gui.h
# src/error_gui.cpp
# src/group_gui.cpp
# src/industry_cmd.cpp
# src/industry_gui.cpp
# src/misc_gui.cpp
# src/network/network_gui.cpp
# src/newgrf.cpp
# src/newgrf_debug_gui.cpp
# src/newgrf_gui.cpp
# src/order_gui.cpp
# src/rail_gui.cpp
# src/road_gui.cpp
# src/saveload/saveload.cpp
# src/screenshot_gui.cpp
# src/sound/win32_s.cpp
# src/statusbar_gui.cpp
# src/strgen/strgen.cpp
# src/table/newgrf_debug_data.h
# src/timetable_gui.cpp
# src/toolbar_gui.cpp
# src/town_gui.cpp
# src/vehicle_gui.cpp
# src/video/sdl2_v.cpp
# src/video/sdl_v.cpp
# src/viewport.cpp
2024-05-31 22:57:16 +01:00
Jonathan G Rennison
853ed272be
Merge branch 'master' into jgrpp
...
# Conflicts:
# src/airport_gui.cpp
# src/blitter/32bpp_optimized.cpp
# src/blitter/32bpp_simple.cpp
# src/blitter/32bpp_sse2.cpp
# src/blitter/8bpp_optimized.cpp
# src/blitter/8bpp_simple.cpp
# src/blitter/null.cpp
# src/build_vehicle_gui.cpp
# src/company_gui.cpp
# src/crashlog.cpp
# src/dropdown.cpp
# src/dropdown_type.h
# src/genworld_gui.cpp
# src/gfx.cpp
# src/main_gui.cpp
# src/newgrf_debug_gui.cpp
# src/news_gui.cpp
# src/news_type.h
# src/openttd.cpp
# src/order_gui.cpp
# src/settings.cpp
# src/settings_gui.cpp
# src/signs.cpp
# src/smallmap_gui.cpp
# src/spritecache.cpp
# src/spriteloader/grf.cpp
# src/texteff.cpp
# src/toolbar_gui.cpp
# src/town_cmd.cpp
# src/vehicle.cpp
# src/vehicle_gui.cpp
# src/video/opengl.cpp
# src/viewport.cpp
# src/waypoint_cmd.cpp
# src/zoom_type.h
2024-05-30 17:54:01 +01:00
Jonathan G Rennison
18a42664fc
Merge branch 'master' into jgrpp
...
Remove 'byte' typedef
2024-05-07 17:21:50 +01:00
Peter Nelson
34ba969c74
Change: Display more useful information in sprite aligner than sprite ID. ( #12439 )
...
Sprite IDs are not useful information given they change don't refer to anything outside the loaded game.
Instead, include the filename and nfo line at minimum, and include action A or action 5 sprite replacement information if applicable.
2024-04-06 21:16:02 +01:00
Patric Stout
a3cfd23cf9
Codechange: rename byte to uint8_t ( #12308 )
2024-03-16 23:59:32 +01:00
Jonathan G Rennison
97e6f3062e
Adding of _t to (u)int types, and WChar to char32_t
...
See: eaae0bb5e
2024-01-07 17:20:41 +00:00
Jonathan G Rennison
55d78a23be
Merge branch 'master' into jgrpp
...
# Conflicts:
# src/3rdparty/squirrel/include/squirrel.h
# src/blitter/32bpp_sse_func.hpp
# src/bridge_map.h
# src/clear_map.h
# src/company_manager_face.h
# src/console_func.h
# src/core/bitmath_func.hpp
# src/core/endian_func.hpp
# src/core/random_func.hpp
# src/depot_map.h
# src/elrail_func.h
# src/fontcache.h
# src/industry_map.h
# src/map_func.h
# src/newgrf_spritegroup.h
# src/object_map.h
# src/rail.h
# src/rail_map.h
# src/road_func.h
# src/road_map.h
# src/saveload/saveload.h
# src/saveload/saveload_error.hpp
# src/settings_gui.cpp
# src/sl/oldloader.h
# src/sprite.h
# src/spritecache.h
# src/station_func.h
# src/station_map.h
# src/story_base.h
# src/strings_func.h
# src/tile_cmd.h
# src/tile_map.h
# src/tile_type.h
# src/town.h
# src/town_map.h
# src/tree_map.h
# src/tunnel_map.h
# src/tunnelbridge_map.h
# src/vehicle_func.h
# src/viewport_func.h
# src/void_map.h
# src/water.h
# src/water_map.h
# src/widget_type.h
2024-01-07 15:00:16 +00:00
Rubidium
3a676a5af0
Codechange: replace static inline with static for non-class functions
2024-01-06 13:37:33 +01:00
Jonathan G Rennison
3a8217fc99
Sprite cache: Move LRU to struct Sprite
...
Prune from sprite cache by individual sprite structs instead of IDs
2023-08-23 01:30:57 +01:00
Jonathan G Rennison
46f5fb9f25
Sprite cache: Allow caching only required subset of sprite zoom levels
...
Enable for blitters based on 32bpp_optimized or SSE
2023-08-22 22:16:04 +01:00
Rubidium
eaae0bb5e7
Codechange: automatic adding of _t to (u)int types, and WChar to char32_t
...
for i in `find src -type f|grep -v 3rdparty/fmt|grep -v 3rdparty/catch2|grep -v 3rdparty/opengl|grep -v stdafx.h`; do sed 's/uint16& /uint16 \&/g;s/int8\([ >*),;[]\)/int8_t\1/g;s/int16\([ >*),;[]\)/int16_t\1/g;s/int32\([ >*),;[]\)/int32_t\1/g;s/int64\([ >*),;[]\)/int64_t\1/g;s/ uint32(/ uint32_t(/g;s/_uint8_t/_uint8/;s/Uint8_t/Uint8/;s/ft_int64_t/ft_int64/g;s/uint64$/uint64_t/;s/WChar/char32_t/g;s/char32_t char32_t/char32_t WChar/' -i $i; done
2023-07-19 19:30:14 +02:00
Jonathan G Rennison
fd4d4d341d
Merge branch 'master' into jgrpp
...
# Conflicts:
# src/animated_tile.cpp
# src/cargopacket.h
# src/cheat_gui.cpp
# src/company_cmd.cpp
# src/company_gui.cpp
# src/date.cpp
# src/disaster_vehicle.cpp
# src/dock_gui.cpp
# src/economy.cpp
# src/engine.cpp
# src/error_gui.cpp
# src/fontcache/spritefontcache.cpp
# src/game/game_gui.cpp
# src/game/game_text.cpp
# src/gfx.cpp
# src/graph_gui.cpp
# src/highscore_gui.cpp
# src/industry_cmd.cpp
# src/lang/dutch.txt
# src/lang/english_AU.txt
# src/lang/english_US.txt
# src/lang/finnish.txt
# src/lang/french.txt
# src/lang/italian.txt
# src/lang/portuguese.txt
# src/lang/russian.txt
# src/lang/turkish.txt
# src/lang/vietnamese.txt
# src/main_gui.cpp
# src/misc_gui.cpp
# src/network/network_gui.cpp
# src/network/network_server.cpp
# src/newgrf.cpp
# src/newgrf.h
# src/newgrf_generic.cpp
# src/news_gui.cpp
# src/openttd.cpp
# src/os/unix/unix.cpp
# src/os/windows/font_win32.cpp
# src/os/windows/win32.cpp
# src/rail_gui.cpp
# src/road_gui.cpp
# src/saveload/afterload.cpp
# src/saveload/misc_sl.cpp
# src/saveload/oldloader_sl.cpp
# src/saveload/saveload.cpp
# src/saveload/saveload.h
# src/script/script_gui.cpp
# src/settings_table.cpp
# src/signs_gui.cpp
# src/smallmap_gui.cpp
# src/smallmap_gui.h
# src/spritecache.cpp
# src/spritecache.h
# src/spriteloader/grf.cpp
# src/station_cmd.cpp
# src/statusbar_gui.cpp
# src/stdafx.h
# src/strgen/strgen_base.cpp
# src/subsidy.cpp
# src/table/settings/difficulty_settings.ini
# src/texteff.cpp
# src/timetable_cmd.cpp
# src/timetable_gui.cpp
# src/toolbar_gui.cpp
# src/town_cmd.cpp
# src/town_gui.cpp
# src/townname.cpp
# src/vehicle.cpp
# src/waypoint_cmd.cpp
# src/widgets/dropdown.cpp
# src/window.cpp
2023-05-26 19:36:48 +01:00
Jonathan G Rennison
de5b114a83
Fix #10660 : Sprite Font scale affected by viewport zoom level limits. ( #10668 )
...
(cherry picked from commit db573c8742 )
# Conflicts:
# src/fontcache/spritefontcache.cpp
# src/gfx.cpp
# src/spritecache.cpp
2023-04-18 00:01:51 +01:00
PeterN
db573c8742
Fix #10660 : Sprite Font scale affected by viewport zoom level limits. ( #10668 )
2023-04-17 00:14:03 +02:00
PeterN
e97bf271dc
Codechange: Make SpriteType, CargoSortType, SourceType and ScriptType enum classes. ( #10663 )
...
This avoids a (soft) namespace conflict between the four ST_* enums.
2023-04-16 20:00:55 +01:00
Jonathan G Rennison
7685c36f35
Implement partial parallelisation of non-map mode viewport rendering
2022-11-09 22:24:31 +00:00
Jonathan G Rennison
29a1e49c28
Change various asserts to not be included in release builds
2022-10-22 12:34:54 +01:00
Jonathan G Rennison
5e413c9dcd
Fix #9804 : Only apply sprite_zoom_min setting when sprites available ( #9988 )
...
Only discard sprite zoom levels when a suitable higher zoom level is
defined in the same colour mode
This is to avoid placeholder or empty sprites being used, causing
visual artefacts
2022-09-21 12:37:11 +02:00
Jonathan G Rennison
309f1b47d2
Only apply sprite_zoom_min setting when suitable zoom levels are available
...
Only discard sprite zoom levels when a suitable higher zoom level is
defined in the same colour mode
See: https://github.com/OpenTTD/OpenTTD/issues/9804
2022-08-14 10:45:06 +01:00
Jonathan G Rennison
27316f70ec
Create enum for sprite cache control flag bits
2022-08-14 09:39:14 +01:00
Rubidium
6bd12e24d7
Codechange: introduce SpriteFile to be used by the sprite loader instead of the global FIO slot functionality
...
(cherry picked from commit fdc11a9f94 )
2021-05-30 22:02:14 +01:00
Rubidium
fdc11a9f94
Codechange: introduce SpriteFile to be used by the sprite loader instead of the global FIO slot functionality
2021-05-08 12:39:34 +02:00
Jonathan G Rennison
f4e29071be
Merge tag '1.11.0-beta2' into jgrpp
...
# Conflicts:
# .github/workflows/ci-build.yml
# .github/workflows/release.yml
# CMakeLists.txt
# src/blitter/32bpp_optimized.cpp
# src/debug.cpp
# src/gfx.cpp
# src/gfx_func.h
# src/lang/czech.txt
# src/lang/english.txt
# src/lang/italian.txt
# src/lang/swedish.txt
# src/lang/ukrainian.txt
# src/network/network_server.cpp
# src/os/windows/crashlog_win.cpp
# src/os/windows/win32.cpp
# src/pathfinder/follow_track.hpp
# src/screenshot.cpp
# src/settings_type.h
# src/spritecache.cpp
# src/vehicle_gui.cpp
# src/video/sdl2_v.cpp
# src/video/video_driver.cpp
# src/video/video_driver.hpp
# src/video/win32_v.cpp
2021-03-02 11:59:03 +00:00
Michael Lutz
6776229047
Codechange: Make the simple Malloc sprite allocator globally usable.
2021-02-22 22:16:07 +01:00
Michael Lutz
02e8741457
Codechange: Allow for using a sprite encoder that is not the currently active blitter when loading a sprite.
2021-02-22 22:16:07 +01:00
Jonathan G Rennison
81a1094cc8
Merge branch 'master' into jgrpp
...
# Conflicts:
# src/console_cmds.cpp
# src/date.cpp
# src/economy.cpp
# src/misc.cpp
# src/newgrf_house.cpp
2020-01-29 19:32:06 +00:00
Niels Martin Hansen
c8779fb311
Feature: NewGRF callback profiling ( #7868 )
...
Adds a console command newgrf_profile to collect some profiling data about NewGRF action 2 callbacks and produce a CSV file.
2020-01-26 13:45:51 +01:00
Jonathan G Rennison
cbdd9f84d8
Merge branch 'master' into jgrpp
...
# Conflicts:
# src/console_gui.cpp
# src/lang/korean.txt
# src/video/sdl2_v.cpp
# src/video/sdl2_v.h
# src/window.cpp
# src/window_gui.h
2019-11-12 18:43:10 +00:00
S. D. Cloudt
13cc8a0cee
Cleanup: Removed SVN headers
2019-11-10 17:59:20 +00:00
Jonathan G Rennison
674732cd68
Merge: Codechange: Use null pointer literal instead of the NULL macro
2019-04-11 18:14:13 +01:00
Henry Wilson
7c8e7c6b6e
Codechange: Use null pointer literal instead of the NULL macro
2019-04-10 23:22:20 +02:00
Jonathan G Rennison
3f03d03d92
Fix uint8 file_slot in LoadNextSprite
2019-01-14 18:45:57 +00:00
Jonathan G Rennison
90cd312428
Merge branch 'master' into jgrpp
...
# Conflicts:
# src/fios.h
2017-01-17 19:11:09 +00:00
frosch
7b553d255e
(svn r27732) -Change: Turn the message about 'missing baseset sprites' from a popup into a static message that only shows in non-release versions, just like the 'missing translations' message.
2017-01-14 18:30:26 +00:00
frosch
050271ed2d
(svn r27732) -Change: Turn the message about 'missing baseset sprites' from a popup into a static message that only shows in non-release versions, just like the 'missing translations' message.
2017-01-14 18:30:26 +00:00
patch-import
536a95dfd0
Import combined Enhanced viewport: zoom out, overlays & tooltips (r53_27127) patch
...
https://www.tt-forums.net/viewtopic.php?f=33&t=53394
2015-08-05 21:24:30 +01:00
michi_cc
14094d00bf
(svn r23887) -Feature: [NewGRF] Support for container version 2.
2012-02-04 13:29:04 +00:00
michi_cc
6db39410a1
(svn r23887) -Feature: [NewGRF] Support for container version 2.
2012-02-04 13:29:04 +00:00
peter1138
b84174fd4d
(svn r23316) -Feature: Add ability to zoom in to 2x and 4x level.
2011-11-24 12:38:48 +00:00
peter1138
81598273e9
(svn r23316) -Feature: Add ability to zoom in to 2x and 4x level.
2011-11-24 12:38:48 +00:00
peter1138
9e0e4bf639
(svn r23315) -Codechange: Only encode sprites for zoom levels that will be used.
2011-11-24 12:26:44 +00:00
peter1138
15d0a22aac
(svn r23315) -Codechange: Only encode sprites for zoom levels that will be used.
2011-11-24 12:26:44 +00:00
frosch
29f8f11ed4
(svn r21788) -Codechange: Enable GetRawSprite() to also load sprites not using the spritecache but a custom allocator function.
2011-01-14 16:36:34 +00:00
frosch
93ae848b0a
(svn r21788) -Codechange: Enable GetRawSprite() to also load sprites not using the spritecache but a custom allocator function.
2011-01-14 16:36:34 +00:00
frosch
dfff637487
(svn r21782) -Codechange: Move declaration of AllocatorProc from Blitter:: to spritecache.h
2011-01-14 15:34:33 +00:00
frosch
3d1008318b
(svn r21782) -Codechange: Move declaration of AllocatorProc from Blitter:: to spritecache.h
2011-01-14 15:34:33 +00:00
rubidium
738e71af4a
(svn r19723) -Add: a simple sprite alignment helper. It does not store the new offsets anywhere so as soon as the sprite is reloaded the offsets are gone (use a bigger sprite cache if this happens). Also anything that reloads NewGRFs (new games, loading games or (re)applying NewGRFs) clears the sprite cache and as such resets the offsets.
2010-04-25 16:27:30 +00:00
rubidium
c72e2dde60
(svn r19723) -Add: a simple sprite alignment helper. It does not store the new offsets anywhere so as soon as the sprite is reloaded the offsets are gone (use a bigger sprite cache if this happens). Also anything that reloads NewGRFs (new games, loading games or (re)applying NewGRFs) clears the sprite cache and as such resets the offsets.
2010-04-25 16:27:30 +00:00
frosch
eded89633c
(svn r18846) -Codechange: Merge DrawTileSeq into DrawCommonTileSeq.
2010-01-17 15:05:25 +00:00