 Hello, everyone, and welcome to the 2 o'clock to 2.30 p.m. session of the 2019 Open Simulator Community Conference. In this session, we are happy to introduce a presentation called The Basic Architecture of Resmela, a virtual world content production system. Our speaker is Ramesh Ramlal. Ramesh currently leads Deep Semaphore LLC, an e-learning and simulation solutions company. Please check out the website found at conference.opensimulator.org for speaker bios, details of sessions, and the full schedule of events. This session is being live streamed and recorded, so if you have questions or comments during the session, you may send tweets to at opensimcc with the hashtag OSCC19. Welcome everyone, let's begin the session. And on behalf of Ramesh, I'm going to paste a link to a YouTube video. This is his presentation today, and it will also be on the media board behind him, whichever one you see first, please go ahead and click that link to watch his presentation. Enjoy. Hi there, I am Ramesh Ramlal, the lead designer of the Resmela system. I work with a group of exceptional people who've been directly involved in developing the Resmela system as it is today. And I'll be presenting the basic concepts of the Resmela system. The first thing that I'll be talking about is, you know, what is an app. App, of course, is short for application appliance. The next topic I'll be talking about is what is the Resmela heads up display. The third point would be for me to go through a set of examples, you know, and load, you know, scenes that I've created before, then we'll dive a little bit into the main components of an app, okay. We want to see exactly how users sign in, we want to see how an app is made, okay, and what is it composed of, we'll do that very briefly. We'll look at the features that speed up content creation, and in short, that's basically all kinds of snapping functions, okay. You can have snap to grid, you can have a snap to object, and it's kind of intelligent snapping. Then we look at features that speed up exploration of content, and that is a set of functionalities that allow users to look at objects from an optimal angle and distance, okay. We'll spend some time looking at the design of modules, and modules are basically what is the word I could use for that, like libraries of objects, so an app has a library of objects that you can pick and choose from, and we want to show how it's made, and then we'll get a chance to talk about app sets. App sets are like mother apps, they are apps that have other apps in the libraries, okay, so they can generate, you know, baby apps, so that's kind of interesting because you can have a whole environment with a very large complexity, you know, made using an app set. That is true Intel, we hope that you will see how we are supporting diversity of content. We think that we're not only we are supporting diversity, we are also going to accelerate diversity of content, and lastly we look at, you know, how our approach is clearly, you know, trying to balance social and productivity functions, okay. So that's a pretty long list, and let's go straight to the sandbox, I'm going to sign into the app, I get my HUD, and the HUD says meeting up, and I am able to create objects in this app, I have a whole list of categories, okay, and these are basically grids that you can use, so I could use, you know, an 8x8 grid, for example, and place it here, and I can place, let us say, seating arrangements, and you can see that, you know, the chairs are snapping to these locations here, so you have this snap to grid functionality here that I guess is illustrated, okay, so I'm going to clear that, and we are going to load an example scene, so let me load, let us say, a typical office, virtual office environment, of course you would want to have this app in a building, okay, we've got the apps that are used to create buildings as well, 3D buildings, okay, so we'll get a chance to see that as well. So here you have, you know, browsers that were placed, and, you know, those items that are in here, you can interact with these items directly as well, so I would say, you know, enter text, and let's say, designing apps, so that's one way of interacting with your app, you of course have, you're able, like, to enter your data and your websites and everything, and at the end of a meeting, you can save it, and you can have, like, you can load it again at the next meeting if you want to get reminded about what you've done. This is another example where you have non-player characters, so you can create as many non-player characters as you want, and let me just place one here, and you can use these characters and make them, you know, let me select them, and make them sit anywhere or, and you've got animation objects that you can deploy in the scene, and you can animate them. This is a garden app, for example, and you would notice that the HUD has changed to match this other app, and you will also see that it has its own category of items that you can use, okay, so we'll, it's got a fairly long list of items that you can, you know, you can see. Oh, that's a big one, so you can resize and, you know, you have lots of functionalities, you know, so those are big rocks, and I'm going to resize it, let me just bring it down. If you want to, let us say, randomize, I think that's in settings, you can go into the random mode, and if you want to add, let's say, more rocks, let's skip this one, or we just make it smaller, resize, minus 50%, and now if I want to place that rock again, you can see the orientation and the sizes kind of change, and you can, you kind of have an organic shape. Alright, so that describes randomness, and you can also use this for trees and plants, okay. Next, I'm going to load a few scenes, let me load, you know, a garden, alright, so this app set is going to raise a garden app, and the garden app will load its own scene, right, so you have this little garden here with a fountain and trees and flowers, etc., and you can see that we have used, you know, all this has been created very quickly, we've used a randomization function that would place the flowers so that it really looks very, you know, organic, the stone, and the path, let me see if I can show you how the path is constituted, so I'm going to sign into the garden app, so I am in the garden app, and let me go into the create menu, and you can see, you know, the whole list of objects that are available, let me see the path, okay, so you can see, you know, how with these different pieces you can, you can, you know, make a particular path, okay, so that's interesting, and now in the context of, within the context of an app you can actually create a little scene, and then you save that as a file, but here is something more amazing, you can actually go into the mother app, the app set, okay, so I'm going to look at the scene, and you will see what I mean, so what's going to happen here is that we have a kind of a meta-scene that has data about, you know, the child apps that were deployed, and each of these child app is a garden app, and you can see that by just simply taking these apps and playing with it a little bit, reorienting it, you get, you know, a whole different scene, a nice pattern, okay, and I think that's an interesting result, okay, so I'm going to describe how we, you know, the snap to object functionality within the context of the Molecules app, so I'm logging into the Molecules app and I'm going to create, let's say, a methane molecule, methane molecule CH4, I'm going to place a vertical bar here just because I want to make sure that the carbon atom is at some height, and I'm going to stick the carbon atoms, the carbon bonds, not carbon bonds, the bonds to the carbon atom, and make sure that we have this tetrahedral shape with the bond angle being 109.5 degrees, and then I'll be sticking the hydrogen atoms in here, and we have our methane molecule, of course an exhibit is not complete without, you know, some signage, so I'm going to place, you know, an image maybe here in this corner, and I'm going to make sure that this is reduced a little bit, it's too big, and maybe have a text, text, text, not image, so I'm going to go and have a floor sign maybe here, and that's going to say methane molecule, let's see if there's some text wrapping happening, yeah you can actually write a whole paragraph of text and it's going to resize everything automatically, and I'm going to stick an image here of methane gas tanks, okay, so this is like, you know, just an example, so you could see how quickly you can create these things, okay, it's not too complicated, and of course, you know, you have these snap to view data, let me let me log into this one, this app set, and and load the chemistry lab, let me try it, okay, you have the, you know, this whole building that is just coming up, and notice how the, you know, the objects are raising and just like falling, falling at the right place, you know, as needed, and you can see in this scene, you can already see the child apps it has been using, the first one is the 3D text app, which is here, you can actually see this is the 3D text app, that you're using it, you're using it to label the building, and then you can have what I call the Molecules app, it's an app that allows you to create molecular structures very easily, and you know, it's got some very interesting snapping functions that allows you to connect all these objects together very rapidly, you know, you have another aspect where you can actually, that's important, you have at the head the snap to view function that allows you to look at the various objects, okay, so if I'm interested in a particular picture, I can pretty much do that very, very, very rapidly, and that holds for even, you know, the specific atoms, and there's a poster in the background, so you can see, you know, there are two levels of zoom here, even that, so even your object can actually specify whether it makes sense for it to be seen at different distances, okay, so that is an example of the app set, okay, so you can create a chemistry lab using app sets, and so one of the advantages of having, you know, this kind of environment is that you can have a group of students login into the environment, and they will be able to sign into their own workspace, and without interfering with, you know, the work of their peers, so I think that's, that's a really big advantage. One of the things I really love with the Resola system is that it really allows you to create, you know, great-looking spaces, especially the snap to object functions, it's quite, you know, it's something I love a lot, okay, so you get to see, you know, all these different, basically that's a room's app example, okay, so let me just clear this here, so I'm going to sign into this one, and we are going to load, let's see, a museum, and after a while you will find that you have like a rain of little apps that will come, and there you go, the whole museum appears, okay, so you can immediately recognize that this scene is composed of a number of child apps, one of them is the 3d room app, then you have what I call the exhibit app, that's interesting, one of the NPCs that were raised before just found me, and so in the snap to view mode, you can look at various artwork, and automatically the images will be centered, you know, as you want it to be, so that's, you know, another interesting aspect, so what did we learn here, we learned that it's possible to create very quickly large scenes very easily, and museum settings very easily, and to navigate to one of the rooms across the sea over there, I wanted to make it easier for people to do this, so I just go into my view and jump mode, and if I click, I would actually end up directly into this room, okay, you can do this for pretty much any room you want, okay, so this is kind of a neat thing, okay, and so this clearly for us exemplifies or embodies our approach of doing more with less, our approach of designing virtual environments based on the economy of motion principle, okay, and I think that by doing so, we will be able to balance social and productivity functions. Thank you, Ramesh, for a terrific presentation. As a reminder to our audience, you can see what's coming up on the conference schedule at conference.opensimulator.org. Following this session, the next session will begin at 2 30 p.m. in this keynote region and is entitled using the ResMela system to make creative scenes. Also, we encourage you to visit the OSCC 19 poster Expo in the OSCC Expo 3 region to find accompanying information on presentations and explore the hypergrid tour resources in OSCC Expo 2 region along with the sponsor and crowd Thunderboots located throughout all of the OSCC Expo regions.