Update 2015/10: Chromium Embedded Framework (CEF) is replacing Webkit, the engine MOAP uses. Media should now be HTML5 compatible. Avoid Flash & QuickTime. Click the CEF Tag below this article for more information.
I’m just learning, so this is not the most complete tutorial on Media On A Prim (MOAP). This is what I have learned in my first few steps. Hopefully it will save you a few gotcha’s. Also, this is not a newbie’s tutorial. I’m assuming you know basic building. But, even if you are new, you should be able to stumble through this tutorial without much trouble.
First, prepare for lots of crashes and temporary freezes. This is new and buggy technology. That’s why they call it a BETA level viewer. A sure way to crash the 2.0 viewer is to cam on a MOAPrim and swing the camera around it and zoom in and out a couple of times. At best it will take you down to 0.3 fps. So, while working on setting up a MOAPrim avoid moving the camera any more than necessary. This happens less with simple web pages than with those with Flash content.
Remembering this is beta… still this is amazing tech. I keep finding little wow’s here and there.
Think of adding media as adding a texture. The media one puts on a prim is generally an Internet resource of some kind. You need a URL in place of a texture. The easy and fun thing to play with is a web page. I picked a page from my Myst-Uru fan site for one test.
It is possible for residents to turn off any media. When they do that, the regular prim texture shows. So, have a texture you want to show in that situation. I made one that says use viewer 2.0 to see this media.
You can place media on all the faces of a prim or just one. I think putting media on just one face reduces the crash rate… So, that is what I’ll do here.
- Open the Build Dialog, press Ctrl-B or if you are using an existing prim right-click and select Edit.
- Size your prim. IMPORTANT. Sizing after applying the media tends to cause freezes and crashes. (read below about using a Flash Media page for more on sizing).
- Texture the whole prim, or not. Apply a base texture that will appear on all the faces. At this point there has been nothing new (not in 1.23 viewers) in the building and texturing process.
- Notice at the bottom of the Texture Dialog under the label MEDIA are the new settings used to create MOAPrim. (See Image).
- Now select a single face for your media. In the build menu (see image), near the top, click the Select Face option then click the face on the prim. If your media options were grayed out, they will now come to life.
- If you have a special texture for when the media is turned off, apply it to this face now. Use the texture controls as you would for any texture. Avoid sizing the texture. The media sizing controls will override any changes you make now.
- To apply the media look down to the bottom right of the dialog. You will see the little gear and arrow. Click it to open the Media Dialog.
- Now type in your web page’s URL or paste. In a few seconds you will see the page in the preview window. With Auto Play Media and Auto Scale Media checked the web page will cover the face of the prim.
- If all you want to do is show a web page, you are done. Exit the dialogs and enjoy.
Sizing Things… Flash Animation
Warning: Flash caused more crashes than the web page did.
I wanted to use a Flash animation I have for a Myst-Uru fan group. The animation is 650×410 pixels. It’s in the page here. (If your playing MOULagain this page is a spoiler). I wanted to show just the Flash animation. There is no plug-in for the MOAP feature to use Flash directly, yet. So, one cannot just use a URL to the SWF file. I created a web page with the standard embed HTML tags built into the page. (See the URL in the images) I linked to the new web page to show the Flash animation.
When I first used the page I immediately ran into to sizing problems. I decided to make a web page with just the Flash animation on it. The 650×410 SWF file was difficult to place correctly on the prim when it did not fill the web page. Mostly because I did not understand how all the controls work together. The way to make positioning easier is to set the animation in the web page to display at 100%x100%.
Now I needed to get it on the prim and looking right. Rather than a step by step here I’m writing a more of these are the considerations section.
If you turn off Auto Scale and use size controls, you will find the size values are X and Y and measure from the lower left corner of the prim face (provided you haven’t rotated it). The help menu (upper right ‘?’) says the values are pixels… right… Whatever the numbers mean they give you some control. By selecting and deselecting Stretch Textures in the top of the regular Texture Dialog you can work with all these settings to make things look as you like.
WARNING: Re-sizing once the media is active tends to cause crashes and freezes. I keep the Statistics monitor open so I can see what is happening. (Ctrl-Shift-1) Give things 30 or 40 seconds to unfreeze.
If you shrink the media so it does NOT cover the full face of the prim, well the texture you applied above, for when residents turn off the media, does not show through. Bummer. That would have really helped. What you see is white space, or what ever color the face is set to. Also, the color affects the media just as a color would affect any texture.
All of the basic texture controls work, which is important and frustrating starting out… well… was for me. Knowing the size the Flash file displays at helps. But on the web page, make the size 100%x100%. That will save several head aches.
Before applying the media, size your prim to the correct proportions. Knowing the Flash display size lets you get this right… well optimum. In my case my Flash is 650×410 pixels on the web page. This makes for a 1.583mx1m prim face – 650/410=1.583. Regardless of what size you want, set the prim face to the (?)x1m size you calculate for your media. Then use the prim Stretch controls’ white corner handles to size the prim face to the size you want, which lets you retain the proportions.
Apply the media then set the size in the Media Dialog to that of the Flash media, turning off Auto Scale. Don’t panic if it doesn’t look right. Click the Apply button (Texture Dialog) to see changes. There is usually a small delay.
You can use controls in both dialog panels, the regular Texture Dialog and the Media Dialog, at the same time, very handy. Keep them both open. Click the Align button in the Texture Dialog. This will align the media to the prim.
Be sure you have Stretch Texture unchecked in the Texture Dialog. Size you prim face using the Stretch controls, if needed. Working with Align and sizing the prim you should be able to get the prim to look right and remove any white space or trims.
You may have noticed there are three tabs in the Media Dialog. The middle one is Customize. This panel lets you set who can use the media and interact with it.
It also lets you set the control bar that appears over the prim. Select Standard to see a control bar with an address window (URL). Select Mini to have one without the address window.
Regardless of how you rotate the prim this control bar will appear above the prim.
The third tab on the media Dialog is Security. This control allows you limit which page, pages, or web sites the prim can display. To limit display to a web site use: http://www.domainName.com/*.* The yellow part being a wildcard.
The wildcard ‘*.*’ lets you limit the user to a single web site.
The wildcard ‘/*/*.*’ or ‘/*’ lets one move through the entire site.
A full page address, as seen in the images, limits the prim to a single web page.
I’m sure MOAP can be used in ways I have not thought of.
An interesting part… What happens when someone makes products using this tech, dependent on a web page, sells them, and then later the web site goes down? The product will of course stop working. I suspect buyers won’t think of that problem until they have been burnt a few times.
If you have seen novel uses, have great ideas, or know of related uses, post a comment…