Commit Graph

806 Commits (f0f5ce5840dc8673dc03cd71256e53da973f1a60)

Author SHA1 Message Date
Jonathan G Rennison 5b78090a61 Merge branch 'master' into jgrpp
# Conflicts:
#	CMakeLists.txt
#	src/saveload/town_sl.cpp
#	src/screenshot.h
#	src/script/api/ai/ai_date.hpp.sq
#	src/script/api/ai/ai_marine.hpp.sq
#	src/script/api/ai/ai_station.hpp.sq
#	src/script/api/game/game_date.hpp.sq
#	src/script/api/game/game_marine.hpp.sq
#	src/script/api/game/game_station.hpp.sq
#	src/script/api/game/game_window.hpp.sq
#	src/script/api/script_window.hpp
#	src/script/api/template/template_window.hpp.sq
#	src/signal.cpp
#	src/statusbar_gui.cpp
#	src/toolbar_gui.cpp
#	src/viewport.cpp
#	src/viewport_func.h
4 years ago
TechGeekNZ a10013dd00 Codechange: Spell 'Viewport' consistently
Some places in the codebase misspell 'Viewport' as 'ViewPort' or 'view_port'.
This patch makes everything consistent.
4 years ago
TechGeekNZ 8652a4db76 Cleanup: Give `SetDirtyBlocks` a more descriptive name. 4 years ago
Jonathan G Rennison e559bb98c4 Viewport: Fix scroll region sort comparison not meeting strict weak ordering
fa90b567 was not a proper fix
4 years ago
Jonathan G Rennison 686ff03817 Fix graphical glitch when rendering narrow viewport slices 4 years ago
Jonathan G Rennison 60dabc68a0 Add a scope info logger for DoSetViewportPosition calls 4 years ago
Jonathan G Rennison 3cb521afb3 Viewport: Fix screen bounds of empty bounding box sprites when splitting 4 years ago
Jonathan G Rennison 89902f2f4a Debug: Add viewport debug flags for sprite split control 4 years ago
Jonathan G Rennison 4b374cb84a Add half-tile margin when horizontally splitting viewport drawing region 4 years ago
Jonathan G Rennison e0902c93a4 Revert "Viewport: Trim parent sprites to redraw area before sorting"
This reverts commit f563dfe194.

This caused rendering issues with vehicles passing under bridges
at the very edge of the drawing area.
4 years ago
Jonathan G Rennison 5ac240147e Fix wrong viewport virtual size in InitializeWindowViewport 4 years ago
Jonathan G Rennison fa90b56780 Viewport: Fix scroll region sort comparison not meeting strict weak ordering
See: #137
4 years ago
Jonathan G Rennison b4a814d371 Improve performance of vehicle route overlay rendering 4 years ago
Jonathan G Rennison a4608f6f72 Cache vehicle positions across draw blocks in viewport map mode 4 years ago
Jonathan G Rennison 7949de2c05 Add a minimum visible height and no ground tile parameter to DrawTileProc.
Filter out tile parts which are entirely outside the drawing area.
4 years ago
Jonathan G Rennison 8ef367b126 Add viewport debug commands 4 years ago
Jonathan G Rennison 8f442500ea Change how dirty screen, window and viewport areas are tracked for later redrawing
Track dirty viewport areas seperately form general screen redraws.
Maintain a dirty block grid per viewport, with a smaller block size.
Use even smaller block size in viewport map mode.

Use a rectangle array for general screen redraws instead of a block grid.

