Table of Contents Previous Chapter Summary Chapter Viewpoint Slideshow Javadoc for translated java source Next Chapter Summary X3D Resources

X3D Example Archives: Conformance Nist, Appearance, Movie Texture

 

MovieTexture applies a 2D movie image to surface geometry, or provides audio for a Sound node. First define as texture, then USE as Sound source to see it/hear it/save memory. Texture maps have a 2D coordinate system (s, t) horizontal and vertical, with (s, t) values in range [0.0, 1.0] for opposite corners of the image.

X3D Tooltips of interest: Appearance, MovieTexture, Sound.

X3D Specification sections of interest: Texturing component, 18.4.2 MovieTexture, 16.4.2 Sound.

X3D Examples Archives of related interest:

 
  34 X3D Scenes       Scene Descriptions
default_start2 default start 2 Test setting MovieTexture loop to true. By simply setting the loop field to true on a MovieTexture node, the movie should play continuously.
ElevationGrid Elevation Grid Test mapping a MovieTexture to an ElevationGrid geometry. A MovieTexture is mapped to an ElevationGrid by aligning the S axis of the MovieTexture with the X axis of the ElevationiGrid and theT axis of the MovieTextgure with the Z axis of the ElevationGrid. The bottom of the MovieTexture coincides with the first row of grid points and the top of the MovieTexture maps to the last row of grid points.
Extrusion Extrusion Test default mapping of an mpeg movie to an Extrusion. The movie is applied to an Extrusion by aligning the bottom of the VTS logo with the first cross-section at the first spint point, and the top of the VTS logo coincides with the last cross-section at the last spine point. The left side of the VTS logo is aligned with the first cross-section point of all spine points, and the right side of the VTS logo coincides with the last cross-section point for all spine points. For the ends of the extrusion, The VTS logo will map with the S (horizontal) texture axis aligning with the X axis of the cap, and the T (vertical) texture axis aligning with the Z axis of the cap.
firstframe firstframe Test loading first frame of a MovieTexture. With the movie inactive at load time, and speed a positive value (positive 1), frame 0 will be displayed. The VTS logo should appear upright, and directly facing the viewer.
IndexedFaceSet Indexed Face Set Test of browser ability to default map a MovieTexture onto an entire IndexedFaceSet geometry. The entire VTS logo texture should map once onto the surface of the IndexedFaceSet, with the S axis corresponding to the X axis of the IndexedFaceSet.
keeplastframe keeplastframe Test if the last frame loaded when the movie becomes inactive remains as the texture. The VTS logo should appear skewed, with the V appearing closest to the viewer.
lastframe lastframe Test showing last MovieTexture frame at load time. With the movie inactive at load time, and speed a negative value (negative 1), the last frame will be displayed at load time.
loopfalse loopfalse Test a loop value of false for MovieTexture. With the default loop field value set to false, a MovieTexture movie will only play once when started by clicking the now text. The VTS logo should revolve once, right to left, and stop.
loopforever loopforever Test MovieTexture looping forever. With the loop field is set to true, and the startTime (clicked by user) greater than stopTime (with a default of 0) and speed is not equal to 0 (with a default of 1), the movie will run forever, right to left, when started.
looptilstoptime looptilstoptime Test looping until stopTime. With the loop field set to true, and the startTime (clicked first) less than stopTime (clicked second), and speed is not equal to 0 (with a default of 1), the movie will continue to run, right to left, until stopTime (when you click on "stoptime=now").
mpeg1_sound mpeg 1 sound Test mpeg1 movie used as a sound source. By clicking on the "Play mpeg1 audio" text, the letters V, T and S should be heard to loop continuously from this Sound node containing an mpeg1-systems MovieTexture with audio track.
mpeg1_systems mpeg 1 systems Test mpeg1 systems file playback. The VTS logo should appear on all faces of the Box geometry, upright and centered horizontally and vertically. The VTS logo should rotate in a single loop from right to left when the user clicks on the "NOW" text. Also, an audio track with the spoken letters V, T and S should be audible when the VTS logo completes a revolution.
mpeg1_video mpeg 1 video Test mpeg1 video playback. The VTS logo should appear on all faces of the Box geometry, and rotatate nearly 360 degrees (from right to left) in a single loop when the user clicks on the -now- Text.
repeats repeats Test browser default ability to repeat a half-scale mpeg MovieTexture horizontally only to fill primitive geometry. Two side-by-side VTS logos should appear at the base of all geometry faces. The remaining portion of each face of each geometry will be vertically "smeared" with the last pixels along the top edge of the VTS logos.
repeatst repeatst Test browser default ability to repeat an mpeg MovieTexture both horitontally and vertically to fill a primitive geometry. Two vertical VTS logos should appear on the left side of all geometry faces. The remaining portion of each face of each geometry will be horizontally smeared with the last pixels along the right edge of the VTS logos.
repeatt repeatt Test browser default ability to repeat an mpeg MovieTexture vertically only to fill a primitive geometry. Two vertical VTS logos should appear on the left side of all geometry faces. The remaining portion of each face of each geometry will be horizontally smeared with the last pixels along the right edge of the VTS logos.
speed_fraction speed fraction Test fractional speed. With the speed field value greater than 0 (in this case 2), the movie will play at a speed proportional to the value of the speed field value (twice normal speed), right to left, when "now" is clicked. With a speed value of .25, the movie should play at 1/4 normal speed for one loop.
speed_fraction_reverse speed fraction reverse Test reverse fractional speed. With the speed field value greater than 0 (in this case 2), the movie will play at a speed proportional to the value of the speed field value (twice normal speed), right to left, when "now" is clicked. With a speed value of -0.25, the movie should play at 1/4 normal speed, in reverse for one loop.
speeddefault speeddefault Test default speed for a MovieTexture. With the default speed field is set to "1", the mpeg movie will play at normal speed, right to left, when "now" is clicked.
speedeq0 speedeq 0 Test speed equal to 0. With the speed field equal to 0, the movie will not play, and frame 0 will be displayed when "now" is clicked.
speedgt0 speedgt 0 Test speed greater than zero. With the speed field value greater than 0 (in this case 2), the movie will play at a speed proportional to the value of the speed field value (twice normal speed), right to left, when "now" is clicked.
speedlt0 speedlt 0 Test speed less than zero. With the speed field value less than 0 (in this case -2), the movie will play in reverse, at a speed proportional to the value of the speed field value (double speed, left to right) when "now" is clicked.
speedreverse speedreverse Test reverse speed. With the speed field value less than 0 (in this case -1), the movie will play in reverse, at a speed proportional to the value of the speed field value (normal speed, left to right) when "now" is clicked.
startgtstop startgtstop Test startTime greater than stopTime. With the loop field is set to false, and the startTime (clicked by user) is greater than stopTime (with a default of 0) and speed is not equal to 0 (with a default of 1), the movie will run once, right to left.
stopeqstartloopfalse stopeqstartloopfalse Test MovieTexture behavior when stopTime equals startTime, and loop is set to false. A stopTime and startTime of 5 (5 seconds past midnight, January 1, 1970) are assigned to a MovieTexture node. The result is: Because loop is false, the MovieTexture (a rotating VTS logo) should not play.
stopeqstartlooptrue stopeqstartlooptrue Test MovieTexture behavior when stopTime equals startTime, and loop is set to true. A stopTime and startTime of 5 (5 seconds past midnight, January 1, 1970) are assigned to a MovieTexture node. The result is: Because loop is true, the MovieTexture (a rotating VTS logo) should continuously play.
stopgtstartloopfalse stopgtstartloopfalse Test MovieTexture behavior when stopTime is greater than startTime, and loop is set to false. A stopTime of (5) and startTime of (1) (1 second past midnight, January 1, 1970) are assigned to a MovieTexture node. Because loop is false, the MovieTexture (a rotating VTS logo) should not play.
stopgtstartlooptrue stopgtstartlooptrue Test MovieTexture behavior when stopTime is greater than startTime, and loop is set to true. A stopTime of (5) and startTime of (1) (1 second past midnight, January 1, 1970) are assigned to a MovieTexture node. The result is: Despite loop being equal to true, the MovieTexture (a rotating VTS logo) should not play.
stopltstartloopfalse stopltstartloopfalse Test MovieTexture behavior when stopTime equals startTime, and loop is set to true. A stopTime and startTime of 5 (5 seconds past midnight, January 1, 1970) are assigned to a MovieTexture node. The result is: Because loop is true, the MovieTexture (a rotating VTS logo) should continuously play.
stopltstartlooptrue stopltstartlooptrue Test MovieTexture behavior when stopTime is less than startTime, and loop is set to true. A stopTime of (1) and startTime of (5) (5 seconds past midnight, January 1, 1970) are assigned to a MovieTexture node. The result is: Because loop is true, the MovieTexture (a rotating VTS logo) should continuously play.
Text Text Default map an mpeg MovieTexture to a Text geometry. The top of the text should represent a value of 1 in texture coordinates and the MovieTexture should scale uniformly in the S and T direction. The result is a red and yellow square checkerboard centered vertically, and repeating horizontally left-to-right, with the word TEXT acting as a cookie-cutter, with the lower left corner of the TEXT corresponding to the lower left corner of the first, repeating MovieTexture.
threesides threesides Test texture mapping for equal side bounding boxes along X Y and Z axes. The bounding box for this geometry is equal length on all sides. By default the mpeg MovieTexture should map the S (horizontal) axis to the X axis, and the T (vertical) axis to the Y axis. The VTS logo should map horizontally to the front and rear faces of the IndexedFaceSet. All remaining faces have the "smeared" end pixels of the front and rear textures.
twosidesbig twosidesbig Test texture mapping for equal long side bounding boxes along Y and Z axes. The bounding box for this geometry has two equal length long sides (Y and Z) and one short side (X). The mpeg movie VTS logo will be projected onto the bounding box with the S (image horizontal) axis parallel with the Y axis, the T (image vertical) axis parallel to the Z axis. The result: the VTS logo should appear "sideways" on the sides of the IndexedFaceSet, with the bottom of the logo along the Y axis. All remaining faces have the "smeared" end pixels of the front and rear textures.
twosidessmall twosidessmall Test texture mapping for equal small side bounding boxes along X and Y axes. Map an mpeg movie to an IndexedFaceSet. The bounding box for this geometry has two equal length short sides (X and Y) and one longer side (Z). The VTS logo will be projected onto the bounding box with the S axis corresponding to the long Z axis of the bounding box, and the T axis corresponding to the X axis. The result: the top and bottom of the IndexedFaceSet should have the VTS logo, with the bottom of the logo along the Z axis. All remaining faces have the "smeared" end pixels of the front and rear textures.

Online at http://www.web3d.org/x3d/content/examples/ConformanceNist/Appearance/MovieTexture

Validate XHTML 1.1

Master source-code model archive is under subversion control at
http://sourceforge.net/p/x3d/code/HEAD/tree/www.web3d.org/x3d/content/examples/ConformanceNist/Appearance/MovieTexture

The X3D Resources: Examples page and Savage Developers Guide provide more information about the production of this archive.

Table of Contents Previous Chapter Summary Chapter Viewpoint Slideshow Javadoc for translated java source Next Chapter Summary X3D Resources