public void texImage2D( int target, int level, int internalformat, int format, int type, HTMLVideoElement video) { throw new NotImplementedException(); }
public void texSubImage2D( int target, int level, double xoffset, double yoffset, int format, int type, HTMLVideoElement video) { throw new NotImplementedException(); }
/// <summary> /// </summary> /// <param name="name"> /// </param> /// <param name="urls"> /// </param> /// <param name="size"> /// </param> /// <param name="scene"> /// </param> /// <param name="generateMipMaps"> /// </param> /// <param name="invertY"> /// </param> /// <param name="samplingMode"> /// </param> public VideoTexture( string name, Array <string> urls, Size size, Scene scene, bool generateMipMaps, bool invertY, int samplingMode = TRILINEAR_SAMPLINGMODE) : base(null, scene, !generateMipMaps, invertY) { this.name = name; this.wrapU = WRAP_ADDRESSMODE; this.wrapV = WRAP_ADDRESSMODE; var requiredWidth = size.width; var requiredHeight = size.height; this._texture = scene.getEngine().createDynamicTexture(requiredWidth, requiredHeight, generateMipMaps, samplingMode); var textureSize = this.getSize(); this.video = (HTMLVideoElement)Engine.document.createElement("video"); this.video.width = textureSize.width; this.video.height = textureSize.height; this.video.autoplay = false; this.video.loop = true; this.video.addEventListener( "canplaythrough", (e) => { if (this._texture != null) { this._texture.isReady = true; } }); foreach (var url in urls) { var source = (HTMLSourceElement)Engine.document.createElement("source"); source.src = url; this.video.appendChild(source); } this._lastUpdate = new Date().getTime(); }
public extern VideoBaseTexture(HTMLVideoElement source, ScaleMode scaleMode = ScaleMode.Default);
public static extern VideoBaseTexture FromVideo(HTMLVideoElement video, ScaleMode scaleMode);
/// <summary> /// Helper function that creates a new Texture based on the given video element. /// </summary> public static extern Texture FromVideo(HTMLVideoElement video, ScaleMode scaleMode = ScaleMode.Default);