Js-visg-m-s Manual -
scene.use(new LoggingModule()); This module accepts JSON streams over WebSocket:
| Property | Type | Default | Description | |----------|------|---------|-------------| | renderer | string | 'webgl' | 'webgl' , 'webgpu' , 'canvas2d' | | antialias | boolean | true | Enable MSAA | | pixelRatio | number | window.devicePixelRatio | For retina displays | | fpsLimit | number | 60 | Throttle render frames | | modules | array | [] | List of module names to load | | shaders | object | {} | Custom vertex/fragment shaders | const config = renderer: 'webgpu', antialias: false, fpsLimit: 30, modules: ['TooltipModule', 'DataStreamModule'], shaders: vertex: 'custom.vert', fragment: 'custom.frag' ; const app = new JSVisgMS.Application(config); Chapter 5: Working with Modules Modules are the "M" in JS-VISG-M-S and dramatically extend functionality. 5.1 Loading a Module import TimelineModule from 'js-visg-m-s/modules/timeline'; scene.registerModule(TimelineModule, position: 'bottom' ); 5.2 Creating Your Own Module class LoggingModule extends JSVisgMS.BaseModule onRender(glContext) console.log('Frame rendered at', performance.now()); js-visg-m-s manual
Now go build something visual and extraordinary. Last updated: October 2025. This manual is community-maintained and not affiliated with the core JS-VISG-M-S team. For corrections, please submit a pull request on GitHub. This manual is community-maintained and not affiliated with
gravbiz@mail.ru 
