Building home spaces is similar to sculpture work when you take a piece of material and cut off all unnecessary parts. There are only two buttons on the BUILDER TOOLBAR that allow you create shapes. One is ADD 3D BOX MODE, another is REMOVE 3D BOX MODE. When ADDING a box, you create a solid box. Then, switch to REMOVE 3D BOX (adjust the height setting with the HEIGHT SCALE if you want a roof, floor, table or whatever), then cut your inner walls. Then, still using REMOVE 3D BOX, you can cut doors, windows and so on. There is an icon that looks like a round push-pin. This is your point of view, which the program refers to as Pinocchio. You can drag Pinocchio around by his nose to look around, or you can use the cursor keys or on-screen controls to move or change camera views.
Although the program does not allow you to make curved surfaces or sculpt complex shapes, there is a tool hidden in a drop-down menu that can be some help in creating non-rectangular surfaces. It is called DrawFace and is in the Plane Builder window’s drop-down menu.
In the current version, you can attach text and/or HTML/VRML link (URL) to a picture or an album. Click on the picture and press the Picture Attach Editor icon on the upper Menu bar. To attach text, type it in the upper left area (the text can have multiple strings). To attach an URL, press the arrow in the Function submenu, select the Show Universal Resource Locator item and fill out the Type In Or Paste URL window.
When you drag the mouse cursor over a picture, you see the first string of the attached text in the Info bar under the VIEWER window. Otherwise, you can point the cursor on a picture and click the Right Mouse button to see the whole text in a separate window. When a URL is attached to the picture, the arrow-like cursor turns into a pointing finger when located over the picture. In order to view the attached URL, click on the picture and then press the Picture Attach Editor icon. In the Picture Attach Editor window, the URL appears in the Parameters row, and the attached text can be viewed in the upper right area.
Home Space Builder 1.0 is neither a VRML nor a HTML browser, but it can communicate with Netscape. When you double click on a picture with the attached URL (there is a "finger cursor" indicating that the picture has an attached URL), this URL is transferred to Netscape 1.1. If the URL is correct, Netscape will load the resource. Remember: Netscape must be open when you attempt to link to a URL. The company says it does not guarantee proper communication with any other HTML browser.
The program outputs .WRL files that can be loaded by any VRML browser compliant with the VRML 1.0 final SPEC. ParaGraph released a free upgrade to VHSB that saves files in VRML 1.0 or VRML 2.0 format. A number of other conversion utilities are other available for converting VRML 1.0 files into VRML 2.0 files, such as those included with SGI’s Cosmo Player (http://cosmo.sgi.com) and Sony’s CyberPassage viewers.
Q: What is GZIP?
A: Gzip is a utility that compresses files. Several popular VRML viewers include a copy of Gzip – chances are you already have a copy on your system (do a Find operation and look for “gzip”). If you don’t find it, it’s on the CD. It’s also available from many locations on the net, as it is part of the GNU suite of freeware tools. Gzip is not the same as the “ZIP” format that PC users are familiar with, although some tools, sich as WinZip, can also handle Gzipped files. Files that contain a lot of redundancies, such as text files and VRML models, can sometimes be compressed more than 500 percent, greatly reducing download times. Not all VRML viewers can handle Gzipped models. However, those that can -- Live3D, WebFX and Microsoft Virtual Explorer users, for example -- will enjoy greatly reduced download times!
Compress your VRML models with GZIP. Compressed models are much smaller, and hence download and display faster.
Here are comparisons of compressed vs. decompressed models from our 3D collection
It is easy to compress a VRML model with GZIP. Here’s how to do it in Windows 95 or NT 4.0 (other platforms may differ, depending on whether their version of GZIP supports drag-and-drop).
If you wish to Un-Gzip a model, the easiest way is to install Nico Mak Computing’s shareware WinZip. It will recognize any file that ends in “.GZ” as a Gzipped file and allow you to simply drag a copy of its contents as an uncompressed file onto your desktop for editing, etc.
Your Web browser (which has a VRML plug-in correctly installed) shows the VRML source (i.e., text) instead of a 3D model. Mysteriously, this only happens when a the files are hosted on a web server. Everything works normally when you view the .wrl directly.
The solution: adding MIME types to your server
There are several types of multimedia files in common use that require special configuration of the web server they are hosted on.
A few examples include:
VRML files (.wrl)
RealVR files (.ivr)
ShockWave files (.dct)
RealAudio files (.ra)
TrueSpeech files (.tsi)
etc.
Because the full description takes a bit of telling, here’s the executive summary:
For the above files, and certain others, to be interpreted and displayed correctly when users access them via a web server, you must add the MIME type, MIME subtype and, in some cases, appropriate extensions to your web server’s list of MIME types in the form
type/subtype ext
For the VRML and RealVR examples above, the codes are:
vrml/x-world wrl
i-vrml/i-world wrl
The readme files of other programs will typically tell you how to configure whatever MIME types they need. A list of MIME types can be found on any kind of Web Server, whether it is Mac-, PC- or Unix-based. The most common name of the file is MIME.TYP; check your server’s documentation if you can’t locate it. Note that all web servers come with a substantial list of standard MIME types already configured; the ability to add to this list simply allows the web to accommodate new types of media as they come along.
Fortunately, the list is easy to add to, as it is simply a plain text file that may be loaded into any text editor, edited and re-saved.
Here’s how to do it using FrontPage. To add a new type of file so that FrontPage will serve its files, open the file c:\FrontPage Webs\Server\Conf\mime.typ
with your favorite text editor (say, Notepad) and add the MIME type and subtype information as shown in the examples above, or in your application’s readme file.
Many other servers are similar in their behavior. FrontPage’s “Personal Web Server” is based on a public domain server called HTTPD, so, as you can imagine, it has lots of relatives. If you are not successful at tracking down the MIME.TYP file on your server’s hard disk, look up MIME types in the Web server’s documentation and find out what the file they are stored in is called, and in which directory it is located.
Note that most servers (especially Unix-based systems) require you to have administrator status in order to gain permission to change files. If you can’t seem to make changes to files or access certain directories, this is a likely reason. Ask your sysadmin for help.
Things get a bit more complicated, of course, if the Web server is in the hands of your Internet service provider. The information still has to be entered in a text file similar to the one described in the above example, it’s just that you can’t do it yourself. In this case, you’ll have to fax (Print clearly!) or e-mail them and give them the type, subtype and extension information required by your multimedia-enhanced web pages. They will know the name and location of their MIME types file and add the new information for you. Unix-based service providers I have spoken to tell me they prefer the information in the following form:
AddType x-world/x-vrml wrl
as this is the command syntax they use. I usually add a brief description as well, as follows:
Please configure MIME type and subtype on the server.
MIME type: x-world
MIME subtype: x-vrml
Extension: wrl
Presumably, it is a simple cut-and-paste job if you send the information by e-mail. This fact notwithstanding, you shouldn’t expect MIME types to be added instantly. New additions may have to wait until your ISP’s scheduled maintenence time rolls around.
Chances are good that other people are also asking them to add the same feature, so most providers are quick to add new MIME types to keep users happy and reduce the number of tech support calls.
However, some Internet Service providers do not allow the addition of new MIME types. If the standard amount of pleading does not change their mind, you’ll have to change service providers, or give up this media type.
Here’s a more detailed explanation of why – and when -- these settings are required, and how they work.
The situation manifests like this: when you open the files directly from your own hard disk, they work fine, but when you upload the files to your Web site and subsequently attempt to access them, they don’t work right. Typically, in the case of a file type that relies on a plug-in such as VRML or RealVR, you see instead, a message advising you that a plug-in for files of the type “text/plain” cannot be found. Or, you may see the file displayed in your web browser as plain text, instead of a 3-D model, or whatever type of file it is supposed to be.
In other words, you can't simply upload a VRML file to your server (or embed it in a Web page using the EMBED tag), and expect it to work, despite the fact that it worked fine when you tested the file on your own system’s hard disk. Even more mysteriously, the files that don’t work on your server work like a champ as soon as you download them to your drive again.
Macintosh users, somewhat better than PC users, might have an inkling of what’s going on, although the Mac’s method of associating files is not by any means identical to that used by a Web server, there are a few similarities. The Mac, you see, has a method whereby the system software keeps track of the filetypes and host applications of all files. For example, a word processor might create a file of the type “TEXT”; the word processor that created the file would thus be the “creator”. In the case of standard Mac applications, this is accomplished by having two “forks” to every file: a data fork and a resource fork. It is the Mac’s resource fork (which happens to be visible only with special resource-editing tools, by the way) that contains codes that tell the file which application it belongs to, and what type of file it is. Usually, that is. When it comes to Web browsers, the Mac behaves remarkably like a PC, for reasons I’ll discuss more in a moment.
DOS and Windows users, of course, don’t have a resource fork in their files, invisible or otherwise. With data files on a PC, what you see is all you get. DOS and Windows rely upon the filename’s three-character extension (“.wrl”, for example) and compare this extension to a master list (stored in the INI files in Windows 3.x, or in the registries of Windows 95 and NT) to determine what files belong to what application. To make a long story short, that’s why the .WRL files work on your local system. The browser knows what kind of files it can view, based on their names. You can, of course, add new types to this list, by editing the Helper Apps list, or via various plug-ins. Both of these topics will be discussed later, but let’s not stray from the topic at hand....
Because web browsers are meant to load graphics and HTML text files that might have been created on virtually any type of computer, a Mac cannot rely on a resource fork being present and, thus, Mac-based web browsers load files based on their extension (“.JPG”, “.GIF” “HTML” and so on), much like a PC. Now, it is true that the majority of filetypes don’t need your (or your ISP’s) intervention; most files you will encounter on the web are already in the standard list of MIME types.
Certain types of files, however, must be specially interpreted. Remember that it’s not a DOS-based world out there on the web, and there are good reasons why the Web doesn’t assign filetypes based on filenames alone. For one thing, there are a number of “traditional” Unix MIME types that don’t require any particular filename extension at all. How would the systems know what a “multipart/mixed” type of file was, for example? Thus, the designers of MIME came up with a system that sent “handling” information along with a file, so that a Mac file (MIME type “application/mac-binhex40”) can have any name, as Mac files might indeed have. When MIME handles the transmission, the file is sent, identified as a Mac file, decoded on the receiving platform and, as they say, Bob’s your uncle.
The Internet started off as a largely Unix-based network, and this is why we have the Unix-style “forward-slash” directory conventions, case-sensitive file-names, and other Unix-isms. Indeed, things are quite different than the worlds of Macs or PCs.
As we shall see later in this module, VRML files and HTML files are, in fact, both comprised of plain text, as are many other types of Internet files. How does the browser know to interpret one text file as a 3-D world, and the next one as styled HTML text and the third one as an e-mail enclosure or whatever? The answer is: by their MIME type.
MIME, which stands for Multipurpose Internet Mail Extension, is a method by which a file is transmitted with a type, a so-called subtype and one or more filename extensions.
An MPEG movie, for example, has the MIME type video/mpeg mpeg mpg mpe
By the way, those MIME types preceded by an “x” (x-vrml/x-world) are not official standard types, according to Those Who Ought To Know. Now there’s more to MIME than that, of course, but it has been discussed at length elsewhere, and the upshot is this: sooner or later, a multimedia format is going to come along that your server is not going to be able to handle, and you are going to have to add one or more entries to the MIME.TYP file, as it is typically called.
Certain Internet protocols take advantage of MIME to send files in unique ways. RealAudio files, for example, are known as streaming audio files. They begin to play within a few seconds of clicking on the link to the file. RealAudio handles this via special server software that does not use the standard HTTP protocol. Without getting too technical here, suffice it to say that the usual Hypertext Transfer Protocol that Web servers employ to send Web pages to your browser is known as a “stateless” protocol. There are some occasions, usually relating to high-performance streaming multimedia, where this is not the optimum method of transmitting data. Thus, the reliance on special MIME types.
See appendix 3 for a list of common MIME types. At the bottom of the list are a dozen or so filetypes that are probably not pre-configured on most web servers.
Problem: You’ve created a VRML model and saved it (say, using a free modeling program such as Breeze Designer for Windows). But now, when you load it into your web browser, the model is partly or completely off the screen. (In the hypothetical example below, let’s say the model is mostly off-screen in the lower-right corner.) How do you fix this?
Solution:
#VRML V1.0 ascii
# Scene Created by the Breeze Designer 2.0
# Written by Neville Richards
Separator {
PerspectiveCamera {
position -8.13333 10.1286 24.3667
“Position” is the setting we have to adjust.
The first number is the left/right offset. A number close to zero centers the image; a positive number moves it to the left, a negative number moves it to the right. Thus, we change the -8 to a 2, and our model is closer to center.
The second number is the up/down control. By using a low number, we bring the model up to the center of our display.
The third number controls how close or far away the model appears. A smaller number will make the model fill more of the display.
Separator {
PerspectiveCamera {
position 2.5 2 20
That’s it!
Animated VRML
How can you animate a VRML 1.0 scene?
It can't be done – legally. Animation is not a feature of VRML 1.0c, but various “extensions to the VRML 1.0 spec, such as those in Netscape’s Live3D, allow a variety of animation features. VRML 2.0 supports animation, though. The free VRML tools at www.paragraph.com are a good starting point.
Here’s a simple example that spins a cube, a cone and a sphere in Netscape Live3D:
#VRML V1.0 ascii
Separator {
Info {
string "VRML Demo by Graeme Bennett, based on a Live3D example by Netscape Corp."
}
DEF BackgroundColor Info {
string "0 0 0"
}
CollideStyle {
collide TRUE
}
DEF Cameras Switch {
whichChild 0
DEF "Start" PerspectiveCamera {
position 0 -1 7
}
} # end of views Switch
DirectionalLight {
intensity 0.9
direction 1 1 0
}
WWWAnchor{ name "../vrml-modelshop.html"
description "VRML Modelshop"
Separator{
Texture2 {
filename "red.jpg "
}
SpinGroup {
rotation 1 0 0 .01
local FALSE
SpinGroup {
rotation 1 0 1 .04
local TRUE
Translation {
translation 0.0 0.0 2.0
}
DEF Cube1 Separator {
Cube {
width 1.5
height 1.5
depth 1.5
}
}
}
}
}
WWWAnchor{ name "../index.html"
description "VRML News"
target "_parent"
Separator{
Texture2 {
filename "green.jpg"
}
SpinGroup {
rotation 1 0 0 .01
local FALSE
SpinGroup {
rotation 1 0 1 .03
local TRUE
Translation {
translation 0.0 0.0 -2.0
}
DEF Cone Separator {
Cone {
}
}
}
}
}
}
Translation {
translation 0.0 2.0 0.0
}
WWWAnchor{ name "http://TheTechnoZone.com/the3Dzone" description "The 3D Zone"
Separator{
Texture2 {
filename "blue.jpg"
}
SpinGroup {
rotation 1 0 0 .01
local FALSE
SpinGroup {
rotation 0 0 1 .02
local TRUE
DEF Sphere Separator {
Sphere {
radius 1
}
}
}
}
}
}
Translation {
translation 0.0 -4.0 0.0
}
}
}
}
Live3D has a feature that allows bitmapped filmstrips to automatically be displayed as animations.
Here's a summary of how it’s done: Create a bitmap that is 128 pixels wide by the number of 128-pixel frames high. Apply this texture to a Live3D model (for example, in place of the .JPG texture files listed in the previous example), and it will automatically animate.
Here's a more detailed description of how to make animated textures in Live3D and VHSB
DXF, as you may know, is a common file format supported by virtually every 3-D graphics program. You can convert DXF files to VRML models using Keith Rule's excellent free Windows-based VRML conversion utility WCVT2POV.EXE. It appears that the colors applied to models using this utility strictly conform to the VRML 1.0 "standard" (and that term is apparently used pretty loosely), as models colored by
WCVT2POV seem to display correctly in every browser I've tried. Rule is reportedly at work on a book on 3D file formats, and the above-mentioned site has a sample OCX (an OLE custom control for use in Visual Basic and other programming applications) for performing format conversions.
Post new comment