Default World Walkthrough

November 30, 2010

We’re going to try something a bit different in tomorrow’s Wonderland Wednesday session at 1pm Eastern time:

Wonderland Wednesday: Introducing New Starter Worlds

In the upcoming release of Wonderland, we will be including a set of “starter worlds” for people. In order to help people get the best use of these worlds, in tomorrow’s session, we will be doing a walk-through of the worlds and brainstorming about the best use cases for each one. Then the plan is to “stage” one or two of those scenarios in each world and capture screenshots and short video clips. We will then compile the images and video into documentation that describes how to use the starter worlds.

This session will also act as a test of some of the new functionality and bug fixes going into the release. Please note that the session will be held on the community demo server, not our regular Wonderland Wednesday meeting server.

If you would like to join us, please follow the link above to the event listing on our Facebook page for more details.


JavaOne 2010 Presentation

October 28, 2010

Our guest blog post today comes to us from the Nina-verse. Long-time Open Wonderland community member Nina Nussbaum-Jones from Lockheed Martin presented a talk at the JavaOne 2010 conference in San Francisco last month. All reports were that the talk was fabulous. She has kindly agreed to share her talk slides with us.

100% Java Virtual Worlds:
How to Deploy Innovation in the Virtual Enterprise

By Nina Nussbaum-Jones

It was my first speaking engagement at JavaOne – a lifelong dream in itself – and I got to talk about Open Wonderland, virtual worlds, avatars, and all the things the Wonderlanders have been doing to make our world a better place.   I had three familiar faces in the front row: Kevin Roebuck, Karl Haberl and Mike Gialis (co-speaker). All were cheering me on, using eye contact along with head nods.  I opened by showing my audience of 35 people the animated version of Adventures in Wonderland, but after that it was down to business.  What’s a virtual world?  Why Open Wonderland?  How do I get started?  How’d you do that??  What kind of questions should I be prepared for at work?  Is there a boss key? (You’re probably old if you understood that one.)

Other than the obvious excitement I expressed about having the opportunity to speak at my favorite (geekiest!) conference, I had hoped to inspire people to investigate Open Wonderland, and to get involved in the community.  The community will always feel small no matter how large it gets.  And with more people contributing, the richer the platform will become.

Here are the slides from the talk: On-line version, PowerPoint version, PDF version.


Wonderland Wednesdays Subsnapshot Project

September 14, 2010

Today’s guest blog post is from Bob Potter. Bob leads the development effort of a small agile software house in Montreal, Canada and is interested in virtual worlds as an avenue for discussions and collaborative work for geographically distributed teams.

Subsnapshot Project

By Bob Potter

Most weeks around midday Wednesday in North America, evenings for those in Europe, a group of Wonderland enthusiasts have been assembling in-world to share insights, demonstrate modules, build worlds, and generally learn how to work with Wonderland. Here are the details for tomorrow’s session:

Wonderland Wednesday – Subsnapshot Development
Location: Community Server
Time: 1pm ET (check here for time in your time zone)

Ryan (aka Jagwire) has been leading these developer-focused sessions for the past few months, and through his capable hands, we have walked through the structure of Wonderland, the code, and debugging techniques. After having reviewed code, the group as a whole wanted to get our hands dirty and actually dig in and develop something.  We wanted to find a way to involve ourselves in the development of Wonderland.  Although many of us are strong Java developers (or not), the Wonderland architecture is not the easiest thing to wrap one’s brain around.  There are excellent tutorials on how to develop modules for Wonderland, but this can be nicely complemented with some hands on sessions.  Wonderland itself provides us with the perfect environment to work together as a team.

With the desire to develop something useful, discussion turned to what does Wonderland need.  Several of the participants are active world builders and expressed a need for a way to export a portion of the worlds they were working with.  For example, if the world builder had pieced together a collection of objects organized in a purposeful unit, it would be useful to be able to export this collection into a package that could be reused in another world without having to repeat the painstaking effort required to insert, manipulate, and align the objects. Hence the birth of the Subsnapshot project.  Wonderland already has the means to export the whole world, in the form of a snapshot, but this project would allow the export of selected portions of a world.

Planning the project was done in-world.  An instance of the Firefox browser was started in-world using the shared application functionality of Wonderland. We used the in-world whiteboard as well as Google Docs to capture our notes.

Planning the Subsnapshot module using the whiteboard.

Planning the Subsnapshot module using the whiteboard.

Our discussions centered around how to select the items to export and what would be involved in exporting cells.  We also decided to plan our work so we would get some working code quite early on in the process – it always feels good to get something useful working!

In the following session we actually started coding.  We used the Java IDE, Netbeans, again using the shared app functionality to work collaboratively.

