Could a possible solution then be to modify the proto definition of the SharedObject (as I mentioned earlier), thus creating a custom shared object?
One could even create a special shared object that has the entire geometry defined right in the proto definition.
As far as I know, blaxxun and bitmanagement do not treat that TS TouchSensor in any special way and that sensor is masked by the presence of other sensors in the geometry hierarchy of the children field. I can think of at least one way that the SharedObject proto might be modified to fix this problem and still function exactly as the SharedObject node was intended (i.e. not customized for a particular object). For instance, it is possible (I haven't tried it) that a script node could be inserted into the proto definition in place of the TS TouchSensor. The initialize routine of the script node could then dynamically add the TS TouchSensor into the children list (i.e. appending it to the geometry provided by the user). As long as the user's own sensor was at the top level of the SharedObject childen hierarchy then both sensors could co-exist. A more complicated insertion of the TS Touchsensor into the user's geometry might also be possible, but the scripting gets more tricky. Without looking into it further I am also not certain how to bind the fields of the dynamic TouchSensor to the proto fields (i.e. to do what the "IS" keyword does).
Is any of this relevant to what you want to do?
(Just trying to add my two cents worth towards a workaround for the problem.)
I had a question about the email you sent to the members of the Knowledge Base group, but I couldn't find the discussion thread associated with the email. Do you want to add an object (with its own sensor) to the children of the SharedObject, while at the same time still have the behavior caused by the TouchSensor called TS that is in the SharedObject proto definition?
(You may reply via email if you wish, to doc_onestone@yahoo.com)
Section 4.6.7.3 of the VRML specification "ISO-IEC-14772-VRML97/part1/concepts.html#4.6.7" discusses the heirarchy of activation and suggests that the TouchSensor TS will be masked by the presence of another sensor within the children of the SharedObject (i.e. lower in the scenegraph heirarchy than TS). However, one could conceivably alter the definition of the SharedObject proto (i.e. effectively make it into a customized version of the SharedObject for the purposes of your own world) so that your own sensor and TS both work as expected. For instance, your SphereSensor could be placed into the SharedObject proto definition at the same level as TS -- then both sensors should trigger an event upon a user using a mouse over the object. Or, at least, that is what I expect would happen based on the VRML specification -- I haven't actually tried it.
Hopefully I am understanding what you are asking about and the
above statements are useful.
Labyrinths add a very interesting aspect to any landscape. If I had more space and my wife wasn't so much into flower I would probably do one myself. I have watched some interesting shows about labyrinth construction and the history of them. excellent job russ. Please keep me posted as it develops! :)
Welcome to WbanD Russ! It makes me happy to see many of the old timers to vrml returning to our ranks. You are a great addition to any group and I am glad you found your way here. :)
Well Mister Kinter,
from now we have a group about 'Deep Matrix' and 'Deep Wave'. His address is here: http://vrml-x3d.ning.com/group/deepmatrixmultiusersystem
I hope that You will give us a help to develop in all ways the subjects of this necesary group.
There, we will can talk ( if You have pleasure, ofcuorse ) about original version of 'DM', about Your version of 'DM', about 'VR Space' and about 'MindGate' ...
And ofcuorse about 'Deep Wave' ...
I have for a long time all these applications, I have also 'VNet' too, and ofcuorse 'ABNet', but this wark only with 'BS Contact' ...
:)
About Your version of 'DM' exist a few informations What it was wrote by me in a few forums. I have a kit with a http server and Your 'DM'.
ParallelGraphics starts beta-testing of Cortona3D Viewer 6.0 Beta (previously known as Cortona VRML Client) and invites participants to take part in the beta testing program. Cortona3D Viewer is a fast and highly interactive VRML viewer that is ideal for viewing 3D models on the Web. It works as a VRML plug-in for popular Internet browsers such as Internet Explorer, Netscape Navigator, Mozilla, Mozilla Firefox, Opera, and Google Chrome.
Cortona3D Viewer 6.0 provides full support for UTF-8 in VRML.
Localization of the user interface
Now the menus of Cortona3D Viewer can be easily translated into other languages by licensed users.
Latest Web browsers support
Cortona3D Viewer now supports Mozilla Firefox v. 3.0 and Google Chrome.
Phong lighting support
The support for Phong lighting model is provided for graphical cards supporting the shader model v. 3.0 and higher. Limited support for the shader model v. 2.x is also provided.
Improved performance: new DirectX renderer
- Support for real-time anti-aliasing (multisampling).
- Support idle-time anti-aliasing by means of Direct3D.
- Support for composite textures.
- Improved processing of textures and 3D primitives.
Improved installation procedure
The use of Microsoft Installer (MSI) allows for easier installation of Cortona3D Viewer within an enterprise and as a part of third party applications.
New VRML extensions
- The Transform2DEx node allows for positioning layers on the screen and specifying their size in pixels.
- The CompositeTexture3D and CompositeTexture2D nodes allow for adding composite textures to the 3D scene.
- The GradientBackground node allows for creating horizontal or vertical gradient background that is static relatively to the camera movements.
Changes in VRML Automation interface
- Pick method has been changed:
Layers without background: areas with no geometry are considered transparent for the picker.
One-sided surfaces: invisible side is ignored by picker.
Double-sided surfaces: the normal calculation is based on a visible side of the surface.
- New method of geometry bounding box calculation:
§ Now the bounding box can be calculated in global coordinates.
The FreeWRL team have put FreeWRL 1.21.2 on-line, with source, debian (.deb) and Apple OSX dmg downloads.
Summary of changes:
- Verified MIME types for OSX and Linux plugins.
- Classic VRML/X3D parser:
- fixed memory error when IS fields were large.
- dramatic speed improvement in PROTO expansions; visible when large protos are
instantiated.
- XML parser:
- speed increase in parsing attribute values (one test shows 100x speed increase)
- PROTO expansion and Script invocation being reworked - may still have parse errors.
(in progress)
- Source Code:
- OpenGL Shaders code should compile on OpenGL 1.5 and above now (was 2.0 and above)
- CFuncs/sounds.h - include unistd.h on Linux machines.
- Misc rendering changes:
- Javascript, direct writing to scenegraph, boolean values were not correctly translated from
javascript to freewrl internal values.
- FaceSets with Color node, not taking material properties correctly (especially transparency)
- FaceSets, with RGB Color node, keep track of associated material transparency, and work through
color node changes.
- removal of temporary files - code has been reworked, as some temporary files (specific:
files retrieved by wget or curl) were not removed.
- initial work on CubeMapTextures.
- GeoPositionInterpolator - output value not translated to local spatial units. (fixed)
WBandD
Welcomes
Russ Kinter's Comments
Comment Wall (9 comments)
You need to be a member of WBandD to add comments!
Join this Ning Network
One could even create a special shared object that has the entire geometry defined right in the proto definition.
As far as I know, blaxxun and bitmanagement do not treat that TS TouchSensor in any special way and that sensor is masked by the presence of other sensors in the geometry hierarchy of the children field. I can think of at least one way that the SharedObject proto might be modified to fix this problem and still function exactly as the SharedObject node was intended (i.e. not customized for a particular object). For instance, it is possible (I haven't tried it) that a script node could be inserted into the proto definition in place of the TS TouchSensor. The initialize routine of the script node could then dynamically add the TS TouchSensor into the children list (i.e. appending it to the geometry provided by the user). As long as the user's own sensor was at the top level of the SharedObject childen hierarchy then both sensors could co-exist. A more complicated insertion of the TS Touchsensor into the user's geometry might also be possible, but the scripting gets more tricky. Without looking into it further I am also not certain how to bind the fields of the dynamic TouchSensor to the proto fields (i.e. to do what the "IS" keyword does).
Is any of this relevant to what you want to do?
(Just trying to add my two cents worth towards a workaround for the problem.)
(You may reply via email if you wish, to doc_onestone@yahoo.com)
Section 4.6.7.3 of the VRML specification "ISO-IEC-14772-VRML97/part1/concepts.html#4.6.7" discusses the heirarchy of activation and suggests that the TouchSensor TS will be masked by the presence of another sensor within the children of the SharedObject (i.e. lower in the scenegraph heirarchy than TS). However, one could conceivably alter the definition of the SharedObject proto (i.e. effectively make it into a customized version of the SharedObject for the purposes of your own world) so that your own sensor and TS both work as expected. For instance, your SphereSensor could be placed into the SharedObject proto definition at the same level as TS -- then both sensors should trigger an event upon a user using a mouse over the object. Or, at least, that is what I expect would happen based on the VRML specification -- I haven't actually tried it.
Hopefully I am understanding what you are asking about and the
above statements are useful.
from now we have a group about 'Deep Matrix' and 'Deep Wave'. His address is here: http://vrml-x3d.ning.com/group/deepmatrixmultiusersystem
I hope that You will give us a help to develop in all ways the subjects of this necesary group.
There, we will can talk ( if You have pleasure, ofcuorse ) about original version of 'DM', about Your version of 'DM', about 'VR Space' and about 'MindGate' ...
And ofcuorse about 'Deep Wave' ...
I have for a long time all these applications, I have also 'VNet' too, and ofcuorse 'ABNet', but this wark only with 'BS Contact' ...
:)
About Your version of 'DM' exist a few informations What it was wrote by me in a few forums. I have a kit with a http server and Your 'DM'.
:)
With maximum respect,
Your great admirer,
tutancamon
Welcome to
WBandD
Sign Up
or Sign In
About
Badge
Get Badge
NEWS
Cortona3D Viewer 6.0 Beta homepage -
Download Cortona3D Viewer 6.0 Beta -
Cortona3D Viewer v. 6.0 Beta: What’s new
Unicode support
Cortona3D Viewer 6.0 provides full support for UTF-8 in VRML.
Localization of the user interface
Now the menus of Cortona3D Viewer can be easily translated into other languages by licensed users.
Latest Web browsers support
Cortona3D Viewer now supports Mozilla Firefox v. 3.0 and Google Chrome.
Phong lighting support
The support for Phong lighting model is provided for graphical cards supporting the shader model v. 3.0 and higher. Limited support for the shader model v. 2.x is also provided.
Improved performance: new DirectX renderer
- Support for real-time anti-aliasing (multisampling).
- Support idle-time anti-aliasing by means of Direct3D.
- Support for composite textures.
- Improved processing of textures and 3D primitives.
Improved installation procedure
The use of Microsoft Installer (MSI) allows for easier installation of Cortona3D Viewer within an enterprise and as a part of third party applications.
New VRML extensions
- The Transform2DEx node allows for positioning layers on the screen and specifying their size in pixels.
- The CompositeTexture3D and CompositeTexture2D nodes allow for adding composite textures to the 3D scene.
- The GradientBackground node allows for creating horizontal or vertical gradient background that is static relatively to the camera movements.
Changes in VRML Automation interface
- Pick method has been changed:
Layers without background: areas with no geometry are considered transparent for the picker.
One-sided surfaces: invisible side is ignored by picker.
Double-sided surfaces: the normal calculation is based on a visible side of the surface.
- New method of geometry bounding box calculation:
§ Now the bounding box can be calculated in global coordinates.
The FreeWRL team have put FreeWRL 1.21.2 on-line, with source, debian (.deb) and Apple OSX dmg downloads.
http://freewrl.sourceforge.net
Summary of changes:
- Verified MIME types for OSX and Linux plugins.
- Classic VRML/X3D parser:
- fixed memory error when IS fields were large.
- dramatic speed improvement in PROTO expansions; visible when large protos are
instantiated.
- XML parser:
- speed increase in parsing attribute values (one test shows 100x speed increase)
- PROTO expansion and Script invocation being reworked - may still have parse errors.
(in progress)
- Source Code:
- OpenGL Shaders code should compile on OpenGL 1.5 and above now (was 2.0 and above)
- CFuncs/sounds.h - include unistd.h on Linux machines.
- Misc rendering changes:
- Javascript, direct writing to scenegraph, boolean values were not correctly translated from
javascript to freewrl internal values.
- FaceSets with Color node, not taking material properties correctly (especially transparency)
- FaceSets, with RGB Color node, keep track of associated material transparency, and work through
color node changes.
- removal of temporary files - code has been reworked, as some temporary files (specific:
files retrieved by wget or curl) were not removed.
- initial work on CubeMapTextures.
- GeoPositionInterpolator - output value not translated to local spatial units. (fixed)
© 2009 Created by Bruce Lehmann on Ning. Create a Ning Network!
Badges | Report an Issue | Privacy | Terms of Service