diff --git a/X2WOTCCommunityHighlander/Config/XComContent.ini b/X2WOTCCommunityHighlander/Config/XComContent.ini index 1ec6eabfe..16d62c1f0 100644 --- a/X2WOTCCommunityHighlander/Config/XComContent.ini +++ b/X2WOTCCommunityHighlander/Config/XComContent.ini @@ -86,3 +86,10 @@ ; New config var for issue #397 ; Sets default weapon color for randomly generated soldiers. iDefaultWeaponTint = 20 + +[XComGame.X2Photobooth] +; New config variables for Issue #1584 - uncaps restriction on photobooth resolution to arbitrarily high value +; This allows the engine to natively adjust the outputted picture resolution to the maximum size supported by +; the viewport, instead of being arbitrarily capped by script. +m_iPosterSizeX = 4096 +m_iPosterSizeY = 6144 diff --git a/X2WOTCCommunityHighlander/Src/XComGame/Classes/UIPhotoboothBase.uc b/X2WOTCCommunityHighlander/Src/XComGame/Classes/UIPhotoboothBase.uc index 388205b94..39b6f38c4 100644 --- a/X2WOTCCommunityHighlander/Src/XComGame/Classes/UIPhotoboothBase.uc +++ b/X2WOTCCommunityHighlander/Src/XComGame/Classes/UIPhotoboothBase.uc @@ -2798,9 +2798,10 @@ defaultproperties m_iGameIndex = -1; //If you change these numbers mirror the change in XComPresentationLayerBase - m_iPosterSizeX = 800; - m_iPosterSizeY = 1200; - + // Start Issue #1584 - Inherit from X2Photobooth instead, commented out seperate definition + //m_iPosterSizeX = 800; + //m_iPosterSizeY = 1200; + // End Issue #1584 m_fCameraFOV = 90 bUpdateCameraWithFormation = true; diff --git a/X2WOTCCommunityHighlander/Src/XComGame/Classes/X2Photobooth.uc b/X2WOTCCommunityHighlander/Src/XComGame/Classes/X2Photobooth.uc index 63800ef43..79db89658 100644 --- a/X2WOTCCommunityHighlander/Src/XComGame/Classes/X2Photobooth.uc +++ b/X2WOTCCommunityHighlander/Src/XComGame/Classes/X2Photobooth.uc @@ -304,8 +304,9 @@ var int m_iOnScreenY; var int m_iOnScreenSizeX; var int m_iOnScreenSizeY; -var int m_iPosterSizeX; -var int m_iPosterSizeY; +// Issue #1584 - Expose poster size variables to config +var config int m_iPosterSizeX; +var config int m_iPosterSizeY; var float m_fMaxXPercentage; var float m_fMaxYPercentage; @@ -3503,9 +3504,10 @@ defaultproperties m_kFinalPosterComponent=SceneCapture2DComponent1 Components.Add(SceneCapture2DComponent1) - //If you change these numbers mirror the change in XComPresentationLayerBase - m_iPosterSizeX = 800; - m_iPosterSizeY = 1200; + // Start Issue #1584 - Variables set by config, no need for them here + //m_iPosterSizeX = 800; + //m_iPosterSizeY = 1200; + // End Issue #1584 m_bFormationNeedsUpdate=false m_bFormationLoading=false diff --git a/X2WOTCCommunityHighlander/Src/XComGame/Classes/XComPresentationLayerBase.uc b/X2WOTCCommunityHighlander/Src/XComGame/Classes/XComPresentationLayerBase.uc index 0de16af6d..bff0fa5db 100644 --- a/X2WOTCCommunityHighlander/Src/XComGame/Classes/XComPresentationLayerBase.uc +++ b/X2WOTCCommunityHighlander/Src/XComGame/Classes/XComPresentationLayerBase.uc @@ -183,11 +183,14 @@ simulated function Init() m_2DMovie = new(self) class'UIMovie_2D'; m_2DMovie.InitMovie(self); + // Start Issue #1584 + /// HL-Docs: feature:PhotoBoothResolution; issue:1584; tags:strategy + /// Unclamps hard-coded resolution restrictions on poster sizes generated by the photobooth, preferring the engine's default native restriction of viewport size if(`XENGINE.m_kPhotoboothUITexture != none) { - class'TextureRenderTarget2D'.static.Resize(`XENGINE.m_kPhotoboothUITexture, 800, 1200); + class'TextureRenderTarget2D'.static.Resize(`XENGINE.m_kPhotoboothUITexture, class'X2Photobooth'.default.m_iPosterSizeX, class'X2Photobooth'.default.m_iPosterSizeY); } - + // End Issue #1584 m_PhotoboothMovie = new(self) class'UIPhotoboothMovie'; m_PhotoboothMovie.RenderTexture = `XENGINE.m_kPhotoboothUITexture; m_PhotoboothMovie.InitMovie(self);