Generating Second Life structures from PowerPoint

It occurred to me that building things in Second Life is quite hard (well it is for me anyway), and even when you buy a “house in a box” which creates you a house when you touch the box, someone still needed to go to the bother of creating all the prims and working out their dimensions and coordinates for you. It would be far easier if you could just draw your basic layout in something nice and easy like Paint or PowerPoint and then click on a button and the basic structure would appear on your Second Life land. I realise that something like PowerPoint will only easily allow a 2D drawing experience, but that’s exactly what I wanted to start with – something close to being as simple as doodling with pen and paper so that I could try different room shapes and layouts quickly and easily without spending more than a few minutes on each one.

I knew that generating Linden Script from a bunch of drawn lines in PowerPoint was not going to be hard. Since I am new to Second Life the main area of complexity for me would be working out the Linden Script that I needed to generate the entire building from a single prim and a single script. I wanted to use a single prim and single script to minize cut and paste activity from the generator to Second Life. I spent some time proving that I could use Linden Script to create multiple instances of a single object and then transform them into whatever I wanted. Once this was proven I used the Linden Script that I had written to become the basis for my code generation template, and drew a simple room with a doorway using four lines in PowerPoint. I generated the Linden Script from PowerPoint, pasted the code into a Second Life object and ran the code. Sure enough, my simple four sided room appeared right in front of me. Excellent.

My first generated room

Now I wanted a tougher structure to generate in order to test my generator. I had a search around and found a copy of the maze layout for Hampton Court garden maze, which certainly met my need for a complex object! I pasted this image into PowerPoint and traced the outline of the maze hedges, which took about 10 minutes. I then clicked to generate the code, and it worked first time, although I should point out that I then proceeded to find a few bugs in my code to convert cartesian coordinates into lengths and angles, and also had to add code to handle the creation of multiple objects when a wall of longer than 10 metres was needed, and code to handle offsets of greater than 10 metres. I also had to add code to split the generated script to ensure that each fragment remained under the 16k script limit. This little lot took a bit longer than 10 minutes…

Anyway, with those wrinkes ironed out I now had a wooden box which contained a single wooden sphere, both of which contain scripts that have been completely generated. The only tedious bit is that you need to manually copy and paste the code from RL to SL, and for a huge object like this maze that is about 10 scripts, although for most normal buildings/rooms a single script will suffice.

Now, when I touch the wooden box I get a 30 second delay followed by some frantic rezzing activity! The final result is a Second Life version of the Hampton Court garden maze generated from a single wooden sphere using code generated from outside Second Life. The structure consists of 144 prims and is approximately 120 metres by 80 metres in size, and yes I did get quite thoroughly lost in it when I tried to walk round it :o)

My maze in Second Life

Now that I have proven the generator technique I hope to try some more practical examples along with a technique for enhancing the amount of data that can be captured in the drawing tool, such as the texture of the walls, whether they are windows or doors etc. I am still very keen to keep the input technique as simple as possible though as I’m really using this as very quick building outline generator, so I’ll probably shy away from full blown 3D drawing tools at this stage.