Coding using the NetBeans development environment running in-world as a shared application.

Coding using the NetBeans development environment running in-world as a shared application.

We created the module skeleton with all the necessary directories, build, and proprieties files.  Our first task was to add the menu option for export. Jonathan (chief architect of the Open Wonderland Project) served as our guide and coach. He had us create a ContextMenuFactory class to add our “Export” option. Actual coding work was passed between a few members of the group and all done in-world! We later started work on the export process, extracting a list of the content (e.g. images) that a cell uses.  We took the time to explain all the various parts of the functionality we were creating, so coding progress was slow, but everyone had a chance to fully understand how the code was working.  In between live sessions, we continued our technical discussion in a Google Wave.

Subsnapshot group viewing Google Wave discussion while working on code in NetBeans.

Subsnapshot group viewing Google Wave discussion while working on code in NetBeans.

At the next session, we started by reviewing what had been accomplished during the last session. One member of the team had a chance to test the code that we had written, and he identified a few bugs.  He also proposed some fixes. To show us, he dropped an image (.jpg) of his corrected version of the code and another image of a test he ran to demonstrate the correctness of his fix. We then edited the master copy of the code with the corrections.

Subsnapshot group reviewing proposed bug fixes.

Subsnapshot group reviewing proposed bug fixes.

We were now ready to move on and add additional functionality. We already had the ability to extract a list of the content. The next step was to write the content into files that would later be packaged for export. Using a Sticky Note, we quickly outlined how we wanted to organize our export package.  By the end of the coding session, we were able to write the content files and save them to the client computer’s file system.

For the next session, coming up tomorrow, we are considering splitting up the group and working in parallel on two (or maybe more) separate instances of Netbeans. This will allow a few more of us to actively participate in the coding process.  It will also make Jonathan run around the world a bit! Wonderland is proving to be a productive environment not just to discuss and plan, but also to accomplish real work. Feedback so far has been very positive. In the words of one of our regulars, “this collab is ‘stunning’.”

If you are interested, come join us one Wednesday – check out the Wonderland forum or our Facebook events page to see what is on the Wednesday program – we don’t code every week, but usually there is something happening. One of us will be happy to bring you up-to-speed, so don’t feel like you can’t join in if you didn’t start on the project from the beginning. It’s a great way to learn about Wonderland development and also a great way to learn techniques for using Wonderland as a collaborative work environment.

We’ll be adding comments to this blog post after every meeting, so check back for updates on the progress of the subsnapshot project.

- Bob Potter

See the Open Wonderland Facebook events page for Wonderland Wednesday session details.


World Building – A Test of Preview4

April 29, 2010

Today’s Wonderland Wednesday World Building session served three purposes: to help people learn some world building techniques, to start the process of creating of a new Wondertown community space, and to test the build candidate for Open Wonderland v0.5 Preview4.

The group decided at the end of the session that the build was just about ready to release. Two of the major bugs – the web server hanging problem and the terrible flickering on Windows clients – both seemed to be resolved. A third fix, to improve the way turning gravity on and off behaves, wasn’t quite right, so Jonathan is going to take one more stab at fixing that before creating the final Preview4 release in the next day or two.

In terms of the session itself, we began with a Wondertown Planning Board meeting, brainstorming about the layout of the “town” and the types of content we might want to include.

First Wondertown Planning Board Meeting

First Wondertown Planning Board Meeting

We also reviewed some world building tips, including:

  • Look for “blue ribbon” models in the Google 3D Warehouse – these tend to perform well in Wonderland
  • For best performance, only use models that are 1MB or smaller
  • For models that do not include a .kmz download link, download the most recent SketchUp version and then use File –> Export –> 3D model to save as .kmz.
  • Most SketchUp models look best when you uncheck “Lighting Enabled” in the “Model Component” property sheet
  • Use the Top Placement module to quickly arrange models
  • Use the “Details” pane in the Edit tool palette to precisely place models

We then broke up into three groups, each working on a different type of content. The “Higher Ed” team spent most of their time learning and practicing world building techniques, so they didn’t get too far along on the design of their space, but they did find a nice university building to experiment with.

Beginning of Higher Ed team's space

Beginning of Higher Ed team's space

The “Space” team got started on a Solar System simulation, finding models of all the planets and placing them the correct distance apart. They made good use of the Poster module for labeling the planets.

Start of a Solar System simulation

Start of a Solar System simulation

The “War Room” team found an interior space to use as a war room and placed it on an island in an isolated mountain terrain. They used the Poster module to hang a sign above the door.

Entrance to Wondertown War Room

Entrance to Wondertown War Room