Add a dirty bit to windows and widgets, to simplify the common case
of repainting a whole window or widget, without catching
neighbouring windows or viewports.
4 years ago
Jonathan G Rennison d740a19e5f Increase viewport chunking size 4 years ago
Jonathan G Rennison 8956b1ab02 Improve performance of tunnel rendering in viewport map mode 4 years ago
Jonathan G Rennison 65152503de Viewport: Do not process tile selection sprites below drawing area 4 years ago
Jonathan G Rennison f563dfe194 Viewport: Trim parent sprites to redraw area before sorting 4 years ago
Jonathan G Rennison 61dfca98c7 Fix text effects using the wrong size for viewport dirtying at 8x zoom 4 years ago
Jonathan G Rennison c13ff2a1d3 Reduce viewport invalidation area of track reservation changes 4 years ago
Jonathan G Rennison 2c2184f89d Fix viewport signs always using the larger font size for marking dirty 4 years ago
Jonathan G Rennison c42ce832ae Fix viewport signs and text effects marking viewports dirty unnecessarily
* When at high zoom levels where the signs are not shown
* Where the sign type is disabled in the display options
4 years ago
Jonathan G Rennison a152e2327c Viewport: Reduce unnecessary region redraws when scrolling viewports 4 years ago
Jonathan G Rennison 4d9e07e885 Viewport: Split sprite sort regions when more than 60 sprites present 4 years ago
Jonathan G Rennison a561f29dc3 Viewporrt map mode: Bridge and tunnel cache optimisations 4 years ago
Jonathan G Rennison 14af8701df Fix #6566: Fix signed integer overflow in viewport draw area chunking
This caused drawing areas larger than 2097151 pixels at 8x zoom to
not be subdivided into smaller chunks as required.
This resulted in pathological performance issues in the sprite sorter.
4 years ago
Jonathan G Rennison 6f6bac5212 Fix signed integer overflow in viewport draw area chunking
This caused drawing areas larger than 2097151 pixels at 8x zoom to
not be subdivided into smaller chunks as required.
This resulted in pathological performance issues in the sprite sorter.
4 years ago
Jonathan G Rennison 7960db35f2 Merge branch 'master' into jgrpp
# Conflicts:
#	config.lib
#	projects/openttd_vs140.vcxproj
#	projects/openttd_vs140.vcxproj.filters
#	projects/openttd_vs141.vcxproj
#	projects/openttd_vs141.vcxproj.filters
#	projects/openttd_vs142.vcxproj
#	projects/openttd_vs142.vcxproj.filters
#	src/aircraft_cmd.cpp
#	src/base_station_base.h
#	src/core/pool_type.hpp
#	src/disaster_vehicle.cpp
#	src/economy.cpp
#	src/engine.cpp
#	src/group.h
#	src/group_cmd.cpp
#	src/group_gui.cpp
#	src/lang/english.txt
#	src/lang/german.txt
#	src/linkgraph/linkgraph_gui.cpp
#	src/network/network_command.cpp
#	src/network/network_server.cpp
#	src/openttd.cpp
#	src/order_cmd.cpp
#	src/road_cmd.cpp
#	src/saveload/afterload.cpp
#	src/saveload/cargopacket_sl.cpp
#	src/saveload/linkgraph_sl.cpp
#	src/saveload/order_sl.cpp
#	src/saveload/station_sl.cpp
#	src/saveload/town_sl.cpp
#	src/saveload/vehicle_sl.cpp
#	src/screenshot.cpp
#	src/screenshot.h
#	src/settings_gui.cpp
#	src/settings_type.h
#	src/smallmap_gui.cpp
#	src/station.cpp
#	src/station_cmd.cpp
#	src/table/settings.ini
#	src/toolbar_gui.cpp
#	src/town_cmd.cpp
#	src/train.h
#	src/train_cmd.cpp
#	src/train_gui.cpp
#	src/vehicle.cpp
#	src/vehicle_base.h
#	src/vehiclelist.cpp
#	src/window_type.h
5 years ago
glx ee7a8eebca Codechange: Replace FOR_ALL_TOWNS with range-based for loops 5 years ago
glx 869581eb23 Codechange: Replace FOR_ALL_SIGNS with range-based for loops 5 years ago
glx ddabfed1cd Codechange: Replace station related FOR_ALL with range-based for loops 5 years ago
Jonathan G Rennison fe9b024f1a Merge branch 'master' into jgrpp
# Conflicts:
#	src/signs_cmd.cpp
#	src/station.cpp
#	src/station_cmd.cpp
#	src/town_cmd.cpp
#	src/viewport.cpp
#	src/waypoint.cpp
#	src/waypoint_cmd.cpp
5 years ago
Niels Martin Hansen 9900af38f5
Fix #7847: Use ViewportSign coordinates for sign Kdtree coordinates (#7849)
Ensure the same coordinates are used for station/town/player signs regardless of how the landscape changes below it after the coordinates were first determined.

By keeping track of whether each ViewportSign is valid for Kdtree use (and only ever registering the viewport sign when the object is valid) a lot of code can be simplified and become more robust at the same time.
5 years ago
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
5 years ago
S. D. Cloudt 13cc8a0cee Cleanup: Removed SVN headers 5 years ago
Jonathan G Rennison 6562937899 Merge branch 'master' into jgrpp-nrt
# Conflicts:
#	src/console_cmds.cpp
#	src/script/api/script_order.cpp
#	src/station_cmd.cpp
#	src/statusbar_gui.cpp
#	src/town_gui.cpp
5 years ago
Gabda b870596f15 Add #6887: Option to show zone inside local authority boundary of towns
Can be found at town information > local authority window
Layout for button is same as Graph Keys
Turn on/off for every town individually
5 years ago
Jonathan G Rennison 7ed86e7488 Merge branch 'jgrpp' into jgrpp-nrt 5 years ago
Jonathan G Rennison 67dd9ffe8c Use light blue colour for station tile coverage highlight 5 years ago
Jonathan G Rennison dbc5f1baed Merge branch 'master' into jgrpp-nrt
# Conflicts:
#	src/fontcache.cpp
#	src/game/game_text.cpp
#	src/lang/korean.txt
#	src/os/macosx/crashlog_osx.cpp
#	src/os/windows/crashlog_win.cpp
#	src/station_cmd.cpp
#	src/viewport.cpp
5 years ago
Jonathan G Rennison 36eb4165b8 Merge branch 'master' into jgrpp
# Conflicts:
#	src/bridge_map.h
#	src/crashlog.cpp
#	src/industry.h
#	src/linkgraph/linkgraph_type.h
#	src/order_type.h
#	src/saveload/afterload.cpp
#	src/settings.cpp
#	src/settings_type.h
#	src/smallmap_gui.cpp
#	src/spritecache.cpp
#	src/stdafx.h
#	src/table/settings.h.preamble
#	src/train.h
#	src/vehicle.cpp
#	src/viewport.cpp
#	src/viewport_func.h
#	src/widgets/station_widget.h
#	src/zoom_func.h
#	src/zoom_type.h
5 years ago
PeterN 2d0352d67f
Fix e8d397e4ee: Avoid using RemapCoords2 during savegame conversion. (#7588) 5 years ago
Niels Martin Hansen c9fe6e7b8f Fix #7371: Avoid dependency on foundations of town tile during saveload 5 years ago
Charles Pigott 96a4787710 Codechange: Set ZoomLevel's base type to byte instead of using ZoomLevelByte 5 years ago
Jonathan G Rennison d47c083e00 Comment out some unused constants 5 years ago
peter1138 81d335b081 Feature: Add station coverage area display for towns. 5 years ago
peter1138 81f0f97406 Feature: Add existing station coverage area display when placing new station parts. 5 years ago