Code: Select all
[Variables]
ModeUpdateDivider=1
Frames=360
Cols=360
Rows=1
Size=294
[Rainmeter]
Update=25
DynamicWindowSize=1
AccurateText=1
---Measures---
[Frame]
Group=SlideGroup
Measure=Calc
Formula=(Trunc((#Frames#+Frame+1)%#Frames#))
MaxValue=#Frames#
UpdateDivider=#ModeUpdateDivider#
DynamicVariables=1
[Set]
Group=SlideGroup
Measure=Calc
Formula=(Trunc(Frame/(#Rows#*#Cols#)))
UpdateDivider=#ModeUpdateDivider#
DynamicVariables=1
[Row]
Group=SlideGroup
Measure=Calc
Formula=(Trunc((Frame%(#Rows#*#Cols#))/#Cols#))
UpdateDivider=#ModeUpdateDivider#
DynamicVariables=1
[Col]
Group=SlideGroup
Measure=Calc
Formula=(Trunc((Frame%(#Rows#*#Cols#))%#Cols#))
UpdateDivider=#ModeUpdateDivider#
DynamicVariables=1
---Meters---
[Container]
Meter=Image
W=(#Size#)
H=(#Size#)
SolidColor=0,0,0,255
DynamicVariables=1
[Image]
Container=Container
Meter=Image
ImageName=#@#Test.png
ImageCrop=(#Size#*[Col]),(#Size#*[Row]),(#Size#),(#Size#),1
LeftMouseUpAction=[!SetVariable ModeUpdateDivider (-[#ModeUpdateDivider])][!PauseMeasureGroup SlideGroup][!UpdateMeasureGroup SlideGroup][!UnPauseMeasureGroup SlideGroup][!UpdateMeter *][!Redraw]
MouseScrollUpAction=[!SetOption Frame Formula (Trunc((#Frames#+[Frame]+1)%#Frames#))][!UpdateMeasureGroup SlideGroup][!UpdateMeter *][!Redraw]
MouseScrollDownAction=[!SetOption Frame Formula (Trunc((#Frames#+[Frame]-1)%#Frames#))][!UpdateMeasureGroup SlideGroup][!UpdateMeter *][!Redraw]
UpdateDivider=#ModeUpdateDivider#
DynamicVariables=1
[Text]
Meter=String
Y=0r
SolidColor=0,0,0,128
FontFace=Consolas
FontColor=255,255,255,255
FontSize=16
AntiAlias=1
Text="Frame = [Frame]#CRLF#Set = [Set]#CRLF#Row = [Row]#CRLF#Col = [Col]#CRLF#Size = #Size##CRLF#"
DynamicVariables=1
Results:
- with these values that are suited for a 294x294 "frame" out of 360 in a 105840x294 image, the "frame image" will partially then completely dissapear at Frame or Col 54 and 55, basically when reaching around 16384 or 2^16 pixels in width, if using Hardware Acceleration in Rainmeter (1st bug)
- when changing Frames, Cols and Size to 256 and ImageName to #@#Test256.png in order to load a 65536x256 image that contains 256 "frames" instead, Rainmeter will "almost" hang and go into slow motion, despite using the same settings / programs to write the TIF (Photoshop CS6) and the PNG (XnViewMP), and not changing anything in the code except lowering the values (2nd bug, discovered while preparing to post here the 1st bug)
Notes:
- yes, my drivers are the newest and all that, and I doubt this is the issue, since I had this problem on my older laptop as well, on a dedicated AMD GPU
- everything works fine without HA for the 1st bug, so I'm guessing it's an "internal" resolution limit at play here, that hopefully Rainmeter can "fix" if it's not to ingrained into Windows; by the way, this doesn't happen for images with the same content, if the frames are distributed more evenly into rows and columns (say, a 18 row x 20 columns layout)
- the 1st bug (didn't test the 2nd) applies to Bitmap meters as well, and this is the reason I posted the bug, since cropping on a different "row" is not an issue for Image meters
- this has not happened to me before, but some image viewers could not open the TIFs above, so this might be related to the 2nd bug
- the nVidia Control Panel and Start / Settings have no special configuration for Rainmeter, it's all on "let Windows decide" aka the integrated AMD Vega card, but it happens the same if I chose the dedicated nVidia Gefore GTX 1650
- be prepared to react appropriately for the 2nd bug (if you're able to reproduce it, that is), because the skin won't be visible then
In case it's still needed:
Code: Select all
NOTE (19:21:37.053) : Rainmeter 4.5.4.3550 (64-bit)
NOTE (19:21:37.053) : Language: English (1033)
NOTE (19:21:37.053) : Build time: 2021-10-04 9:25:19
NOTE (19:21:37.054) : Windows 10 Enterprise 2009 64-bit (build 19043) - English (1033)
NOTE (19:21:37.054) : Path: C:\Program Files\Rainmeter\
NOTE (19:21:37.054) : SkinPath: C:\Users\[User]\Documents\Rainmeter\Skins\
NOTE (19:21:37.054) : SettingsPath: C:\Users\[User]\AppData\Roaming\Rainmeter\
NOTE (19:21:37.054) : IniFile: C:\Users\[User]\AppData\Roaming\Rainmeter\Rainmeter.ini
DBUG (19:21:37.055) : ------------------------------
DBUG (19:21:37.055) : * EnumDisplayDevices / EnumDisplaySettings API
DBUG (19:21:37.056) : \\.\DISPLAY1
DBUG (19:21:37.056) : Name : Generic PnP Monitor
DBUG (19:21:37.056) : Adapter : AMD Radeon(TM) Graphics
DBUG (19:21:37.056) : Flags : ACTIVE PRIMARY (0x00080005)
DBUG (19:21:37.057) : Handle : 0x0000000000010001
DBUG (19:21:37.057) : ScrArea : L=0, T=0, R=1920, B=1080 (W=1920, H=1080)
DBUG (19:21:37.057) : WorkArea : L=0, T=0, R=1920, B=1050 (W=1920, H=1050)
DBUG (19:21:37.057) : \\.\DISPLAY2
DBUG (19:21:37.057) : Adapter : AMD Radeon(TM) Graphics
DBUG (19:21:37.057) : Flags : (0x00080000)
DBUG (19:21:37.057) : \\.\DISPLAY3
DBUG (19:21:37.058) : Adapter : NVIDIA GeForce GTX 1650
DBUG (19:21:37.058) : Flags : (0x00000000)
DBUG (19:21:37.058) : ------------------------------
DBUG (19:21:37.058) : * EnumDisplayMonitors API
DBUG (19:21:37.058) : \\.\DISPLAY1
DBUG (19:21:37.058) : Flags : PRIMARY (0x00000001)
DBUG (19:21:37.059) : Handle : 0x0000000000010001
DBUG (19:21:37.059) : ScrArea : L=0, T=0, R=1920, B=1080 (W=1920, H=1080)
DBUG (19:21:37.059) : WorkArea : L=0, T=0, R=1920, B=1050 (W=1920, H=1050)
DBUG (19:21:37.059) : ------------------------------
DBUG (19:21:37.059) : * METHOD: EnumDisplayDevices + EnumDisplaySettings Mode
DBUG (19:21:37.059) : * MONITORS: Count=3, Primary=@1
DBUG (19:21:37.059) : @0: Virtual screen
DBUG (19:21:37.059) : L=0, T=0, R=1920, B=1080 (W=1920, H=1080)
DBUG (19:21:37.060) : @1: \\.\DISPLAY1 (active), MonitorName: Generic PnP Monitor
DBUG (19:21:37.060) : L=0, T=0, R=1920, B=1080 (W=1920, H=1080)
DBUG (19:21:37.060) : @2: \\.\DISPLAY2 (inactive), MonitorName:
DBUG (19:21:37.060) : @3: \\.\DISPLAY3 (inactive), MonitorName:
DBUG (19:21:37.060) : ------------------------------