From 154384f0b99b8a852fd47a4b54f03c8cd80c8e9b Mon Sep 17 00:00:00 2001 From: Martin Valigursky <59932779+mvaligursky@users.noreply.github.com> Date: Wed, 26 Feb 2025 12:08:32 +0000 Subject: [PATCH] Improvements to Preprocessor - spaces after #else, comments in #include blocks (#7377) Co-authored-by: Martin Valigursky --- src/core/preprocessor.js | 4 +++- src/extras/render-passes/render-pass-compose.js | 1 - 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/src/core/preprocessor.js b/src/core/preprocessor.js index db524cabe5b..37b32adb0a3 100644 --- a/src/core/preprocessor.js +++ b/src/core/preprocessor.js @@ -22,7 +22,7 @@ const UNDEF = /undef[ \t]+([^\n]+)\r?(?:\n|$)/g; const IF = /(ifdef|ifndef|if)[ \t]*([^\r\n]+)\r?\n/g; // #endif/#else or #elif EXPRESSION -const ENDIF = /(endif|else|elif)([ \t][^\r\n]+)?\r?(?:\n|$)/g; +const ENDIF = /(endif|else|elif)(?:[ \t]+([^\r\n]*))?\r?\n?/g; // identifier const IDENTIFIER = /([\w-]+)/; @@ -402,6 +402,8 @@ class Preprocessor { let includeSource = includes?.get(identifier); if (includeSource !== undefined) { + includeSource = this.stripComments(includeSource); + // handle second identifier specifying loop count if (countIdentifier) { const countString = defines.get(countIdentifier); diff --git a/src/extras/render-passes/render-pass-compose.js b/src/extras/render-passes/render-pass-compose.js index 9fd7838e6f3..96afd687a73 100644 --- a/src/extras/render-passes/render-pass-compose.js +++ b/src/extras/render-passes/render-pass-compose.js @@ -13,7 +13,6 @@ import { GAMMA_NONE, GAMMA_SRGB, gammaNames, TONEMAP_LINEAR, tonemapNames } from const fragmentShader = /* glsl */ ` #include "tonemappingPS" - #include "decodePS" #include "gammaPS" varying vec2 uv0;