From d1d5a94886018821230188412ac0157b6c0caff5 Mon Sep 17 00:00:00 2001 From: Hirek Date: Tue, 15 Apr 2025 01:50:48 +0200 Subject: [PATCH] Add staticFiles directory this contains all files which should be shipped with executable --- .../python/local/abstractscreenrenderer.py | 89 +++++++++++++ staticFiles/renderercfg.yml | 32 +++++ staticFiles/textures/noise/COPYING.txt | 121 ++++++++++++++++++ staticFiles/textures/noise/LICENSE.txt | 9 ++ staticFiles/textures/noise/ldr_rgb1_0.png | Bin 0 -> 56500 bytes 5 files changed, 251 insertions(+) create mode 100644 staticFiles/python/local/abstractscreenrenderer.py create mode 100644 staticFiles/renderercfg.yml create mode 100644 staticFiles/textures/noise/COPYING.txt create mode 100644 staticFiles/textures/noise/LICENSE.txt create mode 100644 staticFiles/textures/noise/ldr_rgb1_0.png diff --git a/staticFiles/python/local/abstractscreenrenderer.py b/staticFiles/python/local/abstractscreenrenderer.py new file mode 100644 index 00000000..1af84e96 --- /dev/null +++ b/staticFiles/python/local/abstractscreenrenderer.py @@ -0,0 +1,89 @@ +from PIL import Image +from math import ceil, floor, cos, sin, radians +import os + +class abstractscreenrenderer(): + def __init__(self, lookup_path): + self.width = 0 + self.height = 0 + self.format = "RGB" + print lookup_path + + def openimage(self, name): + exts = [ ".png", ".tga", ".dds" ] + for e in exts: + path = name + e + if os.path.isfile(path): + if e == ".dds": + return Image.open(path).transpose(Image.FLIP_TOP_BOTTOM) + return Image.open(path) + raise FileNotFoundError('image not found: ' + name) + + def rotate_and_paste(self, background, foreground, angle, pivot, center_to_pivot, scale_x = 1, scale_y =1): + rad = radians(angle) + # wyznaczamy srodek wokol ktorego zostanie obrocony nakladany obraz + rotated = foreground.rotate(angle, expand=1) + # wyznaczamy pozycje dla nowego srodka + rotated_center = ((center_to_pivot[0]*cos(rad)-center_to_pivot[1]*sin(rad))*scale_x,(center_to_pivot[0]*sin(rad)+center_to_pivot[1]*cos(rad))*scale_y) + # wyznaczamy pozycje srodka na tle (pamietamy o odwroconej osi Y) + center_postion = (pivot[0] + int(rotated_center[0]), pivot[1] - int(rotated_center[1])) + # wyznaczamy obszar ktory zajmuje obrocony obrazek + box = (center_postion[0] - int(ceil(rotated.size[0]/2)), center_postion[1] - int(ceil(rotated.size[1]/2)), center_postion[0] + int(floor(rotated.size[0]/2)), center_postion[1] + int(floor(rotated.size[1]/2))) + background.paste(rotated, box, rotated) + + def print_fixed_with(self, draw, text, start_point, character_count, font, color, correction=0): + rozmiar_osemki = font.getsize("8")[0] + start_point_tmp = start_point[0] + for znak in range(len(text), character_count): + start_point_tmp += rozmiar_osemki-correction + for znak in range(0,len(text)): + rozmiar_act = font.getsize(text[znak])[0] + draw.text((start_point_tmp + rozmiar_osemki - rozmiar_act, start_point[1]), text[znak], font=font, fill=color) + start_point_tmp += rozmiar_osemki-correction + + def print_center(self, draw, text, X, Y, font, color): + w = draw.textsize(text, font) + draw.text(((X-w[0]/2),(Y-w[1]/2)), text, font=font, fill=color) + + def print_left(self, draw, text, X, Y, font, color): + w = draw.textsize(text, font) + draw.text((X,(Y-w[1]/2)), text, font=font, fill=color) + + def print_right(self, draw, text, X, Y, font, color): + w = draw.textsize(text, font) + draw.text(((X-w[0]),(Y-w[1]/2)), text, font=font, fill=color) + + def get_width(self): + return self.__dict__['width'] + + def get_height(self): + return self.__dict__['height'] + + def get_format(self): + return self.format if self.format else "RGB" + + def render(self, state): + image = self._render(state) + self.__dict__['width'] = image.size[0] + self.__dict__['height'] = image.size[1] + image = image.transpose(Image.FLIP_TOP_BOTTOM) + format = self.get_format() + if image.mode != format: + image = image.convert(format) + return image.tobytes("raw", format) + + def getCommands(self): + commands = self._getCommands() + return commands + + def _getCommands(self): + return [] + + def manul_set_format(self, format_str): + self.format = format_str + return + + def _render(self, state): + return Image.new("RGB", (1,1), color=(255,105,180)) + + diff --git a/staticFiles/renderercfg.yml b/staticFiles/renderercfg.yml new file mode 100644 index 00000000..c80472bf --- /dev/null +++ b/staticFiles/renderercfg.yml @@ -0,0 +1,32 @@ +display: + adapter: 0 # Consult Log for list of available adapters + output: 0 + disable_hdr: true + hdr_config: # Either "hdr" or "sdr" settings will be applied based on hardware capability + hdr: + ui_nits: 300 + scene_nits: 1000 + scene_gamma: 1. + pre_tonemap_exposure: -2.4 + sdr: + ui_nits: 80 + scene_nits: 80 + scene_gamma: 1. + pre_tonemap_exposure: 1.6 +shadows: + resolution: 4096 + cascades: [1.5, 5., 25., 50., 150.] # Note: first cascade serves as replacement to "cab shadows" +wire_diameter_lines: .01 # Thickness multipliers for line- and traction-type nodes + # note: these may need to be changed before playing some older scenarios +wire_diameter_tractions: .005 +lighting: + max_lights_per_scene: 2048 # Max. number of lights that can be visible at once + # increases memory usage (2048 lights use 65KiB of VRAM) + selfillum_factor: 1.0 # Amplification factor of material selfillum + # caution: increasing past 10 made predominantly red lights break FSR2 + freespot_factor: 1.0 # Amplification factor of freespot diffuse color + luminance_threshold: .01 # Luminance threshold for which radius of influence is calculated + # larger values improve performance at the cost of light spots + # possibly having a visible sharp edge + min_luminance_ev: -0.5 # Auto exposure clamping + max_luminance_ev: +5.0 diff --git a/staticFiles/textures/noise/COPYING.txt b/staticFiles/textures/noise/COPYING.txt new file mode 100644 index 00000000..0e259d42 --- /dev/null +++ b/staticFiles/textures/noise/COPYING.txt @@ -0,0 +1,121 @@ +Creative Commons Legal Code + +CC0 1.0 Universal + + CREATIVE COMMONS CORPORATION IS NOT A LAW FIRM AND DOES NOT PROVIDE + LEGAL SERVICES. DISTRIBUTION OF THIS DOCUMENT DOES NOT CREATE AN + ATTORNEY-CLIENT RELATIONSHIP. CREATIVE COMMONS PROVIDES THIS + INFORMATION ON AN "AS-IS" BASIS. CREATIVE COMMONS MAKES NO WARRANTIES + REGARDING THE USE OF THIS DOCUMENT OR THE INFORMATION OR WORKS + PROVIDED HEREUNDER, AND DISCLAIMS LIABILITY FOR DAMAGES RESULTING FROM + THE USE OF THIS DOCUMENT OR THE INFORMATION OR WORKS PROVIDED + HEREUNDER. + +Statement of Purpose + +The laws of most jurisdictions throughout the world automatically confer +exclusive Copyright and Related Rights (defined below) upon the creator +and subsequent owner(s) (each and all, an "owner") of an original work of +authorship and/or a database (each, a "Work"). + +Certain owners wish to permanently relinquish those rights to a Work for +the purpose of contributing to a commons of creative, cultural and +scientific works ("Commons") that the public can reliably and without fear +of later claims of infringement build upon, modify, incorporate in other +works, reuse and redistribute as freely as possible in any form whatsoever +and for any purposes, including without limitation commercial purposes. +These owners may contribute to the Commons to promote the ideal of a free +culture and the further production of creative, cultural and scientific +works, or to gain reputation or greater distribution for their Work in +part through the use and efforts of others. + +For these and/or other purposes and motivations, and without any +expectation of additional consideration or compensation, the person +associating CC0 with a Work (the "Affirmer"), to the extent that he or she +is an owner of Copyright and Related Rights in the Work, voluntarily +elects to apply CC0 to the Work and publicly distribute the Work under its +terms, with knowledge of his or her Copyright and Related Rights in the +Work and the meaning and intended legal effect of CC0 on those rights. + +1. Copyright and Related Rights. A Work made available under CC0 may be +protected by copyright and related or neighboring rights ("Copyright and +Related Rights"). Copyright and Related Rights include, but are not +limited to, the following: + + i. the right to reproduce, adapt, distribute, perform, display, + communicate, and translate a Work; + ii. moral rights retained by the original author(s) and/or performer(s); +iii. publicity and privacy rights pertaining to a person's image or + likeness depicted in a Work; + iv. rights protecting against unfair competition in regards to a Work, + subject to the limitations in paragraph 4(a), below; + v. rights protecting the extraction, dissemination, use and reuse of data + in a Work; + vi. database rights (such as those arising under Directive 96/9/EC of the + European Parliament and of the Council of 11 March 1996 on the legal + protection of databases, and under any national implementation + thereof, including any amended or successor version of such + directive); and +vii. other similar, equivalent or corresponding rights throughout the + world based on applicable law or treaty, and any national + implementations thereof. + +2. Waiver. To the greatest extent permitted by, but not in contravention +of, applicable law, Affirmer hereby overtly, fully, permanently, +irrevocably and unconditionally waives, abandons, and surrenders all of +Affirmer's Copyright and Related Rights and associated claims and causes +of action, whether now known or unknown (including existing as well as +future claims and causes of action), in the Work (i) in all territories +worldwide, (ii) for the maximum duration provided by applicable law or +treaty (including future time extensions), (iii) in any current or future +medium and for any number of copies, and (iv) for any purpose whatsoever, +including without limitation commercial, advertising or promotional +purposes (the "Waiver"). Affirmer makes the Waiver for the benefit of each +member of the public at large and to the detriment of Affirmer's heirs and +successors, fully intending that such Waiver shall not be subject to +revocation, rescission, cancellation, termination, or any other legal or +equitable action to disrupt the quiet enjoyment of the Work by the public +as contemplated by Affirmer's express Statement of Purpose. + +3. Public License Fallback. Should any part of the Waiver for any reason +be judged legally invalid or ineffective under applicable law, then the +Waiver shall be preserved to the maximum extent permitted taking into +account Affirmer's express Statement of Purpose. In addition, to the +extent the Waiver is so judged Affirmer hereby grants to each affected +person a royalty-free, non transferable, non sublicensable, non exclusive, +irrevocable and unconditional license to exercise Affirmer's Copyright and +Related Rights in the Work (i) in all territories worldwide, (ii) for the +maximum duration provided by applicable law or treaty (including future +time extensions), (iii) in any current or future medium and for any number +of copies, and (iv) for any purpose whatsoever, including without +limitation commercial, advertising or promotional purposes (the +"License"). The License shall be deemed effective as of the date CC0 was +applied by Affirmer to the Work. Should any part of the License for any +reason be judged legally invalid or ineffective under applicable law, such +partial invalidity or ineffectiveness shall not invalidate the remainder +of the License, and in such case Affirmer hereby affirms that he or she +will not (i) exercise any of his or her remaining Copyright and Related +Rights in the Work or (ii) assert any associated claims and causes of +action with respect to the Work, in either case contrary to Affirmer's +express Statement of Purpose. + +4. Limitations and Disclaimers. + + a. No trademark or patent rights held by Affirmer are waived, abandoned, + surrendered, licensed or otherwise affected by this document. + b. Affirmer offers the Work as-is and makes no representations or + warranties of any kind concerning the Work, express, implied, + statutory or otherwise, including without limitation warranties of + title, merchantability, fitness for a particular purpose, non + infringement, or the absence of latent or other defects, accuracy, or + the present or absence of errors, whether or not discoverable, all to + the greatest extent permissible under applicable law. + c. Affirmer disclaims responsibility for clearing rights of other persons + that may apply to the Work or any use thereof, including without + limitation any person's Copyright and Related Rights in the Work. + Further, Affirmer disclaims responsibility for obtaining any necessary + consents, permissions or other rights required for any use of the + Work. + d. Affirmer understands and acknowledges that Creative Commons is not a + party to this document and has no duty or obligation with respect to + this CC0 or use of the Work. diff --git a/staticFiles/textures/noise/LICENSE.txt b/staticFiles/textures/noise/LICENSE.txt new file mode 100644 index 00000000..661457b5 --- /dev/null +++ b/staticFiles/textures/noise/LICENSE.txt @@ -0,0 +1,9 @@ +To the extent possible under law, Christoph Peters has waived all copyright and +related or neighboring rights to the files in this directory and its +subdirectories. This work is published from: Germany. + +The work is made available under the terms of the Creative Commons CC0 Public +Domain Dedication. + +For more information please visit: +https://creativecommons.org/publicdomain/zero/1.0/ diff --git a/staticFiles/textures/noise/ldr_rgb1_0.png b/staticFiles/textures/noise/ldr_rgb1_0.png new file mode 100644 index 0000000000000000000000000000000000000000..4e7b3e9d7622788a1839b8c9a502acd979eba12f GIT binary patch literal 56500 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 BH_!k8 literal 0 HcmV?d00001