mirror of
https://github.com/Kravickas/PS4-apps.git
synced 2026-10-17 12:00:56 +02:00
77 lines
6.7 KiB
C
77 lines
6.7 KiB
C
#pragma once
|
|
#include <stdint.h>
|
|
|
|
// ps_dark: physically based sky + limb-darkened sun + lit moon.
|
|
// Sky: tables of assets/sky/atmosphere.bin (atmosphere.c: Bruneton 2017 transmittance and single
|
|
// scattering, Hillaire 2020 multiple scattering) - Rayleigh / Mie / multiple integrals without the
|
|
// phase, 56 light-elevation slices of 64 x 64 stacked in three RGBA16F atlases; per light two
|
|
// slices blended, the phases applied per pixel (sharp Mie aureole). The sun, the moon (and the
|
|
// stars, ps_stars) lie beyond the atmosphere: they are ADDED to the in-scattered sky light.
|
|
// desc[164..203] (atmo_sky_consts): F, tilt0 | R tan, tilt x | U tan, tilt z | sun L, E | shx, shz,
|
|
// sqrt(2 / (R hc)), 0 | 0, cam x, cam z, cam y + 0.5 |
|
|
// moon L, E (unused) | mhx, mhz, moon sky scale R, G | B, sun in the moon frame (x, y, z) |
|
|
// limb alpha RGB, 1/R (the moon's sky scale per channel: MOON_SKY_SCALE x the moonlight colour /
|
|
// its luminance)
|
|
// (the shader picks each pixel's light slices itself)
|
|
// desc[204] / [212] / [220] atlas T#s, [228] their S#, [232] moon albedo T#, [240] its S#.
|
|
// PGM_RSRC1 0x30C (52 VGPRs, 104 SGPRs incl. VCC). Hash CAFE00E9.
|
|
static const uint32_t ps_dark_binary[] __attribute__((aligned(256))) = {
|
|
0xBEEB03FF, 0x000000DD, 0xBEFC0302, 0xBEE4047E, 0xBEFE0A7E, 0xC0820110, 0xC0840114, 0xC0860154,
|
|
0xC0880158, 0xC10A01A4, 0xC11201B4, 0xC0DA01C4, 0xC0DE01CC, 0xC0E201D4, 0xC0E601DC, 0xC0AA01E4,
|
|
0xC0EC01E8, 0xC0B001F0, 0xC8080000, 0xC8090001, 0xC80C0100, 0xC80D0101, 0xBF8C007F, 0x7E080214,
|
|
0x3E080418, 0x3E08061C, 0x7E0A0215, 0x3E0A0419, 0x3E0A061D, 0x7E0C0216, 0x3E0C041A, 0x3E0C061E,
|
|
0x100E0904, 0x3E0E0B05, 0x3E0E0D06, 0x7E0E5D07, 0x10080F04, 0x100A0F05, 0x100C0F06, 0x10180904,
|
|
0x3E180D06, 0x201818FF, 0x2B8CBCCC, 0x7E145D0C, 0x1018150C, 0x1010081B, 0x3E100C1F, 0x10101508,
|
|
0x06101017, 0x10121108, 0x061212F2, 0x7E125D09, 0x10101308, 0x1018110C, 0x3E181305, 0x361018FF,
|
|
0x7FFFFFFF, 0x7E106708, 0x101010F0, 0x061210F0, 0x081A10F0, 0x7C061880, 0x0012130D, 0x101212FF,
|
|
0x42800000, 0x201212F0, 0x1E1212FF, 0x427E0000, 0x7E16543B, 0x10160B0B, 0x3E160829, 0x3E160C2A,
|
|
0x1018150A, 0x1016190B, 0x08161680, 0x20161680, 0x1E1616FF, 0x457A0000, 0x7E180229, 0x3E18090B,
|
|
0x7E1A022A, 0x3E1A0D0B, 0x101C190C, 0x3E1C1B0D, 0x101C1C3B, 0x101C1CF0, 0x3E1C0B0B, 0x061C1C2B,
|
|
0x201C1C80, 0x101C1C26, 0x101E1824, 0x3E1E1A25, 0x101E1E3B, 0x061E1F0E, 0x10201F0F, 0x062020F2,
|
|
0x7E205D10, 0x101E210F, 0x7E220224, 0x10222220, 0x7E240225, 0x3E222422, 0x10221F11, 0x3E222021,
|
|
0x362422FF, 0x7FFFFFFF, 0x1E2424F2, 0x7E2602FF, 0xBAA57A2C, 0x10262513, 0x062626FF, 0x3BDA90C5,
|
|
0x10262513, 0x062626FF, 0xBC8BFC66, 0x10262513, 0x062626FF, 0x3CFD10F8, 0x10262513, 0x062626FF,
|
|
0xBD4D8392, 0x10262513, 0x062626FF, 0x3DB63A9E, 0x10262513, 0x062626FF, 0xBE5BBFCA, 0x10262513,
|
|
0x062626FF, 0x3FC90FDA, 0x082824F2, 0x7E286714, 0x10262913, 0x082626FF, 0x3FC90FDB, 0x7C082280,
|
|
0x08282680, 0x00262913, 0x102626FF, 0x41E52EE1, 0x062626FF, 0x41200000, 0x20262680, 0x1E2626FF,
|
|
0x425C0000, 0x7E284913, 0x1E2828FF, 0x42580000, 0x085E2913, 0x105A28FF, 0x42800000, 0x065C5AFF,
|
|
0x42800000, 0x101E1830, 0x3E1E1A31, 0x101E1E3B, 0x061E1F0E, 0x10201F0F, 0x062020F2, 0x7E205D10,
|
|
0x101E210F, 0x7E220230, 0x1022222C, 0x7E240231, 0x3E22242E, 0x10221F11, 0x3E22202D, 0x362422FF,
|
|
0x7FFFFFFF, 0x1E2424F2, 0x7E2602FF, 0xBAA57A2C, 0x10262513, 0x062626FF, 0x3BDA90C5, 0x10262513,
|
|
0x062626FF, 0xBC8BFC66, 0x10262513, 0x062626FF, 0x3CFD10F8, 0x10262513, 0x062626FF, 0xBD4D8392,
|
|
0x10262513, 0x062626FF, 0x3DB63A9E, 0x10262513, 0x062626FF, 0xBE5BBFCA, 0x10262513, 0x062626FF,
|
|
0x3FC90FDA, 0x082824F2, 0x7E286714, 0x10262913, 0x082626FF, 0x3FC90FDB, 0x7C082280, 0x08282680,
|
|
0x00262913, 0x102626FF, 0x41E52EE1, 0x062626FF, 0x41200000, 0x20262680, 0x1E2626FF, 0x425C0000,
|
|
0x7E284913, 0x1E2828FF, 0x42580000, 0x08642913, 0x106028FF, 0x42800000, 0x066260FF, 0x42800000,
|
|
0x7E520280, 0x7E540280, 0x7E560280, 0x10160824, 0x3E160C25, 0x1016150B, 0x201616F3, 0x1E1616F2,
|
|
0x101616F0, 0x081C16F0, 0x7E20030E, 0x061E132D, 0x101E1EFF, 0x39924925, 0x0622132E, 0x102222FF,
|
|
0x39924925, 0xF0800700, 0x02AF120E, 0xF0800700, 0x02AF1510, 0xF0800700, 0x02B1180E, 0xF0800700,
|
|
0x02B11B10, 0xF0800700, 0x02B31E0E, 0xF0800700, 0x02B32110, 0x10480820, 0x3E480A21, 0x3E480C22,
|
|
0x104A4924, 0x064A4AF2, 0x104C4AFF, 0x3D747645, 0x104E48FF, 0x3FCCCCCD, 0x084E4EFF, 0x3FD1EB85,
|
|
0x7E506727, 0x10504F28, 0x7E505528, 0x104E4AFF, 0x3C8557C9, 0x104E5127, 0xBF8C0F70, 0x082A2515,
|
|
0x3E242B2F, 0x0836311B, 0x3E30372F, 0x08423D21, 0x3E3C432F, 0x10244D12, 0x3E244F18, 0x06243D12,
|
|
0x3E522423, 0x082C2716, 0x3E262D2F, 0x0838331C, 0x3E32392F, 0x08443F22, 0x3E3E452F, 0x10264D13,
|
|
0x3E264F19, 0x06263F13, 0x3E542623, 0x082E2917, 0x3E282F2F, 0x083A351D, 0x3E343B2F, 0x08464123,
|
|
0x3E40472F, 0x10284D14, 0x3E284F1A, 0x06284114, 0x3E562823, 0x10160830, 0x3E160C31, 0x1016150B,
|
|
0x201616F3, 0x1E1616F2, 0x101616F0, 0x081C16F0, 0x7E20030E, 0x061E1330, 0x101E1EFF, 0x39924925,
|
|
0x06221331, 0x102222FF, 0x39924925, 0xF0800700, 0x02AF120E, 0xF0800700, 0x02AF1510, 0xF0800700,
|
|
0x02B1180E, 0xF0800700, 0x02B11B10, 0xF0800700, 0x02B31E0E, 0xF0800700, 0x02B32110, 0x1048082C,
|
|
0x3E480A2D, 0x3E480C2E, 0x104A4924, 0x064A4AF2, 0x104C4AFF, 0x3D747645, 0x104E48FF, 0x3FCCCCCD,
|
|
0x084E4EFF, 0x3FD1EB85, 0x7E506727, 0x10504F28, 0x7E505528, 0x104E4AFF, 0x3C8557C9, 0x104E5127,
|
|
0xBF8C0F70, 0x082A2515, 0x3E242B32, 0x0836311B, 0x3E303732, 0x08423D21, 0x3E3C4332, 0x10244D12,
|
|
0x3E244F18, 0x06243D12, 0x3E522432, 0x082C2716, 0x3E262D32, 0x0838331C, 0x3E323932, 0x08443F22,
|
|
0x3E3E4532, 0x10264D13, 0x3E264F19, 0x06263F13, 0x3E542633, 0x082E2917, 0x3E282F32, 0x083A351D,
|
|
0x3E343B32, 0x08464123, 0x3E404732, 0x10284D14, 0x3E284F1A, 0x06284114, 0x3E562834, 0x0A100404,
|
|
0x0A160605, 0x10101108, 0x3E10170B, 0x7E166708, 0x08161607, 0x101616FF, 0x44070000, 0x061616F0,
|
|
0x20161680, 0x1E1616F2, 0x7E185406, 0x10101908, 0x081010F2, 0x20101080, 0x7E106708, 0x7E104F08,
|
|
0x101A1038, 0x7E1A4B0D, 0x101A170D, 0x3E521A0C, 0x101A1039, 0x7E1A4B0D, 0x101A170D, 0x3E541A0D,
|
|
0x101A103A, 0x7E1A4B0D, 0x101A170D, 0x3E561A0E, 0x0A100408, 0x0A160609, 0x10181108, 0x3E18170B,
|
|
0x7E1A670C, 0x081A1A0B, 0x101A1AFF, 0x44070000, 0x061A1AF0, 0x201A1A80, 0x1E1A1AF2, 0x7E1C540B,
|
|
0x10101D08, 0x10161D0B, 0x101E1108, 0x3E1E170B, 0x081E1EF2, 0x201E1E80, 0x7E1E670F, 0x102010F0,
|
|
0x062020F0, 0x102216F0, 0x062222F0, 0xF0800700, 0x03161210, 0x102A1035, 0x3E2A1636, 0x3E2A1E37,
|
|
0x062C1F15, 0x202C2CFF, 0x358637BD, 0x7E2C5516, 0x202A2A80, 0x102A2D15, 0x102A1B15, 0xBF8C0F70,
|
|
0x10242B12, 0x3E522410, 0x10262B13, 0x3E542611, 0x10282B14, 0x3E562812, 0x7E5802F2, 0xBEFE0464,
|
|
0xF800180F, 0x2C2B2A29, 0xBF810000, 0xBF800000, 0x5362724F, 0x00726468, 0x0006F000, 0x00000000,
|
|
0xDEADBEEF, 0xCAFE00E9, 0x00000000,
|
|
};
|