WBandD

Welcomes

I love visiting new worlds but lately I haven't really seen too many new worlds being published or at least linked for display. It would really be cool to see Bruce's Asteroid world be available for visitation at some point. Just looking at the VIDEO he posted compells me to want to explore it.

Anyone else have thoughts on this? ;)

Share

Reply to This

Replies to This Discussion

We have to get people active on the 'Worlds List' page again. I will link some when I get a chance

Reply to This

Reply to This

Very nice!
Loved the idea and the good feelings this world emanates :-)

Reply to This

Thanks, I would love to see more stuff posted here, even if only in a single viewer mode, or just a link to a .wrl file. I am sure there is alot of great stuff out there that never makes it to ABNet or Revemonde or any other server. Kind of what I hope for the 'Worlds List' page.

Reply to This

Thanks for sharing Bruce! :)

Very cool concept. an idea like this could go a long ways! I just really enjoying viewing new worlds as well. Shared on a chat server is great but even single user mode is nice too. Would be nice if everyone shared their worlds. :)
I will share an older world i made basically for a test. this was made probably 2003'ish. I made it to experiement with terrain and water techniques in reflections and underwater transitions. There isnt alot in this world but somehow i always thought of it as being peaceful. :)


http://home.comcast.net/~lazerousvr/worlds/terra/terra.wrl

Reply to This

Tha is awesome :-) How do you pull that off (remembering that I am a novice at this). Is it an inline?

Reply to This

It isn't really all that difficult. In fact you can do most of this with modelling software. I create a terrain in Bryce that is suited for my purpose and then export it as a .obj file. Then I import it into my modelling software. After I decide where water level will be, the size i want it and the texture map is applied I employ 1 of 2 methods. I want to be able to keep the lake bottom so i have to seperate the two halves cleanly. 1 method is to use a slice modifier. This ends up making a clean break at the point you want, evenm slicing through individual faces so they are realigned along that plane. The other method is to make 2 copies of the terrain. With one copy you do a boolean operation to remove all the faces from above the water line and the other you remove all the faces from below it. Basically we are chopping up our terrain into segments. Now you have 2 complete halves. the next phase is the make another copy of the above water faces but it has to be a mirrored copy on the Y plane. I am not certain about which modelling softwares will do this but I am sure that many of them will. A mirrored copy is exactly what it's name implies. This cannot be an instance or something that is DEF/USEd. It has to be it's own entity with it's own indexedFaceSet. before making this copy make sure that your pivot is at dead bottom or what we will call zero. that way when you make your mirrored copy it will line up exactly with the vertice edge of the original.

(Research your own software to see if mirroring is supported)

Now that the hard part is done you put your water in the scene and the rest is Scripting technique. You wrap the mirrored copy in a Switch so that it is visible from above water. You also put the lake bottom mesh in the same Switch but it's position in the parent(switch) is 2nd so that you cannot see it initially. You then place a ProximitySensor in the water so that it completely covers the area the water covers and the top of the prox should end at the exact spot the water is at on the Y plane. Now you just make a Script so that when the ProximitySensor isActive the Switch you created is flip-flopped. The initial value of whichChoice in the Switch node is 0. When your Prox isActive the value changes to 1 and the other piece of mesh is visible instead. You can also do this in seperate Switches if there are other things you wish to hide based on the state. Underwater, the bottom of the lake will be visible and your mirrored copy will not. Above water you see your mirrored copy nthrough the surface of the water and not the bottom. You can of course play with settings of the material nodes transparency to get the the result you desire.

The scripting for this is as basic as it gets. If you want to learn about this technique I would be glad to write an example.


Although this seems like having alot of extra mesh in the scene you are really hiding one piece of it at all times so the load on rendering really isn't that great. There are other ways to get reflective effects but I like this method because you can actually see what appears to be the exact shape and definition of the landscape. Game engines can do a much cooler effect but alas that doesnt work as well with VRML.



Bruce Lehmann said:
Tha is awesome :-) How do you pull that off (remembering that I am a novice at this). Is it an inline?

Reply to This

Reply to This

RSS

Badge

Loading…
Who Is Online

NEWS

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 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

Sign in to chat!