They also used the Top Placement view to move around the terrain so that the building was centered in one of the lakes.

Top view of Wondertown War Room

Top view of War Room

This yielded a nice view out of the windows.

War Room interior with view of mountain terrain

War Room interior with view of mountain terrain

In under two hours, the group made a great start on building out Wondertown. We saved a snapshot and will periodically do more group building sessions to continue to develop this new virtual space. Others are more than welcome to join these follow-on sessions. Please visit the events portion of the Open Wonderland Facebook page to find announcements of these and other events. If there are groups of community members in either Europe or Asia who would like to participate in a world building session, let me know and we can arrange some sessions at more convenient times.


Upcoming Springtime Wonderland Events

April 13, 2010

I realized after I gave a talk in the Smarter Technology series, that I should have blogged about it ahead of time so people who were interested could sign up to attend. So in an effort to tell you about things before they happen, here are some upcoming Wonderland-related events:

Wonderland Wednesday – Drag and Drop Applications
April 14, 2010 – developer-focused session
Wonderland Community Server

Immersive Education Boston Summit
April 23-25 at Boston College, Boston, MA USA
Multiple Wonderland talks, including my keynote on the 23rd

MetaMeets 2010
May 7-8 in Dublin, Ireland
I’ll be doing a remote talk – schedule TBD

I would be particularly happy to see as many of you as possible at the Immersive Education Summit in Boston. Not only will I be there in person, but almost the entire Open Wonderland Foundation board of directors will be attending. The program is filled with Wonderland-related content. In addition to my keynote talk, Professor John Belcher from MIT will be talking about his use of Wonderland in physics education, Michael Gardner will be giving a talk on three Wonderland projects that he’s involved with at the University of Essex (MiRTLE, SIMiLLE and +Spaces), and a student from Aizu University in Japan will be describing his work on a new music browser for Wonderland. I’m particularly interested in learning more about the work going on at the IAVANTE Foundation on immersive medical training. Finally, there will be “Wonderland Behind the Firewall” workshop.

If you are able to attend the MetaMeets conference in Dublin, please let me know. I’m looking for someone to help “drive” Wonderland during my talk.

I look forward to meeting as many of you as possible, either in person or in Wonderland, in the coming months.


Wonderland Wednesday jME Briefing

March 30, 2010

After two successful developer-focused sessions, the group has decided to settle on a regular meeting time on Wednesdays due to the much larger turnout on that day. We are thrilled to announce that the entire jMonkeyEngine core team has agreed to attend this week’s session to give us a briefing:

JMonkeyEngine (jME) Briefing

3:15 PT / 6:15 ET, Wednesday, March 31, 2010
Leader: jME core team
Location: Community Server
irc://irc.freenode.net #wonderland

For those who may not know, jME is the graphics sub-system that Wonderland uses. It is a modern 3D game engine written entirely in Java. jME provides core graphics APIs, including graphics primitive and shader support. The Wonderland graphics system is based on these core APIs, with some extensions from MTGame to support multi-threading.

Diagram showing Wonderland architecture and APIs

Wonderland APIs - the diagram shows where jMonkeyEngine fits into the Wonderland client architecture.

Please put Wonderland Wednesdays on your calendar and plan to join us for one or more of these developer-oriented technical sessions. One of the main goals of these sessions is to help bring more developers up-to-speed on Wonderland development in an informal, highly-interactive environment. If you have ideas for future sessions, or even better, would like to volunteer to run one of these sessions, please add your ideas to the Wonderland Wednesdays Wiki and make a note if you’re willing to lead the session.


Sample Module Walkthough

March 22, 2010
Yesterday’s impromptu developer session turned out to be a lively and informative session led by Open Wonderland architect Jonathan Kaplan.
Screenshot from March 21st Open Wonderland developer meeting

Open Wonderland developer session on "Using Wonderland with NetBeans"

I captured the session on video, which I will post shortly, but I wanted to give as much advanced noticed as possible about the next developer session:

Sample Module Walk-though

3:15 PT / 6:15 ET, Wednesday, March 24, 2010
Leader: Ryan Babiuch (aka Jagwire)
Location: Community Server
irc://irc.freenode.net #wonderland

In this informal technical session, Ryan will lead the group on a walk-through of the sample module code. You might want to browse through the code ahead of time to bring questions with you to the session.

Please make sure your Wonderland and audio setup is working before joining this session and also please join the IRC chat so we can get in touch with everyone in case of technical problems. The link above takes you to a web IRC client, but you may prefer to use a program such as Pidgen (all platforms) or Colloquy (Mac).


Follow

Get every new post delivered to your Inbox.

Join 28 other followers