diff --git a/docs/en/script/edit.mdx b/docs/en/script/edit.mdx index 60feec35e..95c8561a1 100644 --- a/docs/en/script/edit.mdx +++ b/docs/en/script/edit.mdx @@ -24,14 +24,14 @@ For more information about the code editor, please check [Code Editor](/en/docs/ After creating a script asset in the scene editor, double-click the script to open the code editor. Scripts in Galacean need to be written in [Typescript](https://www.typescriptlang.org/), and new scripts are created based on built-in templates by default. Additionally, the Galacean code editor is based on Monaco, with shortcuts similar to VSCode. After modifying the script, press `Ctrl/⌘ + S` to save, and the real-time preview area on the right will show the latest scene effects. -> Tip: The Galacean code editor currently supports `.ts`, `.gs`, and `.glsl` file editing. +> Tip: The Galacean code editor currently supports `.ts`, `.shader`, and `.glsl` file editing. ## File Preview 1. **File Search** Quickly search for files in the project -2. **Code Filter** Whether to display only code files ( `.ts`, `.gs`, `.glsl` ) in the file tree +2. **Code Filter** Whether to display only code files ( `.ts`, `.shader`, `.glsl` ) in the file tree 3. **Built-in Files** Used to display which files are non-editable internal files 4. **Expand/Hide** Toggle the expansion or hiding of folders 5. **Code Files** Editable code files will display corresponding file type thumbnails diff --git a/docs/zh/script/edit.mdx b/docs/zh/script/edit.mdx index 28cdd108a..4cb0255ef 100644 --- a/docs/zh/script/edit.mdx +++ b/docs/zh/script/edit.mdx @@ -24,14 +24,14 @@ Galacean Editor 提供了一个功能强大的代码编辑器,提供了代码 在场景编辑器中创建脚本资产后,双击该脚本即可打开代码编辑器。Galacean 中的脚本需使用 [Typescript](https://www.typescriptlang.org/) 语言编写,同时新脚本默认基于内置模板创建。另外,Galacean 的代码编辑器基于 Monaco,快捷键与 VSCode 类似。修改脚本后,按 `Ctrl/⌘ + S` 保存,右侧实时预览区展现最新场景效果。 -> 提示:Galacean 代码编辑器目前支持 `.ts` `.gs` 和 `.glsl` 的文件编辑 +> 提示:Galacean 代码编辑器目前支持 `.ts` `.shader` 和 `.glsl` 的文件编辑 ## 文件预览 1. **文件搜索** 可快速搜索项目中的文件 -2. **代码筛选** 文件树是否仅显示代码文件 ( `.ts` `.gs` `.glsl` ) +2. **代码筛选** 文件树是否仅显示代码文件 ( `.ts` `.shader` `.glsl` ) 3. **内置文件** 用来显示哪些文件是不可编辑的内部文件 4. **展开/隐藏** 可切换文件夹的展开或隐藏 5. **代码文件** 可编辑的代码文件会显示对应的文件类型的缩略图标 diff --git a/e2e/case/shaderLab-mrt.ts b/e2e/case/shaderLab-mrt.ts index 54afaf649..a8f3a2c7c 100644 --- a/e2e/case/shaderLab-mrt.ts +++ b/e2e/case/shaderLab-mrt.ts @@ -9,7 +9,7 @@ import { initScreenshot, updateForE2E } from "./.mockForE2E"; const shaderLab = new ShaderLab(); -const shaderSource = `Shader "/custom.gs" { +const shaderSource = `Shader "/custom.shader" { SubShader "Default" { UsePass "pbr/Default/ShadowCaster" diff --git a/packages/loader/src/ShaderLoader.ts b/packages/loader/src/ShaderLoader.ts index 3380ff297..d7e714af5 100644 --- a/packages/loader/src/ShaderLoader.ts +++ b/packages/loader/src/ShaderLoader.ts @@ -9,7 +9,7 @@ import { } from "@galacean/engine-core"; import { ShaderChunkLoader } from "./ShaderChunkLoader"; -@resourceLoader(AssetType.Shader, ["gs", "gsl"]) +@resourceLoader(AssetType.Shader, ["shader"]) class ShaderLoader extends Loader { private static _builtinRegex = /^\s*\/\/\s*@builtin\s+(\w+)/; diff --git a/packages/shader/src/global.d.ts b/packages/shader/src/global.d.ts index d0abf1234..8ce5f3375 100644 --- a/packages/shader/src/global.d.ts +++ b/packages/shader/src/global.d.ts @@ -3,7 +3,7 @@ declare module "*.glsl" { export default value; } -declare module "*.gs" { +declare module "*.shader" { const value: string; export default value; } diff --git a/packages/shader/src/shaders/PBR.gs b/packages/shader/src/shaders/PBR.shader similarity index 100% rename from packages/shader/src/shaders/PBR.gs rename to packages/shader/src/shaders/PBR.shader diff --git a/packages/shader/src/shaders/index.ts b/packages/shader/src/shaders/index.ts index de23d2e39..3a0430c97 100644 --- a/packages/shader/src/shaders/index.ts +++ b/packages/shader/src/shaders/index.ts @@ -3,7 +3,7 @@ import Common from "./Common.glsl"; import Fog from "./Fog.glsl"; import Light from "./Light.glsl"; import Normal from "./Normal.glsl"; -import PBRSource from "./PBR.gs"; +import PBRSource from "./PBR.shader"; import Shadow from "./Shadow.glsl"; import ShadowSampleTent from "./ShadowSampleTent.glsl"; import Skin from "./Skin.glsl"; diff --git a/packages/ui/src/shader/global.d.ts b/packages/ui/src/shader/global.d.ts index d0abf1234..8ce5f3375 100644 --- a/packages/ui/src/shader/global.d.ts +++ b/packages/ui/src/shader/global.d.ts @@ -3,7 +3,7 @@ declare module "*.glsl" { export default value; } -declare module "*.gs" { +declare module "*.shader" { const value: string; export default value; } diff --git a/rollup-plugin-glsl.js b/rollup-plugin-glsl.js index cc545c623..3a48c3efc 100644 --- a/rollup-plugin-glsl.js +++ b/rollup-plugin-glsl.js @@ -35,7 +35,7 @@ function compressShader(code) { export default function glsl(userOptions = {}) { const options = Object.assign( { - include: ["**/*.vs", "**/*.fs", "**/*.vert", "**/*.frag", "**/*.glsl"] + include: ["**/*.vs", "**/*.fs", "**/*.vert", "**/*.frag", "**/*.glsl", "**/*.shader"] }, userOptions ); diff --git a/rollup.config.js b/rollup.config.js index b72def7cb..dd57ae8a1 100644 --- a/rollup.config.js +++ b/rollup.config.js @@ -32,7 +32,7 @@ const extensions = [".js", ".jsx", ".ts", ".tsx"]; const mainFields = NODE_ENV === "development" ? ["debug", "module", "main"] : undefined; const glslPlugin = glsl({ - include: [/\.(glsl|gs)$/], + include: [/\.(glsl|shader)$/], compress: false }); @@ -90,7 +90,7 @@ function config({ location, pkgJson, verboseMode }) { glslifyPluginIdx, 1, glsl({ - include: [/\.(glsl|gs)$/], + include: [/\.(glsl|shader)$/], compress: true }) ); @@ -157,7 +157,7 @@ function config({ location, pkgJson, verboseMode }) { glslifyPluginIdx, 1, glsl({ - include: [/\.(glsl|gs)$/], + include: [/\.(glsl|shader)$/], compress: true }) ); diff --git a/tests/src/shader-lab/shaders/mrt-struct.shader b/tests/src/shader-lab/shaders/mrt-struct.shader index f29056199..85a47193c 100644 --- a/tests/src/shader-lab/shaders/mrt-struct.shader +++ b/tests/src/shader-lab/shaders/mrt-struct.shader @@ -1,4 +1,4 @@ -Shader "/mrt-test.gs" { +Shader "/mrt-test.shader" { SubShader "Default" {