@vrspace/babylonjs
Version:
vrspace.org babylonjs client
75 lines (74 loc) • 2.3 kB
TypeScript
/**
A disc that shows video stream. Until streaming starts, altText is displayed on the cylinder.
It can be extended, and new class provided to WorldManager factory.
*/
export class VideoAvatar extends Avatar {
constructor(scene: any, callback: any, customOptions: any);
callback: any;
deviceId: any;
radius: number;
altText: string;
altImage: any;
textStyle: string;
textColor: string;
backColor: string;
maxWidth: number;
maxHeight: number;
/** Should show() start video? */
autoStart: boolean;
/** Should own video avatar be attached to hud? */
autoAttach: boolean;
attached: boolean;
displaying: string;
/**
Show the avatar. Used for both own and remote avatars.
*/
show(): Promise<void>;
cameraTracker: () => void;
mesh: any;
isEnabled(): any;
/**
Display and optionally set altText.
*/
displayAltText(text: any): void;
/**
Display and optionally set altImage
@param image path to the image file
*/
displayImage(image: any): void;
/** Displays altImage if available, altText otherwise */
displayAlt(): void;
/**
Display video from given device, used for own avatar.
*/
displayVideo(deviceId: any): Promise<void>;
/**
Create and display VideoTexture from given MediaStream.
*/
displayStream(mediaStream: any): void;
/**
Rescale own avatar and attach to current camera at given position
@param position where to put the avatar, by default it goes to the top left corner
*/
attachToCamera(position: any): void;
windowResized: () => void;
/**
* @private
*/
private moveToCorner;
/** Rescale own avatar and detach from camera */
detachFromCamera(): void;
/** Called when active camera changes/avatar attaches to camera */
cameraChanged(): void;
camera: any;
getUrl(): string;
basePosition(): any;
baseMesh(): any;
/** Remote emoji event routed by WorldManager. Video avatar looks the oposite way, so this just blows the particles to the opposite direction */
emoji(client: any, direction?: number): Promise<void>;
/**
* Handles name change network event
*/
setName(name: any): void;
}
import { Avatar } from './avatar.js';