Panorama is available in all games after
Counter-Strike: Global Offensive, and is in all games.
A world-space Panorama panel in SteamVR Home.
Not to be confused with panoramic images.
Panorama is a Valve-developed UI framework. It is heavily influenced by and closely resembles modern web authoring (HTML5/CSS/JS). It enables rapid development, high quality, and high performance interfaces as well as seamless integration with game content (3D models, particles, etc.)
Panorama Types
TypeScript definitions for Dota 2 Panorama API
Installation
Check out our addon template for usage
examples.
- Get package from npm
yarn add -D @moddota/panorama-types npm install -D @moddota/panorama-types
- Modify your
tsconfig.json
{ : { : [] } }
Enums
Both type versions define aliases for alternative names, so libraries created with one version would
be compatible with a different one.
See Dota 2 Workshop Tools/Panorama for a comprehensive guide.
To communicate with the game Panorama uses the JavaScript scripting language. Scripts also enable creation of more complex UI effects and behavior than is possible with CSS style sheets alone. Scripts can either be separate .JS files or added inline in the .XML layout files. A separate Event system also allows communication between the panels within the same UI.
- Main Article
- Panels
- CSS Properties
- Panorama Debugger
- Panorama Layout
- JavaScript
- JavaScript API
- Events
- GameUI SetMouseCallback Example
- Valve Provided UI
- Localization
- Custom UI Manifest
- Custom Nettables
- Adding a Welcome Panel
- JavaScript API
- Linking Lua with JavaScript
Counter-Strike: Global Offensive- CSS Properties
- Events
- JavaScript API