Game Development 8 min read

What’s New in Oasis Engine v0.7? Explore the Latest Graphics, Physics, and Animation Features

Version 0.7 of the open‑source Oasis Engine introduces a suite of enhancements—including a new text renderer, ClearCoat PBR material, dynamic PhysX colliders, expanded BlendShape support, HDR skybox loading, keyboard interaction, and API refinements—plus comprehensive documentation and example updates for developers.

Alipay Experience Technology
Alipay Experience Technology
Alipay Experience Technology
What’s New in Oasis Engine v0.7? Explore the Latest Graphics, Physics, and Animation Features

Graphics Updates

Added a text renderer that supports system fonts, size, color, bold, italic, multi‑line and alignment. The renderer can also use custom shaders for effects such as KTV subtitles.

Improved PBR material with ClearCoat layer; set via

material.clearCoat = 1.0;

and additional textures for roughness, normal, etc.

Added highlight anti‑aliasing to reduce sharp specular edges at low roughness.

Added AO map UV channel switching; set

material.occlusionTextureCoord = TextureCoordinate.UV1;
material.occlusionTextureCoord = TextureCoordinate.UV1;

HDR Loader

New HDR loader allows loading HDR textures directly as skybox backgrounds.

engine.resourceManager.load<TextureCube>({
  type: AssetType.HDR,
  url: "***.hdr"
}).then((texture) => {
  skyMaterial.textureCubeMap = texture;
  skyMaterial.textureDecodeRGBM = true;
});

Texture2DArray

Introduced Texture2DArray for data textures without consuming multiple GPU texture units.

RenderTarget Optimization

RenderTarget now uses generic

Texture

for color and depth textures, simplifying extensions.

Physics Updates

Integrated dynamic colliders powered by PhysX.js, with fixed‑time simulation steps and a new

onPhysicsUpdate

script hook.

import { WebGLEngine } from "oasis-engine";
import { PhysXPhysics } from "@oasis-engine/physics-physx";

const engine = new WebGLEngine("canvas");
PhysXPhysics.initialize().then(() => {
  engine.physicsManager.initialize(PhysXPhysics);
  engine.run();
});

Interaction Updates

Added keyboard interaction APIs; example: Flappy Bird can be played with the space key.

class KeyScript extends Script {
  onUpdate() {
    const { inputManager } = this.engine;
    if (inputManager.isKeyDown(Keys.Space)) {
      // space key pressed this frame
    }
  }
}

Animation Updates

BlendShape animation count increased, now unlimited via float‑texture implementation. Added animation reverse playback via

animator.speed = -1;
animator.speed = -1;

Transform API Improvements

Single‑axis components can be modified directly, e.g.,

transform.position.y += 0.1;
transform.position.y += 0.1;

Documentation and Examples

Documentation reorganized by feature modules; new examples include text KTV effect, ClearCoat, HDR loader, physics attractor, compound, and select.

Graphics: text renderer, ClearCoat, HDR loader

Physics: PhysX attractor, compound, select

Roadmap

Upcoming v0.8 will add character controllers, physics constraints, continued text renderer optimization, and new effect features.

animationgraphicsGame DevelopmentWebGLphysicsOasis enginev0.7
Alipay Experience Technology
Written by

Alipay Experience Technology

Exploring ultimate user experience and best engineering practices

0 followers
Reader feedback

How this landed with the community

login Sign in to like

Rate this article

Was this worth your time?

Sign in to rate
Discussion

0 Comments

Thoughtful readers leave field notes, pushback, and hard-won operational detail here.