What’s New in Galacean Engine 1.2? Explore the Latest 2D/3D Features, Editor, and ShaderLab
The Galacean Engine 1.2 milestone introduces a suite of enhancements—including scene asset management, multi‑scene rendering, KTX2 texture compression, a GPU particle renderer, the new ShaderLab language, and a revamped editor panel system—aimed at boosting 2D/3D interactive project development efficiency.
Galacean has released a major milestone that adds numerous engine features and a companion web editor, improving the development experience for 2D and 3D interactive projects. The editor is available for internal testing at galacean.antgroup.com.
Key Updates
Scene: New asset files, multi‑scene rendering, and environment‑light baking.
Texture: Support for KTX2 GPU texture compression and a dynamic mode that boosts video playback performance.
Effects: GPU particle renderer added to close the effects gap.
Shader: Introduction of the ShaderLab language for easier custom shader authoring.
Editor: Panel management feature for a cleaner, more flexible UI layout.
Scene Enhancements
New Scene Assets
Users can create, delete, and export scene assets just like other assets, enabling multiple scenes to share assets within a single project and improving editing efficiency.
Environment Light Baking
The baking workflow has been redesigned: the editor now bakes lighting based on the scene and includes built‑in atmospheric scattering as background and ambient light. Users can select skybox, atmospheric scattering, solid color, or HDR texture as the source, and adjust rotation, exposure, and resolution.
Multi‑Scene Rendering
The
SceneManagernow supports simultaneous rendering of multiple scenes via
addSceneand
removeScene. The
scenesproperty holds the current render queue, and physics can be controlled per scene through the
physicsproperty.
Texture Improvements
KTX2 Compression
KTX2 compression (glTF KHR_texture_basisu) reduces texture memory usage by about 80%. Enabling the KTX2 option in the editor’s build settings activates it.
Dynamic Mode for Video
Dynamic mode improves performance for frequently changing textures, such as video playback, offering up to a 5× FPS increase on some devices.
Particle System
The GPU particle renderer has been rewritten, adding more initialization parameters and lifecycle controls, making it more artist‑friendly.
The editor does not yet support particle editing; this will arrive in a future minor version after 1.1.
ShaderLab Language
ShaderLab allows developers to define vertex and fragment shaders, rendering pipelines, and render states within a single file, simplifying custom shader creation.
A VSCode extension for ShaderLab with syntax highlighting and linting is under development.
ShaderLab syntax example:
<code>Shader "ShaderName" {
// uniform declarations
mat4 renderer_ModelMat;
...
SubShader "SubShaderName" {
Pass "PassName" {
BlendState blendState {
SourceColorBlendFactor = BlendFactor.SourceAlpha;
...
}
BlendState = blendState;
RenderQueueType = RenderQueueType.Transparent;
VertexShader = vert;
FragmentShader = frag;
v2f vert(a2v input) { ... }
void frag(v2f input) { ... }
}
}
}
</code>Editor Panel Management
The new panel manager lets users drag, resize, and rearrange editor panels (node tree, asset, inspector) to suit their workflow.
Script Parameter Configuration
Script parameters can now be exposed in the editor UI, allowing non‑programmers to tweak properties at runtime without modifying code.
<code>import { Script } from '@galacean/engine';
import { inspectProperty } from "@galacean/editor-decorators";
export default class extends Coin {
@inspectProperty('Number', { value: 1, min: 0, max: 10, dragStep: 1 })
private rotate = 1;
onUpdate(deltaTime: number) {
this.entity.transform.rotate(0, this.rotate, 0);
}
}
</code>Camera Depth Texture
The camera now provides a depth texture accessible via the
camera_DepthTextureshader variable, enabling soft particles, water edge transitions, and simple post‑processing effects.
glTF Parallel Parsing
The glTF loading pipeline has been refactored to parse resources in parallel, dramatically reducing load times. Extension registration now uses a decorator:
registerGLTFParse(GLTFParserType.*** ).
Sprite Frame Animation
Animation curves now support reference types, allowing assets such as sprites or materials to be key‑framed for frame‑by‑frame animation.
Mesh Low‑Level Creation
ModelMesh now supports low‑level data creation via
setVertexElementsand
setVertexBufferBinding, offering greater flexibility and performance.
SkinnedMeshRenderer Bones
The
SkinnedMeshRendererexposes its
Bonesproperty for custom bone manipulation, and the previous
rootBoneinitialization issue has been fixed.
Other Small Updates
Asset panel supports batch drag‑and‑drop.
View module allows clicking icons to select entities and adds 2D element selection boxes.
glTF mesh generation now includes tangents.
Option to remove built‑in punctual lights from glTF models.
Camera shader variables
camera_Forwardand
camera_Upadded.
Component deep‑clone decorator
deepClonesupports recursive cloning.
Math library now includes a
Randpseudo‑random generator.
GraphicsResourcegains an
isContentLostflag.
ResourceManageradds
findResourcesByTypemethod.
Example Updates
Case
Thumbnail
Case
Thumbnail
Multi‑Scene
Video Benchmark
Particle – Fire
Particle – Dream
ShaderLab
Camera Depth Texture
CPU Selection
GPU Selection
Sprite Animation
Preview
The upcoming 1.2 milestone will open the editor to public beta and launch the XR system.
Contact
Galacean open‑source community groups are available on DingTalk (ID: 31065609) and WeChat (contact: zengxinxin2010, note "galacean 加群").
Official links: galacean.antgroup.com , Engine source: github.com/galacean/engine , Toolkit source: github.com/galacean/engine-toolkit .
Alipay Experience Technology
Exploring ultimate user experience and best engineering practices
How this landed with the community
Was this worth your time?
0 Comments
Thoughtful readers leave field notes, pushback, and hard-won operational detail here.