Viper

Description

Viper is a Java-based VRML parser and scene graph generator that provides both syntax and semantic level checking as per the VRML '97 specification. Please see below for a list of what's supported , what's not supported and known bugs.
 

Viper On-line

Test your VRML97 world (.wrl)  file for conformance to the VRML '97 Specification using our server-based version of the Viper parser.
 

Installation

See the Installation and Download Area

Note that the implementation relies on two files: "stdNodes.wrl" and "constraints.wrl". If either of these are incorrect, checks will not be performed correctly.

Also note that the release includes the subdirectory "vrml". We've included here a partial implementation of the java classes defined in Annex B of the Vrml spec. What we didn't need, we didn't implement. In theory you should be able to replace this set of classes with your own vrml classes. This has not been tried, so your mileage may vary.

What's Supported

What's not Supported

Known Bugs

Note:The only known bug in viper that requires fixing is its excesive memory consumption in processing some large files. In some cases the solution described below for processing large SFImages may work, in other cases it may not. Large SFImages require a lot of memory to process. An image with 64K pixels requires roughly 8 MBytes to process. To process a file that includes more than one such image will probably require using the java -mx option when running the parser.

     
    For example:
    java -mx24m Parser -f file.wrl
    may be necessary to process a vrml file with two 64K images.
     

For more information on Viper, contact   michael.kass@nist.gov