34 thoughts on “Generating Second Life structures from PowerPoint

  1. This is going to be very useful to a lot of people who don’t want to or need to understand the differences between prims and vertex modeling, Blender, Maya, etc. and just want a simple way to bring in a floor plan. Let me be another to pile on the kudos!

  2. Very nice indeed – I also find modelling difficult. I was wondering about an interface to copy Google SketchUp models into SL – but it appears that export functionality is only available from the paid-for version.

    Also manually pasting the scripts across gets around the SL upload fees.

  3. We had been thinking about sketchup and a like.
    Part of the fun in this aside from being a superb idea, was that everyone aks if you can run powerpoint in SL. This turns it nicely on the head. 🙂

  4. Hey Dave. That is pretty cool. I have used quicktime / jpegs to present powerpoint in SL. I have also been looking into the sort of stuff you have been talking about here. I’d love to chat with you in-world !

  5. Pingback: Jeff Barr’s Blog » Virtual to Real, and Back Again

  6. Pingback: eightbar » Blog Archive » Google Sketchup -> Second Life export

  7. Pingback: 3pointD.com

  8. Excellent work! Is this exporter available anywhere for download? I am sure that a lot of people would appreciate it and/or would be wanting to contribute.

  9. Pingback: Marc Melvin’s Weblog » Blog Archive » Second Life Import Tools

  10. So where is the download. Its all well and good that you figured this out, but to help you need to post the code somewhere. Email it to me if you like.

  11. Yes we can and Roo did that too. The powerpoint was done first, as in some circles people are more comfortable with ppt.
    It is not really a design tool as such, but exploring the sorts of generation technology where the code is, where the data is, making sure many services can be used by many other services is more a design pattern that we look to.

  12. Well it looks good, but a step by step example guide for dummies like me would be good!

    Is there such a guide?

    Regards and keep up the good work 🙂

    Tony

  13. Very coool. But stuff like this kinda annoys me as well. People used to contract me to do accurate builds of things like this because they couldnt do it themselves, or did not want to learn how to build. But in this way, anyone can build. Whereas people like me actually took the time to figure stuff out, are going to be out of a job soon. But hey, i guess the times they are a changing. Nothing i can do about that. So kudoes to you, i always knew the future of SL was in scripting more then building, and if you can, dont make it to easy please :P.

  14. I do not think you are going to be out of a job. Whilst much of this allows people to build things themselves there is still a need for talent, accuracy and art. Things do become easier, such as has happened with website design with more templates and out of the box solutions, but there is still a veyr large need for talented design. If anything this makes it even more obvious to people the need talented designers.
    We have found that it has allowed some people to discover new talents in design but there is a great difference between clipart and a grand masters painting.
    SL and alike moves us also into architectural considerations, considering how a space may work for people and general usability.
    You only have to look at resources like flickr to see there is a massive amount of creative talent in the world, but when I take what I think is a great photo I always then see someone else has taken a better one.
    I know my way aorund photoshop, I can creating pleasing graphics quite simply, but I would always trust the eyes and talent of a great graphic designer. When design (technical or graphic) is done correctly you just know its right. When someones talents are not quite as good you feel it. So its all about quality.
    Flatpack furniture or craftsmen builds? 🙂

  15. Hi Mattias. I agree with ePredators earlier reply, and I feel that the technique I used to generate the maze (and the subsequent work done by Roo with SketchUp) was more of a rapid-prototype support technique rather than something I’d consider for building final “polished” builds. I found it useful for seeing what my ideas might look like, but I almost always generated them in plain geometrical structures, often leaving the texture as default balsa wood!

    I think there is a place for some kind of descriptive language that could be used to create richer structures and apply textures etc, but the user of this language would have to be far more creatively talented than me, otherwise they could end up with an efficiently generated hodge-podge of a build that doesn’t adhere to good design or architecture rules etc :o)

    Anyway, thanks for the comments… I must find some more time to follow up on a few more related ideas that I’ve had, such as seeing what the architecture and construction industry do in this space for real builds and how this might translate across.

  16. Hi Dave,

    I am a student at the University of California, Berkeley and currently working on an educational tool to recreate archaeological sites and objects in Second Life under a professor in Anthropology and funded by the Department of Education. Our goal is to use Second Life as a medium for learning through interaction in the virtual world. I have come across this blog and the script that you have created seems very interesting.

    We are currently working on recreating the Çatalhöyük site in Turkey with land that we have recently bought and see your script as having great potential in aiding us in the design process.

    I was wondering if you could be willing to contribute a copy of your export program or if you could direct me in other projects that do a similiar transformation from 2D plans to 3D objects in Second Life. Thanks.

    You can contact me through the email given.

    – Daniel

  17. Pingback: SL… a new world needs new tools at Andre Schuster | Design und Inhalt

  18. Pingback: Secondlife Talk » 3D und Second Life - vom Web2.0 e-Business zum Web3.0 v-Business?

  19. Hey Dave, this is really great work. I am part of a student group here at Marist College, and we would really be interested in having a go at the plugin and the possibilities it provides us with Powerpoint, for some 3D modeling projects. I was hoping you could email me a copy of the plugin, or point me in the correct direction for downloading it. Thanks again.

  20. Nicely done…however, how about a download? Or a howto?

    Any tool that makes it easy (or easier) for ANYONE that wants to, to build a structure in SL is welcome. The tools of SL are simply too limited and clumsy as hell to deal with.

  21. This is a hoax. If you search the internet you won’t find it for download anywhere. ; )

  22. If the US senate has a hard time understanding the new health cae bill from Obama how can common folks? When will we be able to understand what he has done?

  23. Considerably, the post is actually the freshest on that worthy topic. I concur with your conclusions and also can eagerly look forward to your incoming updates. Saying thanks will certainly not simply just be enough, for the fantasti c lucidity in your writing. I definitely will quickly grab your rss feed to stay informed of any kind of updates. Pleasant work and also much success in your business efforts!

Comments are closed.