CyberX3D for C++ is a development package for X3D/VRML and Java programmers. Using the package, you can easily read and write the X3D/VRML files, set and get the scene graph information, draw the geometries, run the behaviors easily.
I use it for quite a long time and it works correctly. It probably has problem with huge one object vrmls (10+ MB), we could dynamically split our objects so it's not a problem anymore, but if you want to do this (processing large VRML objects) you should heavily test. Anyway, it's the easiest to integrate VRML reader I found, and it works brilliantly.
This is a great tool for VRML file format, easy and simple. The only issue I am facing with X3D support. X3DParser.cpp file => parser->parse(xmlFile); // here the execution gets stuck, dino.x3d (vertices = 2151, faces = 4300) takes 1 minute on this line (parse) in Visual Studio 2010 Release mode. I tried with xerces 3.1 and 2.3 , same results. Any solution would be appropriated. thanks.