NASA Lunar Gateway in Second Life

Lunar Gateway in Second Life Lunar Gateway in Second Life
On 15-Aug-2024 NASA 3D Resources released a 3D model of the Lunar gateway in the glTF (.glb) format along with a near Moon environment surround. See https://nasa3d.arc.nasa.gov/detail/gateway

The glTF model can be loaded into Second Life by rezzing a cube, scaling it to 1m x 1m x 1m and rotating it X = 90°, and then while its selected using Develop -> GLTF -> Open on the .glb model. You may need to move the model high in the sky (say above 1,000m) so that the ground and sea are not visible.

Creating the HDRI Environment

Take the “Low Lunar Orbit.jpg” image provided and in a suitable graphics program (e.g. GIMP) export it as file type .exr which provides an HDRI environment. This can be loaded into Second Life viewer as the replacement environment at present with Develop -> Render Tests -> HDRI Preview.

Lunar Gateway in Second Life Lunar Gateway in Second Life

More on Lunar Gateway

More information on the Lunar Gateway at https://www.nasa.gov/mission/gateway/

Posted in Second Life, Space | Tagged , , , | Comments Off on NASA Lunar Gateway in Second Life

inZOI – Resources

inZOI LogoinZOI is a life simulation game created by Korean developer KRAFTON where you can visualize stories of life with immersive, realistic graphics and deep, detailed simulation that creates unexpected occurrences.

Canvas

Canvas provides a platform to have experiences using characters (called a Zoi) created in the Character Creator or chosen from characters already available and created by others…

https://canvas.playinzoi.com/en-US/onboarding

Canvas - AR Company Brief
inZOI Game Entry Screen
inZOI Studio - Pose inZOI Studio - Pose

GoGo (JuicyBomb) Run Through

More info at https://juicybomb.com/2024/08/making-gogo-in-inzoi-character-studio/

Posted in Virtual World | Tagged , | Comments Off on inZOI – Resources

HG Safari Blog – Ai Austin Interview

This blog post gives the information provided as a basis for a blog post by Thirza Ember on the HG Safari Blog. An interview on the OSGrid regions of RuthAndRoth, Black Rock and Space City was held on 21-Aug-2024 to add material.

https://hgsafari.blogspot.com/2024/08/austins-eye.html

Thirza Ember 16-Aug-2024: I am working on a few general interest stories on the HG Safari Blog, and I wondered if you would be willing to do an interview? It would be about your Opensim career principally, how you got into Opensim, what your main interests are etc – obviously with all the appropriate links to your blogs and so on. If you’d be kind enough to provide some bio info in here too, so I get accurate and up to date info.

Ai Austin:
Virtual worlds/OpenSim focused bio…

Austin Tate (avatar: Ai Austin – pronounced “eye”) 16-Aug-2024

In Real Life I am an educator and researcher in artificial intelligence and robotics, with a special interest in distributed collaboration and teamwork. I was Director of the AI Applications Institute (AIAI) at the University of Edinburgh and Coordinator for the Virtual University of Edinburgh (Vue). I am a Fellow of the Royal Academy of Engineering (FREng) and Fellow of the Royal Society of Edinburgh (FRSE, Scotland’s National Academy). I am now retired and Emeritus Professor at the University of Edinburgh and remain an Honorary Staff Member of the University. I am an open source developer and advocate of open educational resources and through that continue to play an active part in developments in my fields of interest.

https://www.aiai.ed.ac.uk/~bat/

As with many potentially useful educational and collaborative technologies, I had initial explorations with multi-user persistent virtual spaces going right back to the MUD/MOO days of the 1970s. As these environments became more graphically orientated, several groups at the University of Edinburgh, including my group, were using professional and hobby related virtual worlds in the early 2000s such as Forterra OLIVE, There, etc. Second Life was also being explored in its early days, around 2004. Second Life became more useful and more widely publicized in 2006 and several groups came together soon afterwards to form the Virtual University of Edinburgh (Vue) to coordinate our efforts in using these environments for teaching, research and outreach.

https://blog.inf.ed.ac.uk/atate/2011/10/22/a-brief-history-of-virtual-collaboration/
https://blog.inf.ed.ac.uk/atate/2018/04/27/virtual-worlds-technology-for-university-of-edinburgh/
https://vue.ed.ac.uk

I have had a presence in Second Life since then and in OpenSim (as both user and grid manager) since July 2007. We also make use of a wide range of platforms beyond Second Life and OpenSim. I frequently make blog posts about experiments and uses of virtual worlds tools and techniques.

https://blog.inf.ed.ac.uk/atate/
Mirror at https://aiaustin.wordpress.com/

Ai in Flight Suit Ai as Strider

For professional use and meetings, my avatar usually wears a green flight suit which has been with me since I first set up in Second Life. I licenced the use of the textures from the creator back then. When exploring in virtual worlds I usually have an outfit that reminds me of Strider in Lord of the Rings, though the sword is Orcrist from the Hobbit. That reminds me of a visit to Weta Workshop in New Zealand where we handled the original filming prop and I have a nicely crafted replica of that.

https://blog.inf.ed.ac.uk/atate/2019/09/02/ai-austin-mk-2/
https://blog.inf.ed.ac.uk/atate/2018/04/12/orcrist/

Vue, Openvue and OpenVCE

Vue - Overview

The Vue regions in Second Life were made available from 28th May 2007. A timeline of events is available at http://vue.ed.ac.uk/ and over the years a number of departments and units as well as externally funded projects have contributed to the server costs for 12 years. An in-house hosted copy of the regions has been provided on OpenSim (Openvue). Security concerns means the in-house version can only be made available within the University firewall, but an openly accessible version is still hosted on OSGrid for continuity.

RGU Oil Rig Oil Rig Blow Out Preventer

Other training and simulation related project regions (such as the RGU Oil Rig for immersive training of offshore workers) are also kept on OSGrid. The OARs for the Openvue regions are available as open educational resources. Our Open Virtual Collaboration Environment (OpenVCE) region created on a project funded by the US Army Research Lab's Human Research and Engineering Directorate (HRED) as an open source resource (OAR) also continues to be available as a basis for a facility to support synchronous and asynchronous collaboration in many forms.

OpenVCE Map OpenVCE - Overview

https://blog.inf.ed.ac.uk/atate/2017/11/30/vue-openvue/
https://blog.inf.ed.ac.uk/atate/2021/07/19/open-educational-resources-vue-and-openvce/
https://blog.inf.ed.ac.uk/atate/2022/02/27/openvce-for-opensim-2022/
https://blog.inf.ed.ac.uk/atate/2017/06/07/virtual-oil-rig-enhancing-higher-education/

I-Room

One of our projects related to virtual worlds collaboration and meeting support is the I-Room – a virtual space for intelligent interaction. We used this on a wide range of projects and for experimentation.

https://blog.inf.ed.ac.uk/atate/2011/09/15/i-room-a-virtual-space-for-intelligent-interaction/

I-Room - Train for Success Seminar 2010

AI Planning MOOC

Our virtual world spaces were also used to give briefings and tutorial support for our Massive Open Online Course (MOOC) in AI Planning. Over its three runs on the Coursera platform it reached 115,000 students. The resources continue to be available on our media servers, YouTube and as Open Educational Resources. The MOOC materials are also used as the basis for graduate level studies by other Universities.

https://blog.inf.ed.ac.uk/atate/2016/06/15/ai-planning-mooc-interview/

AI Planning MOOC Meeting in Second Life

Open Source Projects, OAR Converter, Ruth2/Roth2 Mesh Avatars

I am an open source software developer and contribute mostly via testing and the occasional code contribution to a range of projects including OpenSim, the Second Life and Firestorm viewers, I am especially involved with the Firestorm VR Mod variant. I helped Fumi Iseki and his team in Japan create the OAR Converter to take content from OpenSim into Unity and other 3D modellers. I am one of the core team behind the Ruth2 and Roth2 open source mesh avatars.

https://blog.inf.ed.ac.uk/atate/?s=Firestorm+VR+Mod
https://blog.inf.ed.ac.uk/atate/2024/06/10/oar-converter/
https://blog.inf.ed.ac.uk/atate/2020/08/30/ruth2-v4/
https://blog.inf.ed.ac.uk/atate/2020/05/24/roth2-v2/


HG Safari Blog Questions

Thirza Ember:
I know you brought Vue to Second back in about 2007, and then into Opensim about three years later – can you tell me something about how the virtual university concept came about? What do /did you expect the students to get out of it? Can you also talk about the students who participate in Vue – what disciplines they come from, beyond IT and business studies? How other faculty have responded to the concept?

Ai Austin:
We had our first Vue region in Second Life May 2007 and had about 10 regions a year or two later. So a mini-continent. We maintained paid for regions on Second Life through to March 2019. The first OpenSim regions were started in July 2007 so following on quickly.

Timeline at https://vue.ed.ac.uk/ and https://vue.ed.ac.uk/openvue/

There were perhaps a dozen units and departments and many groups inside those that were actively involved in using Second Life and virtual worlds for some aspect of their teaching, research and outreach. Central units like the Library, Alumni, Disability Office and Corporate Services were involved as well as academic departments. Online graduations took place as mixed reality events linked to the main physical graduation hall. A list of those involved and some of the uses is available in a presentation made for University management and handouts linked from https://vue.ed.ac.uk/ e.g.

https://vue.ed.ac.uk/resources/presentations/vue-overview.pdf


Thirza Ember:
The move to Opensim is linked, perhaps I’m right in saying, to the collapse of SL’s support of academic sims. Do you remember the transition as traumatic? Did it involve a big learning curve, or were you already deep into the code, and interested in bringing Vue to a place with less ready-made commercial feel and more options for experimentation? Can you remember the reaction of the students to the change? What have been the advantages and disadvantages of the change in your view, from both the techie side of things, and the end user’s perspective?

Ai Austin:
No, nothing traumatic at all. Though the costs of the Second Life regions always was a funding issue and we had to work hard to maintain interest in putting so much money into the facilities. We were already using multiple virtual worlds like There and Forterra OLIVE (for professional simulation tasks) and we assumed there would be development and potentially some platforms would become unavailable or move in inappropriate directions for a University. We made sure assets could be re-used in multiple contexts. We looked at self hosted Second Life using what was called “Second Life Enterprise” at the time, but that concept was not continued by Linden Lab. In July 2007 we starting experimenting with OpenSim as self-hosted capability as that was attractive in a University context and we had the “Openvue” as a shared facility from 2008. I would say though that Second Life was easier for staff and students than trying to set up on and use OpenSim.

https://blog.inf.ed.ac.uk/atate/2017/11/30/vue-openvue/
https://blog.inf.ed.ac.uk/atate/2018/04/27/virtual-worlds-technology-for-university-of-edinburgh/


Thirza Ember:
Of course, your work is not just Vue but also open AI. You have a long and really fascinating history of blogging Opensim and SL and I guess ‘the viewers’ to give it a generic name. Your blogging work has proved to be a valuable resource both for getting news, understanding developments, and charting the progress of this platform. Can you talk a bit about how you got started in blogging, what your motivation is to do it, and the rewards and responsibilities, if that’s not too grand a term, are as time had gone by ? Are there other Opensim-related blogs or threads that you read, and can recommend?

Ai Austin:
As for blogging, I got interested in that form of shared communication back in 2009/2010. I was doing an MSc in e-Learning taught via distance education methods with our School of Education. I did that to understand the methods and tools better as I became responsible for the early development of the School of Informatics distance education and later MOOC programmes. The MSc showed a range of platforms and tools and amongst them we used a range of blogging and micro-blogging platforms. So when our School and the University provided the WordPress blog platform for staff and students I took to that right away.

Since then I use it to record many experiments, capture screen shots, describe useful tips and resources, etc. Its another way to share and get feedback and learn from others. I use twitter/X as one way to get pointers top relevant and interesting content. I often use a blog post I have read to go explore some tool or virtual world location. I make “Resources” posts in my blog to point at web sites, download links for tools and recall links to other relevant blog posts.

Back in 2000-2002 I directed a large project involving 30 organisations spread over 4 countries (CoAX) and we shared knowledge and assets between those involved. We created a simple tool to allow for push notification of relevant information to subscribers of certain parts of the content and status information was encoded in the notifications. It was a sort of Twitter system (without the scaling that involved). We switched to using Twitter with structured syntax and URL content in tweets soon after it became available in 2006. I still use twitter/X that way with structed information in some entries.

I have always considered open sharing of educational resources important. Our AI planning systems were right from the start (back in the 1970s) licenced in a way that allowed for re-use and sharing. That’s a way to build a community of interest, get feedback and extend capabilities in a way that can benefit all.

Posted in OpenSim, Second Life, Virtual World | Tagged , , | Comments Off on HG Safari Blog – Ai Austin Interview

Mirrors in OpenSim

Mirror in OpenSim

Mirrors are supported in OpenSim 0.9.3.0 dev master.

Ensure you are using a viewer and on a region that supports mirrors and that the debug setting RenderMirrors = TRUE which it is by default in most viewers.

  1. Rez the object to have a face which will be your mirror. Size and rotation does not matter.
  2. Make the face to be a mirror have a shiny face… e.g. use a reflective PBR material or blinn-phong with a simple blank texture, make Specular have glossiness factor 255, environment 255, and colour tint black.
  3. Rez a Box, size does not matter. rotate Z+ away from face to be the mirror.
  4. Make that box be a Mirror (Everything) probe… sphere or box type does not matter.
  5. Mirror Reflection Probe goes transparent (see it with ctrl+alt+t). But use Build -> Options -> Select Reflection Probes to be able to reselect it for editing.
  6. Move it into the reflective surface’s plane. The probe centre line should be just above the mirror’s surface.
  7. Resize the Mirror Reflection Probe as needed to cover the face of the Mirror and to adjust any edge effects.

The quality and update frequency of the Mirror can be adjusted in Preferences -> Graphics (-> Advanced settings).

Firestorm - Setting Up a Mirror

Tutorials and Videos of How to Create Mirrors in Second Life

Tutorial: Creating a Simple (Prim) Mirror in Second Life – Inara Pey – Blog Post 12-Jun-2024.

Posted in OpenSim | Tagged , , | Comments Off on Mirrors in OpenSim

Firestorm SgeoMinVR 7.1.9

This blog post provides links and resources related to Firestorm SgeoMinVR which is still undergoing testing and revision.
The standard Firestorm VR Mod 7.1.9 can be found via this blog post.

Firestorm SgeoMinVR@Sgeo on Discord created a variant of Peter Kappler’s VR Mod code which sets the VR settings automatically for the various HMDs rather than needing the FN keys to set them up. Hence the F5/F6/F7 settings and adjustments are removed and no vrconfig.ini is saved as needed in standard Firestorm VR Mod. F3 provides enhanced VR HMD related information. Sgeo calls this his “minimal” VR build, close to P373R except not needing settings to be set.

The approach gives greater coverage than standard Firestorm VR Mod for VR HMDs which need vertical as well as horizontal image adjustment (including Meta Quest 3).

Download (via Discord P373R channel)

Firestorm VR Mod community Discord Discussion Channel:
P373R-WORKSHOP by p373r_kappler [Invite]

https://discord.com/channels/613119193734316042/613119193734316044/1260076127003869205
File: Phoenix-FirestormOS-SgeoMinVR-7-1-9-74748_Setup.exe (166.45 MB)

Caveats

  • No sound at present (a later GHA automated build will hopefully fix this).
  • This release needs openvr_api.dll added to the install directory (the GHA automated build will hopefully fix this). A copy can be taken from the usual Firestorm VR Mod release.
  • The FOV defaults to small. You can use the usual Firestorm keyboard shortcuts for FOV/Zoom: Out Ctrl+8, In Ctrl+0, Default Ctrl+9.
  • As in the usual Firestorm VR Mod the mouse can be moved to an edge or corner to shift the view to better access menus and buttons. The 3D view is distorted when the mouse isn’t in the middle.

Approach

Peter Kapplers VR Mod (P373R) code llviewerVR.cpp contains a line:

glBlitFramebuffer(bx, by, tx, ty, m_iTextureShift, 0, m_nRenderWidth + m_iTextureShift, m_nRenderHeight, GL_COLOR_BUFFER_BIT, GL_LINEAR);

Sgeo replaced that with

glBlitFramebuffer(bx, by, tx, ty, m_nRenderWidth * uMin, m_nRenderHeight * vMin, m_nRenderWidth * uMax, m_nRenderHeight * vMax, GL_COLOR_BUFFER_BIT, GL_LINEAR);

So instead of a horizontal texture shift, it’s adjusted and scaled by uMin/uMax and vMin/vMax, which are automatically calculated based on SL’s FOV and the VR projection matrix.

At least one (small) change is made to llviewerdisplay.cpp: gVR.m_fEyeDistance to gVR.eyeDistance()

Source Code and Changed Files

https://github.com/Sgeo/p373r-sgeo-minimal/

https://github.com/Sgeo/p373r-sgeo-minimal/blob/sgeo_min_vr_7.1.9/indra/newview/llviewerVR.cpp
https://github.com/Sgeo/p373r-sgeo-minimal/blob/sgeo_min_vr_7.1.9/indra/newview/llviewerVR.h
https://github.com/Sgeo/p373r-sgeo-minimal/blob/sgeo_min_vr_7.1.9/indra/newview/llviewerdisplay.cpp

llviewerVR.cpp and llviewerVR.h should be fully replaced as expected, although Sgeo suggests that it would probably be a good idea to fix up the weird way it’s pointing to OpenVR, llviewerdisplay.cpp has one very small change from the P373R version.

Testing

Sgeo tested on Quest 3 via Steam Link. It should work fine on other headsets and in other ways to use PC VR via Quest.

Austin tested on Oculus Rift DK2 and Oculus Rift CV1 and the image looks crisp. Using SteamVR 2.7.4 and Meta Quest Link app version 68.0. The field of view is very narrow on startup and needed three presses of Ctrl+8 to look more like the FOV in the standard Firestorm VR Mod.

SgeoMinVR - FOV - Initial SgeoMinVR - FOV - 3 X Ctrl+8

Posted in OpenSim, Second Life, VR | Tagged , , , , | 1 Comment

Scalextric – Monster Trucks (C1024)

Scalextric Monster Trucks

Scalextric Classic to Sport Converter TrackI acquired the Scalextric Monster Trucks Set No.C1024 courtesy of a nephew. This set was produced in the 1990s and uses old style connection track. This can be joined up with recent Scalextric Sport track with a “Classic to Sport Converter Track” so adds nicely to the Scalextric Speed Hunters set I got earlier this year.

Scalextric Monster Trucks Scalextric Monster Trucks
Scalextric Monster Trucks - Contents

Scalextric LayoutBased on the Scalextric Speed Hunters set basic figure of eight layout along with extra sports track and most of the Monster Trucks classic track, connected via two converter half straights there are 32 X 45° radius 2 curves, the longer power and lap counter extra long straights, 12 standard straights and the two converter half straights. Both lanes have identical length of 42′ 10.25″ or 1,306.2cm. One extra standard straight can be added with an ALTernative layout of the part to the right hand middle track area. Both lanes then still have identical length of 44′ 0″ or 1.341.2cm.

Calculator: https://www.drivearchive.co.uk/scalextric/

Scalextric Layout Scalextric Layout
Scalextric Layout Scalextric Layout- ALT

Posted in Motor Sport | Tagged | Comments Off on Scalextric – Monster Trucks (C1024)

Roblox – Six Flags

Six Flags LogoSix Flags have joined with DigitalTwin/Coastercoin to create a theme park experience for Roblox.

Roblox - Six Flags

Posted in 3D, Virtual World | Tagged , , , | Comments Off on Roblox – Six Flags

Fixing hop in Firestorm

Firestorm OpenSim Viewer LogoI am a fan of the hop:// protocol for providing addresses in OpenSim. I like hop as it has a true URL format and can be linked on web pages. These have gradually got more useful as glitches have been fixed… including the recent change in Firestorm 7.1.9.74745 which addresses failures when any hop had multiple partial matches on a region name, where exact name match was required.

This blog post gives a few issues remaining along with any Firestorm JIRA and other links that relate to them. It would be nice to see tidied up one day. But of course, I am not expecting all of these will be, or can be, fixed.

  1. Copy of the Address Bar contents for OpenSim hop:// where a space exists in the region name does not URL encode the address, as it (correctly) does with secondlife:// addresses. That means the copied item when pasted is not a valid URL, will not work in nearby chat or as a link outside of the viewer. https://jira.firestormviewer.org/browse/FIRE-34020
  2. Paste of an address that does not have X/Y element does not link as clickable in Nearby Chat/IM. E.g. hop://hg.osgrid.org:80/RuthAndRoth/
  3. Map Tool Copy SLurl button does not give correct results, especially when on a grid other than the one you first logged into. It should always give same address that shows when you click on and copy the top address bar. E.g., test between login.osgrid.org to and from cc.opensimulator.org:8002
  4. Clicking on a Hypergrid Landmark in Inventory and asking for “Copy SLurl” gives wrong results. Show on map also does not work.
  5. < and > chevron navigation buttons do not work correctly for Hypergrid.
  6. Negative Z values in a hop are not handled correctly. They are interpreted as Z = 0 in the address bar. In the chat tool the “-Z” value is not hyperlinked properly. Test at, for example, hop://hg.osgrid.org:80/Marineville/114/94/-19

Negative Z Issues Not Related to hop://

  • Underwater blue haze effects work down to 0m but below that the lighting turns to the same as above the sea level. Test at hop://hg.osgrid.org:80/Marineville/114/94/+2 and then move down below Z = 0m.
  • Initial placement of objects below Z = 0m using the Build Tool or dragged from inventory jump to 0,0,0. Build Tool works to then move them to a -ve Z okay. See https://jira.firestormviewer.org/browse/FIRE-33929
  • The Terrain Tool only allows terrain to be lowered to 0m. Existing terrain saved as an OAR can be loaded at a negative offset with — displacement displacement <0,0,-Z>
Posted in OpenSim | Tagged , , | Comments Off on Fixing hop in Firestorm

Second Life Mobile

On 25-Jun-2024 the Second Life Mobile app, which has been under development using the Unity platform by Linden Lab for over a year, became available to Premium Second Life users as part of the Beta test rollout before opening the app to all users.

Second Life Mobile

Second Life Mobile - Apple App StoreThe mobile app is available for both Apple iOS and Android devices. For iOS, Linden Lab recommend a minimum of an iPhone X running iOS 16.6.1. For Android, they recommend a mid- to high-end device, comparable to Pixel 6 or later running Android 13 or later.

In my own tests, it does run on an older Apple iPad Mini 4 with iOS 15.8.2 (June-2024), but slowly.

Second Life Mobile - Houseboat

You can interact with objects, e.g. to “Touch” or “Sit” via a long press on the object to bring up their context menu. The movement control in the lower left corner shows a sit icon to press to stand when sat on an object.

Posted in Second Life | Tagged , | Comments Off on Second Life Mobile

Firestorm VR Mod 7.1.9

Firestorm VR Mod 7.1.9.74745 is the first PBR (Physically Based Rendering) VR Mod viewer release.

Firestorm OpenSim Viewer LogoFirestorm VR Mod is a version of the popular Firestorm Viewer for Second Life and OpenSimulator with modifications to provide VR capabilities for VR Head Mounted Displays (HMDs) via SteamVR. This is experimental. Firestorm VR Mod is now available from https://github.com/humbletim/firestorm-gha/releases

Firestorm VR Mod - VR View - OpenSim - OSGrid - Oil Rig

For Firestorm VR Mod community support use the Discord Discussion Channel:
P373R-WORKSHOP by p373r_kappler [Invite]

Table of Contents
Usage Settings Troubleshooting Black in HMD
SteamVR Popup Fn Keys Default View FPS Advice
Xbox Controller 3D SpaceNav Source Code VRLand Test

Firestorm VR Mod DownloadFirestorm 7.1.9 + P373R VR Mod: This build includes P373R’s VR Mod 6.3.3 changes merged into the Firestorm 7.1.9.74745 release branch. The VR Mod approach takes a minimalistic approach to inserting VR capabilities into the viewer in order that the maintenance overhead is decreased and the potential longevity of the approach is increased. VR Controller support is not included.

The Firestorm VR Mod viewer (for Windows only) is available as an .exe “Setup” installer or as a .7z zipped file which can be unzipped to any directory and run from there without an install. If required, a free .7z unzip utility is available at https://www.7-zip.org/. Download the release for the latest version at https://github.com/humbletim/firestorm-gha/releases/

You need to install your usual VR Headset drivers and SteamVR. Firestorm VR Mod when run uses SteamVR which will launch any necessary VR headset specific underlying drivers.

Firestorm VR Mod - OpenSim - OSGrid - Oil Rig - Blow Out Preventer VR View of Crystal Coast in Second Life using Firestorm VR Mod

Firestorm VR Mod is created using “GitHub Actions” (GHA) thanks to @humbletim and @thoys. Firestorm VR Mod version 7.* is still based on Peter Kappler’s VR Mod code changes (working since version 6.6.3 with only minor changes for the merge) but due to PBR changes, Linden Lab (and hence core Firestorm) reworked the render buffer structures which is one of the tight couplings into the core FS code base. The PBR viewer approach changed how the viewer finds the main screen information. The VR Mod initially relied on a direct path, but that path got moved after PBR. Where a developer would use “o.mScreen” before they would now use “o.mRT->screen”. The GitHub Actions have been changed to automatically map the original VR Mod code to new path, so the VR Mod code itself doesn’t need to be changed.

The build also uses the open source openal.dll audio library for sound and builds in the openvr_api.dll library for VR HMD connection.

Firestorm VR Mod has its own app and channel names “FirestormVR” and the install directory changed to “FirestormOS-VR-GHA” so the installation can exist side-by-side with stock Firestorm if desired. Settings and cache are shared with standard Firestorm. If you installed Firestorm VR Mod from an earlier version (up to 6.6.8) you can delete the now unused settings and cache directories: %APPDATA%\FirestormVR_x64 and %LOCALAPPDATA%\FirestormVROS_x64.

U S A G E

VR Mode instructions are available via prompts in the viewer or via information on https://gsgrid.de/firestorm-vr-mod/. In short…

  • Press CTRL+TAB to load or unload the SteamVR driver. Do this each time you want to enter VR mode after starting up.
  • Press TAB key to enable and disable VR mode.
  • Press F5 to open the settings menu, you should see a text menu in the middle of the screen. The settings menu works only when VR mode is enabled.
  • Press F6 to increase the selected value. Press F7 to decrease the selected value.
  • Press F5 again to switch to the next menu entry.
  • By pressing F5 on the last menu entry the menu will close and save the settings in the config file which is located in
    C:\Users\your_user_name\AppData\Roaming\Firestorm_x64\vrconfig.ini
    and which can be edited directly. Pressing TAB for VR mode reloads the config file.
  • Hold F3 to see some debug info (example here).
  • Press F4 to disable and enable HMD’s direction changes. It may be better to disable the HMD’s direction interface when editing and flying with the camera. This may be subject to change in future versions.
  • In the camera floater two buttons has been added to offset the HMD’s base rotation.
  • Moving the mouse to the corners or the sides will shift the screen to this direction so menus can be accessed more easily.

For issues on some specific headsets you might wish to try the Firestorm VR Mod Discord Channel: P373R-WORKSHOP by p373r_kappler [Invite]. Peter Kappler also offers the following advice…

  1. Firestorm VR Mod works best while sitting and using mouse and keyboard.
  2. WindowsMixedReality users may need to press windows key + Y to unlock the mouse when the HMD is worn.
  3. If your VR hardware cannot maintain constant 90 FPS you could try enabling motion reprojection in your HMD. In WindowsMixedReality it can be done by uncommenting “motionReprojectionMode” : “auto”, in the config file located at “C:\Program Files (x86)\Steam\steamapps\common\MixedRealityVRDriver\resources\settings\default.vrsettings”. This will make the HMD interpolate between frames and create a smoother experience. Vive and Oculus should have similar functionalities which can be accessed from SteamVR settings. For Vive it is called Motion Smoothing.

S E T T I N G S

VR Mode Setup

As usual, Ctrl+TAB initially sets up SteamVR (and HMD support as needed), TAB is used to toggle VR mode on or off, F5 lets you select and step through the various VR HMD or user specific settings for IPD, texture shift to register the left and right eye images, and focal distance to change depth perception, etc. F6/F7 are used to increment and decrement each setting selection.

Peter Kappler suggested the following process to establish suitable settings for your HMD:

  1. Set IPD to 0 (zero)
  2. Then adjust Texture Shift until image is sharp and focused
  3. Then adjust IPD which separates your cameras to left and right to get a good 3D effect

@Sgeo on Discord provided a tool to help in calculating the settings for Firestorm VR Mod.. at least to give you a starting position to adjust to your taste…

https://sgeo.github.io/firestorm-vr-calculator/

Source of the calculator is at https://github.com/Sgeo/firestorm-vr-calculator

Hovertips

If you see a lot of hover tips showing under the mouse it could be that the debug setting “ShowHoverTips” is set to TRUE (the default) which may show something constantly under the mouse even for inert unscripted objects. You can turn that off via Debug Settings or via Preferences > User Interface > 3D World > Show Hover Tips. Via that same preferences panel, you might alternatively prefer to lengthen the delay before hover tips are activated.

Chat Bubbles

In VR Mode it may be useful to show local nearby chat in “bubbles” over each avatar’s head. This can be done via Preferences > Chat.


T R O U B L E S H O O T I N G

Misaligned VR Cursor

Note from Gaffe on Discord: Firestorm VR Mod’s VR cursor will have a small-to-extreme offset on Windows in particular if you are using Windows UI Scaling with any settings OTHER than 100%. To fix the VR cursor offset, set the Windows UI Scaling for your primary display to 100%.

Missing Menus and Buttons in Centred VR View

If you notice that the top menu bar and bottom and side button areas do not show in your headset when you are in VR Mode and your view is centred (i.e. mouse is positioned centrally in the 2D view) it may be that the VR settings you chose for Texture Shift and Texture Zoom need to be adjusted, or set to zero.

All Black HMD Display or Black Edges or Strips in HMD Display

An all black display in the VR HMD was an issue in earlier versions and is mostly resolved now… but it can still occur with some headsets. In case you encounter issues with a black HMD display… Peter Kappler suggests the following:

  • Create a program-specific profile for the viewer in your graphic card settings and enable FXAA.
  • Second Life only supports FXAA. Other types of Anti-aliasing can be disabled.

Firestorm VR Mod shifts the display in VR mode to an edge if the mouse or pointer is placed towards an edge or corner of the viewer window. This is to allow easier access to menus, user interface buttons and HUDs. It can be confusing though if you enter VR mode and find that part of the view is black. It is usually because the mouse is placed towards a corner or edge. Just move the mouse back to the centre of the screen and the full VR view should appear.

SteamVR Reset/Quit Screen Shows in HMD

When you switch to VR mode (after activating VR with Ctrl+TAB and using TAB), you may see a “Next Up… Firestorm” message or a SteamVR popup screen to “Reset the View” and “Quit SteamVR”. This has been observed to occur on the first run of a newly installed viewer. It can usually be dismissed with your controller if that is active, but if not the screen may continue to show the popup in VR mode in the HMD. Try another round of ctrl+TAB and TAB or if that does not work try stopping and restarting the viewer to clear this. These glitches may be more to do with legacy OpenVR + the latest SteamVR updates rather than Firestorm or VR Mod code changes.

Function Keys and Gestures

If you have issues with some of the Function keys (F5 or other Firestorm VR Mod keys) not working… look to see if the F keys involved are mapped to active “Gestures”. You can find a list of the gestures you currently have active and the keys associated with them using the “Gestures” toolbar button… or the Comm -> Gestures menu item (Ctrl+G shortcut).

Adjust Over-the-Shoulder Camera View to Suit Yourself

Sometimes in VR mode the camera will be too high or far back from the avatar. If so, press Esc a couple of times, then Shift+Esc a couple of times, or Ctrl + 9 resets the camera to its default position. Shift + scroll mouse button moves camera up and down. You can also set specific Debug Settings (Ctrl+Alt+Shift+S) for camera positions, e.g. “CameraOffsetRearView”. If that doesn’t help, see http://wiki.secondlife.com/wiki/Camera_Control

A D V I C E    O N    F R A M E    R A T E

You do need to ensure you have a good frame rate to have a comfortable VR experience. The Firestorm VR Mod Viewer will not work well if the Second Life/OpenSim region you visit cannot normally be displayed in 2D with a decent frame rate. In VR mode you can assume you will get 50% or less of the frame rate that shows on the 2D normal screen. At low frame rates bad flickering or texture tearing will occur in VR mode. My suggestion is to look at the frame rate (in Firestorm it is displayed in the upper right hand corner of the viewer) and to adjust the graphics settings (especially draw distance, shadows and quality sliders) until you have around 100fps (and definitely more than 50fps) and then try VR.

You may need to disable “vsync” in Settings -> Graphics -> Hardware as if this is on (the default) the FPS is capped to the frame rate of your 2D monitor (often 60fps, meaning in VR you would get less than 30fps).

Firestorm includes an “Improve Graphics Speed” performance tool and facilities to autotune the FPS which may be helpful. See advice on FPS improvement and the new “Performance Floater” and “FPS Autotune” capabilities in Beq Janus’s Blog Post (21-Mar-2022).

To improve frame rate (FPS) you might opt to set shadows to “None”, Water reflections to “None: Opaque”, Mirrors “Off” and use a reasonably low draw distance appropriate to the scene. Also close viewer UI windows and tools and detach any HUDs you are not actively using. The rendering of Linden Water, the water surface and its effects, can significantly reduce frame rates. Setting water reflections to “None; opaque” which gives a big FPS boost whilst still leaving the water looking okay. In an extreme situation, and in an environment that makes sense such as a meeting room, disabling Linden Water entirely can boost frame rates. Do that via Advanced -> Rendering Types -> Water. If the Advanced menu is not shown use Settings -> Advanced -> Show Advanced Menu or World -> Show More -> Advanced menu.

Peter Kappler also suggests: Particles… a fireplace is going to eat 20 to 30 fps! So turn them off for VR.

Tips from David Rowe for using the CtrlAltStudio VR Viewer (which is no longer maintained) may also be relevant:

  1. To improve your frame rate, reduce your draw distance and/or tweak other display settings such as advanced lighting model, shadows, FOV, pixel density, etc.
  2. Make sure you don’t have Preferences > Graphics > Rendering > Limit Framerate enabled.
  3. To display avatar chat above avatars use Preferences > Chat > Visuals > Show chat in bubbles above avatars.
  4. With floating text you may want to adjust the distance the floating text fades at so that distant text is not so annoying in VR mode: Preferences > User Interface > 3D World > Floating text fade distance.

C O N T R O L L E R S

Currently, specialised VR Controllers are not supported, but a range of game controllers and 3D navigation devices do work where supported by the normal viewer code.

Xbox One Controller

Xbox One Controller
Recommended Settings for Xbox One ControllerAn Xbox One controller as used with the Oculus Rift (or an Xbox 360 controller) can be enabled, as usual, in Firestorm via Preferences -> Move & View -> Movement -> Joystick Configuration -> Enable Joystick.

You will probably find the controls are under or over sensitive, or some buttons and triggers don’t do what you expect. See this blog post and the image here (click for a larger version) for some suggestions as to how to amend the settings…
https://hugsalot.wordpress.com/2012/12/03/joystick-settings-for-firestorm-with-xbox-360-controller/

You might want to enter “-1” rather than axis “5” as an indication that axis is not mapped. With the setup suggested the “A” button toggles between the normal avatar view and “FlyCam” mode allowing you to move the camera separately to the avatar.

3D SpaceNavigator or SpaceMouse

3DSpaceNavigatorAs with all versions of Firestorm, the viewer supports other forms of “joystick”. One is the 3Dconnexion SpaceNavigator (aka SpaceMouse) which is a “3D mouse” supporting both avatar motion and by clicking the left hand button the separate “FlyCam” camera control.

My recommendation is to install the SpaceNavigator just by plugging it into Windows and receiving default Windows drivers for the device. I do not install any special SpaceNavigator drivers as suggested on the Second Life Wiki, some of which are incompatible with Second Life viewers.

S O U R C E

Firestorm source is available at https://github.com/FirestormViewer/phoenix-firestorm. Look under “Commits” and select the branch for the specific Firestorm version required.

With Firestorm VR Mod Peter Kappler uses a coding approach which injects VR capabilities into the Firestorm Viewer to make the mod easier to maintain in future and for others to repeat or adapt. The source is available from his web page at https://gsgrid.de/firestorm-vr-mod/ [Local Copy].

Impressively, the source is written in a way that it requires only some editing in the llviewerdisplay.cpp and adding 2 files to the project. All changes are marked with #####P373R##### comments. Peter also included the openvr header and lib files you will need in the rar. For information about the rest of the files you will need, read how to compile Firestorm at https://wiki.firestormviewer.org/fs_compiling_firestorm.

Latest version of openvr_api.dll can be obtained (Win64 version for this test version) from https://github.com/ValveSoftware/openvr/tree/master/bin/.

The GitHub Actions (GHA) source by @HumbleTim used to combine Firestorm source and Peter Kappler’s P373R VR Mod addons, make necessary adaptations and build it using Microsoft Visual Studio is available via https://github.com/humbletim/firestorm-gha.

V R L A N D – T E S T   A R E A

VRLand on OSGrid is a metrics area for performance testing and to establish virtual field of view in your VR headset.

hop://hg.osgrid.org:80/RuthAndRoth/16/16/1000

More detail at: https://blog.inf.ed.ac.uk/atate/2016/07/20/vrland-a-community-and-test-region-for-virtual-reality-in-virtual-worlds/

Ai-Austin-with-Oculus-DK2-800x640You can also pick up a VR Headset attachment for your avatar in OpenSim on the OSGrid on both the RuthAndRoth and (if available) the VRLand regions. Or in Second Life pick up the VR HMD on the Second Life Marketplace. The 3D models of the Oculus Rift were provided for free use by William Burke (MannyLectro) and imported to OpenSim by Michael Cerquoni (Nebadon Izumi) and Second Life by Ai Austin.

F5 Settings for Specific VR HMDs

  • Oculus Rift DK2
    • Meta Quest Link app version 66.0.0.308.370. SteamVR Version 2.6.2.
    • IPD = 65.0 (default)
    • Focus Distance = 10.0
    • Texture Shift = 0.0
    • Texture Zoom = 0.0
    • FOV = 100.0
  • Oculus Rift CV1
    • Meta Quest Link app version 66.0.0.308.370. SteamVR Version 2.6.2.
    • IPD = 65.0 (default)
    • Focus Distance = 10.0
    • Texture Shift = 50.00
    • Texture Zoom = 0.0 (others report 86-200 works)
    • FOV = 100.0
  • Please provide other VR HMD settings

Missing .dll

If you see errors like “missing vcruntime.dll”, “missing msvcp.dll” or the application is not starting at all, then please download and install Visual C++ Redistributable for Visual Studio (link for 64-bit operating systems).

Frames Per Second (FPS) Testing

With Mirrors Without Mirrors
Second Life Release 7.1.8.9375512768 56 120
Firestorm 7.1.9.74745 57 135
VR Mod 7.1.9 before ctrl+tab 55 130
VR Mod 7.1.9 after ctrl+tab 2D mode 50 98
VR Mod 7.1.9 VR mode 20 37

Firestorm VR Mod 7.1.9.74745 for testing.
System: Windows 10 Pro, Intel Xeon CPU E5-1650 v2 @ 3.50GHz, 32GB RAM
GPU: Nvidia GTX1080 8GB
VR HMD: Oculus Rift DK2 or CV1.
Meta Quest Link app version 66.0.0.308.370. SteamVR Version 2.6.2.
Graphics: Ultra. Draw Distance: 256m. Environment fixed = Midday.
FOV, camera, location, 2D windows size, etc all identical.
Server: Second Life. No other avatars on region.

Test of Firestorm VR Mod 7.1.9.74745 in @SecondLife with my usual VR Mod Graphics Settings. 2D = 185fps, VR Mode = 75 fps. Click thumbnail for larger size image to see graphics settings used.

Test of Firestorm VR Mod 7.1.9.74745 - VR Mode - 75FPS Test of Firestorm VR Mod 7.1.9.74745 - VR Mode - 75FPS - Settings

Firestorm VR Mod - VR View - Second Life

Posted in OpenSim, Second Life, Virtual World, VR | Tagged , , , , | Comments Off on Firestorm VR Mod 7.1.9

Firestorm – OpenSim Add Grid

Firestorm OpenSim Viewer LogoFirestorm 7.* provides an add grid capability accessible under the drop down Grid List or directly via this URL…
https://phoenixviewer.com/app/fsdata/fs_grid_builder.html

You need the grid selector on the log in screen. If you do not see it, press Shift-Ctrl-G to activate it. The Grid List and the add grid links it provides are based on https://www.hypergridbusiness.com/statistics/active-grids/

Firestorm - Add Grid Link Firestorm - Add Grid Page

Below the Grid: selection box is a small “+ Click to add more grids” link to open the “Grid List” web page. You can type into the “Search for grids” box to restrict the grids shown to those that match.

Firestorm - Preferences - OpenSimUsing Preferences – OpenSim
to add a Grid

Firestorm menu Viewer -> Preferences -> OpenSim (help web page) allows grids to be added just by entering their loginURI. This then asks the grid itself (which must be online at the time) for other information as needed (provided to the viewer via the OpenSim server’s “GridInfo”).

OpenSim grid owners (or anyone for that matter) can provide a web page link which when clicked will automatically add the grid to the list to be used by Firestorm for grid selection:

hop:///app/gridmanager/addgrid/https%3A%2F%2F1.800.gay%3A443%2Fhttp%2Fyour-grid.com%3A8002

Firestorm Setup - Register Virtual World ProtocolsNote the use of three slashes. The hop:// protocol is normally registered to launch the Firestorm viewer at the time it is installed. secondlife:// may also be used as the protocol for the link but you may have registered that to launch a Second Life only viewer. The last part of the URL is the URL-encoded grid login URL with : (%3A) / (%2F) and space (%20) encoded. Note the port is required even if the loginuri for the grid leaves it optional :80.

hop:// cannot be hyperlinked (and clickable) on this WordPress blog, but some sites may be configured to allow such protocols to be linked. Some example “addgrid” entries are shown with clickable links on a normal Apache web page in this example: https://www.aiai.ed.ac.uk/~ai/hypergrid.html

Posted in OpenSim | Tagged , | Comments Off on Firestorm – OpenSim Add Grid

OAR Converter

OAR Converter can take an OpenSimulator Archive (OAR) and from it create textures, meshes and terrain suitable to import into a Unity or Unreal Engine scene. This blog post covers use converting an OpenSim OAR to Collada for use via Unity. It describes OAR Converter 1.7.* an update in 2024 to replace the earlier version 1.0.6 from 2013-2017.

From Unity a range of virtual world or virtual reality experiences can be created. The converter has been created by Fumikazu Iseki (Avatar: @Fumi.Hax – @fumi_hax) and his colleagues at the Network Systems Laboratory of Tokyo University of Information Sciences (TUIS) in Japan with support from Austin Tate at the University of Edinburgh.

This blog post is provided for convenience and using content from the original TUIS OAR Converter Japanese Web Site which should be considered definitive.

2015-09-04-Unity-OpenSim-OpenVCE-960x598arrow-right-36x1872015-09-04-Unity-OpenVCE-Web-Payer-960x598

OAR Converter can run on Linux and Windows and source code is available. Full instructions for compiling and using the source code version on these platforms is available via the TUIS Wiki OAR Converter Page. For convenience a version with Windows UI is available as a ready to run package.

Note that an OAR file is actually a .tar.gz (.tgz) file, and hence is a Unix TAR format contents zipped to compress it to a smaller file. Sometimes downloading an OAR file can lead to the web server of underlying file save unzipping it automatically. Make sure you are using a normal OAR file or the OAR Converter will report the error message “File Extract Error”.

OAR Converter with Windows UI – Quick Start

Download the OAR Converter for Windows latest version from https://blackjack.nsl.tuis.ac.jp/Download/Release/OARConverter/OARConvWin-1.7.11.zip
[Local Copy]. Latest Version at the time of this blog post is v1.7.11 (at 1-Jul-2024).

OAR Converter for Windows User Interface

For straightforward conversions, simply follow these steps:

  1. Place your OpenSim OAR file in a suitable directory. Using defaults, the conversions will be for Collada (DAE) and use in Unity, with the outputs placed in separate subdirectories of this same directory with names based on the OAR file name prefixed by OAR_ and DAE_
  2. You can use “Tools” -> “Output Format” and “Tools” -> “Settings” to change this.
  3. Run the OAR Converter and using “File” -> “Open OAR File” select the OAR file you wish to convert. This will create a directory called OAR_ with the unpacked contents of the OAR file ready for conversion.
  4. Now select “File” -> “Convert Data” from the OAR Converter File menu. This will create a directory called DAE_ with the converted content in it.
  5. The DAE_ directory created will contain the DAE/Collada objects for the conversion which have colliders (are solid) and one special DAE/Collada object for the terrain (named the same as the OpenSim region name). It will also have sub-directories for all Textures and for the Phantoms (objects with no collider).

Import to Unity3D

You could follow the video instructions in this YouTube video by Fumikazu Iseki. The first part of this video shows the use of the Linux version of the converter, but the part from [2:23] to [6:10] gives an example of importing the converted DAE/Collada folder contents and merging that with a Unity project/scene including adding a Unity Standard Asset water surface. Importing the included “UnityChan” character is shown in the last part of the video.

Unity - OAR Conversion - OpenVCE Unity - OAR Conversion - Oil Rig

Import to Unity – Quick Start

  1. Ensure you add relevant parts of the contents of the “Unity” folder in the OAR Converter distribution into your Unity project, adding Editor/SelectOARShader.cs and Editor/SetLocationByParameter.cs at least.
  2. In your Unity project add an empty game object at 0,0,0 and name it the same as your OpenSim region name. Under this add three empty game objects named Solids, Phantoms and Terrain also at 0,0,0.
  3. Drag the DAE_ folder in its entirety onto the Unity “Project” (Assets) panel.
  4. Select all the objects in the top level of this directory except the Textures and Phantoms sub-directories and drag them onto the “Solids” game object in the Unity “Hierarchy” panel.
  5. Optional: As the (large) terrain object for the region is imported it is usually split automatically by Unity into three sub-meshes of less than 64k polygons. These are all under one object named the same as your OpenSim region and will have sub-mesh names starting “GEOMETRY_”. You may wish to move this terrain objects and its three parts to the “Terrain” object in the hierarchy for tidiness and ease of management.
  6. Select all the objects in the Phantom directory and drag them onto the “Phantoms” game object in the Unity “Hierarchy” panel.
  7. Look at the imported objects and if you see any that are not correctly textured (usually showing as magenta coloured items) perform an “Assets” -> “Reimport All” to fix that.
    Materials may be Magenta Coloured Materials after Reimport All
  8. Optional: Add a water layer at 0,0,0. [Instructions in YouTube Video][2:23] to [6:10].
  9. Optional: Add a ThirdPartyController/Avatar to be able to run the scene and view the contents. [Instructions in YouTube Video] after [6:10].

Project Base for OAR Converter Projects

Once you have successfully tried a conversion and understand the elements, you may wish to create a base for any future OAR conversion… which can include all the steps except for the drag and drop in of the actual DAE converted content. Do this yourself to incorporate the very latest OAR Converter content, scripts and Unity assets. You can if you wish save this as a “unitypackage” to incorporate into future Unity projects.

For convenience my own base project is available at http://www.aiai.ed.ac.uk/~ai/unity/oarconv/ (file: Unity-OAR-Converter-Base.unitypackage). This can be loaded into a “New Project” made in Unity 6000.0 onwards. I use the 3D Template with the “Built-in Render Pipeline”. It provides Mixamo Xbot and Ybot avatars along with UnityChan movement animations and avatars linked cameras.
Unity OAR Converter - Base Project
After that you can make a copy of the base project you created, or create a new unity project and import the unitypackage as a base, and then drag the OAR Converter produced “DAE” directory into the Unity Project Assets area, add the DAE folder assets and those in the DAE/Phantoms folder to the hierarchical view panel. Adjust the position of the chosen avatar and attached camera to suit the region, save the project, save the scene, and you should be good to go.

Advanced Uses – Settings

OAR Converter has Tools and Settings to allow for a range of more flexible uses. As well as Collada .DAE files it can create Wavefront OBJ, FBX (forthcoming) or .STL files (suitable to drive 3D printers).

Exported objects can be shifted in the X, Y and Z (up/down) directions, perhaps for multiple side by side regions on a 256mx256m grid. [Note: this is also easily done afterwards in the Unity editor also.]

Once objects are converted they can also be examined in a 3D viewer built into the tool.

Advanced Uses – Avatar Conversion

This version of OAR Converter can also help with importing OpenSim avatars into Unity. The avatar should be added into an OpenSim scene before making the OAR to make it available for the OAR Converter to use. the “Use Joints” checkbox must be ticked in Settings to allow this. The process is quite involved but instructions by Fumi are in this video: https://blackjack.nsl.tuis.ac.jp/video/PronamaChan_are_go.mp4

WebGL – Web Presentation of OAR Conversions via Unity

Once an OAR has been converted and imported to Unity, so long as you have installed the WebGL capability to Unity (it can be added if its not yet installed) you can make a WebGL build of your project. here are a couple of examples:OpenVCE – the Open Virtual Collaboration Environment as it appears on OSGrid; Marineville – an underwater build as it appears on OSGrid; and TUIS – Network Systems Laboratory of Tokyo University of Information Sciences. Click images below to open the WebGL experience.

WebGL Launch - Made with Unity OpenVCE - the Open Virtual Collaboration Environment
Marineville - an underwater build TUIS - Network Systems Laboratory of Tokyo University of Information Sciences

Export from Unity to glTF

As glTF becomes a mesh content format accessible in Second Life and OpenSim it might be useful to be able to take OAR Conversions to Unity and export to glTF. A glTF importer and exporter is available for Unity. Details of how to add it to your Unity Project and create a glTF export are at https://blog.inf.ed.ac.uk/atate/2024/04/29/gltf-exports-from-unity/. Once converted the glTF mesh can be imported to various platforms such as Blender or Second Life (via the Develop -> Render Tests -> glTF Mesh Preview or Develop -> GLTF -> Open capabilities in recent Second Life Viewers).

Oil Rig in Unity Oil Rig .glb Export in Khronos Viewer
glTF Export Imported to Blender glTF Export Imported to Second Life

OAR Converter Source Code

Source Code is available at: https://github.com/MTSGJ/oarconv.

Other dependencies and libraries required are documented in the “Download” section at https://polaris.star-dust.jp/pukiwiki/?OARConvWin#bdedc2b4.

Technical Papers on 2017 version

Iseki, F., Tate, A., Mizumaki, D. and Suzuki, K. (2017) OpenSimulator and Unity as a Shared Development Environment, Journal of Tokyo University of Information Sciences, Vol. 21, No. 1, pp.81-87 (2017). [PDF Format]

Iseki, F., Tate, A., Mizumaki, D. and Suzuki, K. (2017) OAR Converter: Using OpenSimulator and Unity as a Shared Development Environment for Social Virtual Reality Environments, OpenSimulator Community Conference 2017 (OSCC-2017), 9th-10th December 2017. [PDF Format] [Presentation: PDF Format]

Further Information and Resources

OAR Converter License

OAR Converter © 2014-2016 Fumi Iseki, Austin Tate, D.Mizumaki and K.Suzuki
License (2016 11/19) – http://www.nsl.tuis.ac.jp/, All rights reserved.

Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:

  • Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
  • Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.
  • Neither the name of the OAR Converter nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.
  • Please respect the copyright of content providers when using OAR Converter.

THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS “AS IS” AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

Posted in OpenSim | Tagged , | Comments Off on OAR Converter

OpenSim – Japan Open Grid

Japan Open Grid LogoThe Japan Open Grid (JOG) is a hypergrid enabled virtual world created by Fumikazu Iseki (Avatar: Fumi Hax – @fumi_hax) and his colleagues at the Network Systems Laboratory of Tokyo University of Information Sciences (TUIS) in Japan. Fumi is the creator of the OAR Converter and other useful OpenSim and virtual world tools.

Loginuri: http://jogrid.net:8002
Web Interface: https://www.jogrid.net/wi/
Arrival region and shopping mall: hop://jogrid.net:8002/Dejima/129/128/27

Japan Open Grid - Dejima Region
Japan Open Grid - Dejima Region Japan Open Grid - Dejima Shopping Mall

The arrival region has a range of shopping malls. Hypergrid visitors may find some free items or local currency offered to them via poster boards to purchase items.

Ai, Be and Fumi Ai, Be and Fumi

Posted in OpenSim | Tagged | Comments Off on OpenSim – Japan Open Grid

Second Life – glTF Import Progress

Linden Lab is in the process of adding glTF 3D model support to Second Life, starting initially with PBR materials and moving on to full glTF (and .glb) scene, mesh nodes (including hierarches), materials and animation import and export for round trip updates between the viewer and external 3D modelling tools like Blender. As part of this effort a Release Candidate “Materials featurette” viewer is already available that lets you locally load a glTF mesh or scene (multiple meshes). The contents are visible only to yourself and not saved at present though test viewers are already experimenting with upload of glTF meshes. @davep (Runtai Linden) has stated that the eventual aim is to be able to import anything as it shows in the Khronos glTF Sample Viewer or in Adobe Substance.

glTF Mesh Loading Method

Though the method by which glTF meshes are loaded will change, for test purposes the following procedure can be used as at 8-Jun-2024:

  1. Create a simple prim, such as a cube and scale it to 1.0m. The scale is used to set the scale of the mesh that will be imported. So 0.5m would be 50% scale. 1.0m would be 100% scale. You might want to also rotate it by 90 deg in the X direction as that corresponds with the usual orientation of models in Blender.
  2. Edit the cube to select it as the target to attach the glTF mesh.
  3. Use Develop -> Render Tests -> glTF Scene Preview to select a .gltf or .glb file containing your model. [This will be replaced by other methods alter: e.g. in some glTF Development test versions use: Develop -> GLTF -> Open, save As, Upload]
  4. Rotate or move the object as necessary. Also scale as you wish.
  5. Make the root prim be 100% transparency to hide it.
  6. You can select parts of the mesh using “Edit Linked” to move, rotate and scale them. Selecting the root of a part hierarchy moves the whole item (e.g. for a wing of a vehicle).
  7. In some glTF Development test versions after adding a mesh to a root prim, you can use: Develop -> GLTF -> Upload< to upload the content to Second Life servers. This can only work on regions with the GLTFUpload debug setting true. This uploads the textures and then the glTF bin (mesh) and gltf (wrapper) files. After the upload finishes (indicated by a final two L$1 uploads) you can Take or Take Copy the root prim into inventory to save it for reuse from inventory.
  8. You can link other prims or mesh objects to a glTF mesh if you wish (e.g. to add scripted seats to a vehicle). You can also attach the mesh to avatar locations and position it, e.g. for swords.

At present texture need to be a power of 2 on each side, though that constraint should be relaxed in due course since the Khronos glTF Sample Viewer can render non-power of 2 textures okay.

A short video by @davep (Runtai Linden) shows the process [Video (MPEG4) via Discord]

Potted Plants Meshes

Sketchfab – Optimized Potter Plants by by Nicholas-3D (@Nicholas01)
Suggested by @davep (Runtai Linden) as a free test mesh.

https://sketchfab.com/3d-models/optimized-potted-plants-967b4bf23fac4098993776fcfc2d3318

Ready Player Me glb Avatars

Ready Player Me (https://readyplayer.me) avatars are made available as .glb meshes, ready rigged (with Mixamo compatible skeletons) and PBR materials. They appear to load fine in the test viewer. Of course the rigging is not operational at this stage.

This avatar is available in .glb format via
https://models.readyplayer.me/6619152aaaa958d48f2143ee.glb


Supercar, Black Rock Lab Mesh and Mike Mercury Statue Meshes

I uses these meshes as tests in various platforms. Supercar has 510174 vertices and 273230 triangles. Black Rock Lab Exterior has 68412 vertices and 39037 triangles. Black Rock Lab Interior has 455142vertices and 181935 triangles. The Mike Mercury figure has 42606 vertices and 24415 triangles.

As at Second Life Release 7.1.7.8852879962 on 29-Apr-2024 Supercar, Mike Mercury figure and Black Rock Lab interior and exterior are all rendering quite well. The Black Rock Lab textures are not yet showing as many are not set to a power of two.

RGU Oil Rig

RGU Oil Rig glTF mesh loaded in Second Life Test 7.1.7.9121781241 (17-May-2024). The model has 955880 triangles and 1303822 vertices and 9342 mesh elements.

glTF Oil Rig Model glTF Oil Rig Model

Posted in Second Life | Tagged , | Comments Off on Second Life – glTF Import Progress

OpenSim-NGC – Resources

A variant of OpenSim created by Mike Dickson and his collaborators is “OpenSim – Next Generation Core”. The aim stated there is:

OpenSim-NGC Logo

The OpenSim-NGC project is designed to be different from OpenSimulator Core in a couple of important ways. We place an emphasis on quality and security testing of our code. This is built into our development process, so the team gets continuous feedback on how we’re doing in that regard. The security focus is especially important and feeds into another “project” we’re developing. The Trusted HyperGrid is a set of policies and practices that grid owners have adopted to ensure residents and content creators are as protected as we can possibly make them through both process and technology. You can read about the History of the project here.

Posted in OpenSim | Tagged | Comments Off on OpenSim-NGC – Resources

Second Life – Duet Using Suno.ai

https://maps.secondlife.com/secondlife/Yawgoo/84/96/2992

An installation by technorabbit in Second Life. Replicants Duet between Deckard and Rachel inspired by Bladerunner

Information from YouTube Video description: This demonstration makes use of https://suno.ai to generate the voices and backing track for a duet between Deckard and Rachel inspired by Bladerunner. Various sub-themes were combined into a poem. A chorus or two were used to rewrite the poem into a song, which was then fed into Suno.AI to generate the audio. The arm and lip movement was derived from automated closed caption tooling.

While suno.ai might have done the singing, the lyrics come from human sources; and then there is costuming, direction, post-production, scouting venues, and many more aspects than the singing. The video is shot in Second Life because 3D settings and production costs are so low — there are just so many creative and fully built out venues available.

Posted in Second Life | Tagged | Comments Off on Second Life – Duet Using Suno.ai

Three Hills Grid – Pandora

Three Hills Grid by Marianna
There are many wonderful Na’vi/Avatar themed virtual world regions in Second Life and OpenSim. See some examples in my log posts https://blog.inf.ed.ac.uk/atate/?s=na’vi

Clans of IknimayaA new one for my exploration is the Iknimaya region on Three Hills Grid, an OpenSim DreamGrid-based installation. Explore the region, its flora, fauna and the clans of Iknimaya. Pick up some of the free items of Na’vi apparel.

https://opensimworld.com/hop/83767
hop://three.hills.grid.outworldz.net:8002/iknimaya/107/121/23


Posted in OpenSim | Tagged , , | Comments Off on Three Hills Grid – Pandora

Blender – Fix Mirrored Parts Shading Issues

I am getting shading/colour issues on glTF exports of parts in Blender models that were probably created in the far distant past as a mirror of an airplane wing or piece on one side transposed to the other. The “broken” parts sometimes look dark or black in Blender at other times they may be normally coloured. For some parts I was just able to duplicate and mirror the part again in Blender 4.1.1 to replace a broken object and that worked fine. But some parts cannot be mirrored.

I can’t see what the difference is between each side, but when I export to glTF (for example) in the Khronos viewer the parts shows as a grey colour versus the proper colour of the other side. I checked and there is no negative scale on the piece. I also flipped face normals (both ways!) but that made no difference.

I have checked a glTF export of the Blender model in the Khronos glTF Sample Viewer and in the tool’s Debug Settings the faulty part does have different “Shaded Normals”, “Geometry Normals”, “Geometry Tangents” and “Geometry Bitangents”.

I wonder if anyone has seen this and knows the trick to correct it?

Ideally I want to be able to fix the model in Blender, be able to export as glTF and have that work in the Khronos glTf Sample Viewer without shading issues. The have a process clear enough ton be able to repeat on other models with similar issues. As well as document that process here to help others in future.

X-15 Rocket Plane Test Model

This occurs on multiple Blender models, but one sample X-15 rocket plane model that exhibits this behaviour is the “X-15-1” by TaffGoch on 3D Warehouse
https://3dwarehouse.sketchup.com/model/a3a3a3d2ccc590eeaef99de91a3e555/X-15-1

X-15 in Blender 4.1.1

Khronos glTF Sample Viewer and Debug Views

X-15 in Khronos glTF Sample Viewer

Discussions and Online Suggestions

https://forum.unity.com/threads/symmetric-models-with-mirrored-normal-maps-shader-fix.65859/

https://www.reddit.com/r/opengl/comments/sectzr/i_suspect_the_loaded_model_tangent_bitanget_and/

These posts clearly are exploring the right area, so it is likely its something to do with normals, tangents and bitangents! But all the suggest I tried in here (that I can understand) have not worked, eves the idea of exporting via FBX and reimporting.

Posted in 3D | Tagged | Comments Off on Blender – Fix Mirrored Parts Shading Issues

glTF Abstract Art – Exploded Oil Rig Model Parts

Exploded Oil Rig Model Parts in Second Life Project Gltf Development 7.1.7.9103672349 (16-May-2024)

Oil Rig Abstract Art glTF Oil Rig Abstract Art

When a glTF model is loaded into the Second Life glTF mesh capable viewers that are under development the parts can be stretched out, rotated or misaligned. This occurs right up to 17-May-2024 e.g. in in Second Life Project Gltf Development 7.1.7.9103672349. But the effect produced is almost like an abstract painting.

The issue is being corrected and the model loads without distortion in glTF Upload version – Second Life Test 7.1.7.9121781241 (17-May-2024)

glTF Oil Rig Model - Correctly Loaded in Second Life glTF Oil Rig Model - Correctly Loaded in Second Life

Test at 4-Jun-2024

Second Life Release 7.1.8.9296076745 (Materials Featurette Release Candidate) still has the exploded parts issue. Second Life Project Gltf Development 7.1.8.9309468311 (Test Viewer) displays the Oil Rig correctly.

Oil Rig in Second Life 7.1.8.9296076745 Oil Rig in Second Life Project Gltf Development 7.1.8.9309468311

Posted in 3D, Second Life | Tagged , , | Comments Off on glTF Abstract Art – Exploded Oil Rig Model Parts

OpenSim – Server Quick Start

OpenSimulator Logo

OpenSimulator (often shortened to OpenSim) is an open source virtual world platform which implements most of the Linden Lab Second Life virtual world protocols and extends it in some ways convenient for educational and other extended uses. This blog post describes a quick start to get a locally hosted server up and running.

Simple Start (standalone on localhost using SQLite)

Use last formal release in precompiled binary from http://opensimulator.org/wiki/Download#Current_release

Unzip it and run bin/OpenSim.exe and answer the questions for the initial region and admin avatar setup. Except for specifying an initial region name most can just be set to their defaults. Don’t leave the initial user password blank as viewers usually insist in a password being entered to login.

Use localhost:9000 as the grid name to login. If necessary add this to the grids available in any OpenSim capable viewer (such as Firestorm via Viewer -> Preferences -> OpenSim).

OpenSim 0.9.2.2 Binary Release on localhost:9000 via Firestorm Viewer

Latest Dev Master Version (standalone on localhost using SQLite)

Download latest Dev Master source from http://opensimulator.org/viewgit/?a=shortlog&p=opensim

runprebuild and compile using Dotnet8 (Visual Studio 2022 Community Edition).
See https://blog.inf.ed.ac.uk/atate/2024/04/21/opensim-using-net-8-0/

Rename bin/OpenSim.ini.example to OpenSim.ini
Rename bin/config-include/FlotsamCache.ini.example to FlotsamCache.ini
Rename bin/config-include/osslEnable.ini.example to osslEnable.ini
Rename bin/config-include/StandaloneCommon.ini.example to StandaloneCommon.ini

Run bin/OpenSim.exe and answer the questions for the initial region and admin avatar setup. Except for specifying an initial region name most can just be set to their defaults. Don’t leave the initial user password blank as viewers usually insist in a password being entered to login. Note through that if yo forget this you can use the “reset user password” OpenSim console command to set any user password afterwards.

Use localhost:9000 as the grid name to login. If necessary add this to the grids available in any OpenSim capable viewer (such as Firestorm)

OpenSim 0.9.3.0 Dev Master on localhost:9000 via Firestorm Viewer

Add Content – OARs and IARs

Content can be added via OpenSim Archives (OARs) and Inventory Archives (IARs). E.g. to load the OpenVCE OAR… use this command in the OpenSim.exe console:

load oar https://openvce.net/resources/downloads/opensim-openvce.oar

You can then pick up a box with sample avatars, etc.

OpenVCE OAR Loaded OpenVCE OAR Loaded

Enabling Hypergrid

Can be added in so long as you have an externally accessible IP or domain name. Canyouseeme.org provides a web page that will display the current IP address your network is on. You usually have to set up the firewall and port forwarding on your internal network and router to the computer you are using to host OpenSim.

There are “Dynamic DNS” services that map a such as Outworldz.net that provide a facility to set up stable domain names where your own IP address might be frequently changing. See this link for more details. That facility is also built into Fred Beckhusen’s DreamGrid distribution of OpenSim.

Posted in OpenSim | Tagged | Comments Off on OpenSim – Server Quick Start

Firestorm grids.xml at May 2024

Firestorm 7.1.9 onwards has an improved “Grids List” mechanism for adding and managing grids. This is described at https://blog.inf.ed.ac.uk/atate/2024/06/15/firestorm-opensim-add-grid/. The information below is left in place got historical purposes.

Firestorm has a file named grids.xml giving an initial list of grids which can be selected in the “Grid” drop down menu for login. As at May 2024 it has about 25 OpenSim grids and the Second Life main (Agni) and Second Life Beta (Aditi) grids. Firestorm provided a web page where grid owners could ask for entries to be added (no longer active). But over the years the grid.xml list has contained little used and even no-longer exiting grids. The Firestorm development team commented that it was difficult to know which entries to add or remove and felt it would be something that the OpenSim community itself might be able to manage or assist with. This blog post provides resources that may be useful.

Latest Firestorm GitHub source location of grids.xml:
https://github.com/FirestormViewer/phoenix-firestorm/blob/master/indra/newview/app_settings/grids.xml

Grid Manager Grid List Presentation Process

user_settings grids.user.xml is seeded from app_settings grids.xml (minus all DEPRECATED entries) on first actual login (or change in the Preferences -> OpenSim grid list). New grid entries you add are placed in that file. Grid Manager entries you delete are marked as “USER_DELETED” in grids.user.xml and are hidden from the grids list presented to the user.

user_settings grids.remote.xml is created each time you run Firestorm and set from a remote file named http://phoenixviewer.com/app/fsdata/grids.xml on the Firestorm servers. It allows the Firestorm team to be able to remotely add new grids to the viewer grid manager without having to issue viewer updates. See https://wiki.firestormviewer.org/fsdata_communications

Each entry has a timestamp and that is used to determine the correct version of a given grid to use. That allows the Firestorm team to update on the website (historically) which would override the locals, but the more usual case is the locals override the server.

Any change to the app_settings grids.xml needs to be made also at http://phoenixviewer.com/app/fsdata/grids.xml or the remote entries will continue to show in the Grid Manager unless the user has explicitly deleted them in the Preferences -> OpenSim Grid manager list.

Firestorm app_settings: %programfiles%\FirestormOS-Betax64\app_settings

Firestorm user_settings: %AppData%\Roaming\Firestorm_x64\user_settings

Adding a Grid to the Grid list which Firestorm Uses

Firestorm menu Viewer -> Preferences -> OpenSim allows grids to be added just by entering their loginURI. This then asks the grid itself (which must be online at the time) for other information as needed.

Firestorm also provides a way for any grid owner or user to provide a link which when clicked will automatically add the grid to the list to be used by Firestorm for grid selection:

hop:///app/gridmanager/addgrid/https%3A%2F%2F1.800.gay%3A443%2Fhttp%2Fyour-grid.com%3A8002

Note the use of three slashes. The hop:// protocol is normally registered to launch the Firestorm viewer at the time it is installed. secondlife:// may also be used but you may have registered that to a Second Life only viewer. The last part of the URL is the URL-encoded grid login URL with : (%3A) / (%2F) and spaces (%20) encoded. Note the port is required even if the loginuri for the grid leaves it optional :80.

grids.xml as at Firestorm 7.1.7.73900 Beta (13-May-2024)

OpenSim Grids:
alternatemetaverse.com:8002
astralia.eu:8002
cc.opensimulator.org:8002
craft-world.org:8002
discoverygrid.net:8002
fireandicegrid.net:8002
gaynations.org:7002 (DEPRECATED)
goto.theencoreescape.com:8002
grid.3rdrockgrid.com:8002
grid.avacon.org:8002
grid.kitely.com:8002
grid.virtualife.cloud:8002
grid01.from-ne.com:8002 (DEPRECATED)
hypergrid.org:8002 (closed in June 2022)
islandoasisgrid.biz:8002
lfgrid.com:8002
login.aviworlds.com:8002
login.digiworldz.com:8002
login.francogrid.org:80
login.greatcanadiangrid.ca:8002 (DEPRECATED)
login.osgrid.org
login.ufsgrid.com:8002 (DEPRECATED)
login.zetaworlds.com
login.zonenations.com:8002
login.main.mobiusgrid.us:8002 (DEPRECATED)
partydestinationgrid.com:8002
tanglegrid.net:8002
thekazgrid.com:8002
grid.alifevirtual.com:8002 (DEPRECATED)
www.alifevirtual.com:8002
grid.avatarconnection.com:8002 (DEPRECATED)
grid.roleplayworlds.net:8002 (DEPRECATED)
inworldz.com:8002 (DEPRECATED)
login.avination.com(DEPRECATED)
login.danger.osgrid.org (DEPRECATED)
reactiongrid.com:8008 (DEPRECATED)
login.aurorascape.com:8002 (DEPRECATED)
vidadupla.com.br:8002

Second Life Grids:
util.aditi.lindenlab.com (Beta)
util.agni.lindenlab.com (Main)

Tidy Up Stages and Process

The initial idea is to simply do a tidy up and not try to remove any active entries already there.

  1. Leave all entries “as is” if the grid is not closed and if their loginURI or root web site is accessible, even if some are showing certificate or other issues currently. See checks below.
  2. List closed or inaccessible grids as “DEPRECATED”.
  3. PR 15 Addition (top recently active grid on Hypergrid Business OpenSim Statistics) – grid.wolfterritories.org:8002
  4. Add localhost:9000 to defaults grid list for easy “out of the box” OpenSim initial setups.
  5. Make a change to the splash page for Second Life Beta Grid. See below. NOT ENACTED after discussion and improvement to Firestorm custom splash page.

Other checks will depend on OpenSim community feedback and usage statistics and should be left to a later stage.

Entries No Longer Accessible marked as DEPRECATED

The following Grids had issues on test, but most had their base domain name still active. Only those actually closed down or whose domain is now not related to the OpenSim Grid will be removed in this phase.

3rd Rock Grid at grid.3rdrockgrid.com:8002
(Certificate error, web site still exists)
(Grid has indicated it is closed from May 2024)
(Community move to regions on ZetaWorlds.com)

Francogrid at francogrid.org
(Servers down since March 2022, site hopes to reopen)

Island Oasis at islandoasisgrid.biz:8002
(URL issue? Chrome security check issue)

Metropolis Metaversum at hypergrid.org:8002
(Grid closed in June 2022)

Tangle Grid at tanglegrid.net:8002
(Grid closed. Domain name for sale)

The Encore Escape at goto.theencoreescape.com:8002
(theencoreescape.com domain name sold to a legal business)

Virtuallife World at grid.virtualife.cloud:8002
(URL issue for loginpage page but server responds)

Zone Nations at login.zonenations.com:8002
(URL issue for loginpage page but server responds)

Hence only 3rd Rock Grid, Metropolis Metaversum, Tangle Grid and The Encore Escape should be marked as DEPRECATED at this stage. ZetaWorlds.com is being used as a 3rd Rock Grid community hub and some members have moved to (see this HG Safari Blog Post. It is already in the grid.xml list.

In case any of the four removed grids are needed in future, these are the “addgrid” links which will add them back to the Firestorm Grid Manager list.

3rd Rock Grid: grid.3rdrockgrid.com:8002
Metropolis Metversum: hypergrid.org:8002
TanGLe Grid: tanglegrid.net:8002
The Encore Escape: goto.theencoreescape.com:8002

hop:///app/gridmanager/addgrid/https%3A%2F%2F1.800.gay%3A443%2Fhttp%2Fgrid.3rdrockgrid.com%3A8002
hop:///app/gridmanager/addgrid/https%3A%2F%2F1.800.gay%3A443%2Fhttp%2Fhypergrid.org%3A8002
hop:///app/gridmanager/addgrid/https%3A%2F%2F1.800.gay%3A443%2Fhttp%2Ftanglegrid.net%3A8002
hop:///app/gridmanager/addgrid/https%3A%2F%2F1.800.gay%3A443%2Fhttp%2Fgoto.theencoreescape.com%3A8002

See this Wik page: https://github.com/metaverse-crossroads/hypergrid-junction/wiki/Links-to-Add-Grids-for-Viewers

Inclusion by Default of localhost:9000

I think it is useful to include the default (essentially “as it come out of the box”) locally hosted standalone variant of OpenSim (loginURI: localhost:9000), as that is a mode that an initial OpenSim server user may first try.

Refinement of handling of Second Life Beta Grid Entry/Splash Page (Aditi)

Firestorm uses a custom “loginpage” entry/splash page for the main (Agni) grid at https://phoenixviewer.com/app/loginV3/ rather than the usual Linden Lab provided entry at http://viewer-login.agni.lindenlab.com/

But it also uses this same URL for the Second Life Beta grid (Aditi) which I think is not as helpful as the display of a Beta grid specific entry page that is used from http://viewer-login.agni.lindenlab.com when the Second Life Beta grid is selected gives more useful user information when the Second Life Beta grid is selected.

This is part of the advice from the Discord Second Life Server “#viewers” channel on 17-May-2024 by Journey BunnyTo implement this the agni web page has a whole host of elements of class or id “non-prod-grid-msg”

Update 18-May-2024: NOT ENACTED after discussion and improvement to Firestorm custom splash page as in the following image:

Updated Firestorm Splash Page for Second Life Beta Grid

Second Life Beta Grid loginpage: https://phoenixviewer.com/app/loginV3/
Second Life Main Grid loginpage: https://phoenixviewer.com/app/loginV3/?grid=Aditi

Potential resources to get input from the OpenSim Community

Update 2-Jun-2024: Firestorm Grid Add Mechanism Changed

Firestorm Viewer - Grid ListOn 2-Jun-2024 the Firestorm 7.1.8 Beta changed to include a mechanism for adding grids based on the Hypergrid Business monthly updated grids list. The page presented to the user when adding a grid uses a Python script to take the information in the Hypergrid Business monthly updated active grids list. The contents shown can be filtered by typing any partial grid name. Information on how to add your grid to this list is provided here. The web page presented is directly accessible at: https://phoenixviewer.com/app/fsdata/fs_grid_builder.html

Posted in OpenSim | Tagged | Comments Off on Firestorm grids.xml at May 2024

Batmobile 3D Model

Batman LogoBased on Batmobile on Sketchup by Sam146 (https://sketchfab.com/sam146)
https://sketchfab.com/3d-models/1966-batmobile-744a9b83b392454897d296c2919f1f91

Blender import of Collada original model and textures, conversion to power of 2 textures, flipping many normals to regularise the appearance of the model and additions to more closely resemble the 1966 TV series Batmobile. glTF exportfor use in various platforms including Second Life.

Batmobile in Blender 4.1.1
Batmobile in Khronos glTF Viewer Batmobile in Second Life glTF Mesh Viewer

Batmobile in Second Life glTF Mesh Viewer

Some Facts about the 1966 TV Batmobile

Posted in 3D | Tagged , | Comments Off on Batmobile 3D Model

Metaverse Crossroads

Metaverse Crossroads LogoMetaverse Crossroads is a GitHub Organization to collect together a range of resources to help promote Metaverse and linked virtual world activities and experiences. It was created by @Humbletim.

https://github.com/metaverse-crossroads

Early work includes a fix (Github link) to improve the handling of the hop:// protocol (see this blog post) for teleports between different grids and regions via the Hypergrid in response to a number of Firestorm JIRA issues (FIRE-31368,
FIRE-29276).

Posted in Virtual World | Tagged , | Comments Off on Metaverse Crossroads

glTF Exports from Unity

Testing glTF Export capability in Unity via glTFast. To install the Unity glTFast package, follow these steps:

  1. In your Unity project, go to Windows > Package Manager.
  2. On the status bar, select the Add (+) button.
  3. From the Add menu, select Add + package by name. Name and Version fields appear.
  4. In the Name field, enter com.unity.cloud.gltfast
  5. Select Add.
  6. The Editor installs the latest available version of the package and any dependent packages.

In the project select the item(s) you wish to export and right click on that or choose from menu Assets > Export glTF > choose .glb or .gltf.

ISS


ISS: glTF summary: 1626041 bytes JSON + 129848428 bytes buffer, 5660 nodes, 669 meshes, 862 materials, 332 images

RGU Oil Rig


RGU Oil Rig: glTF summary: 9567175 bytes JSON + 69171695 bytes buffer, 12157 nodes, 9400 meshes, 4408 materials, 90 images

Pisten Bully 100 and 300


Pisten Bully 100: glTF summary: 2273440 bytes JSON + 34579260 bytes buffer, 3874 nodes, 3158 meshes, 55 materials, 10 images
Pisten Bully 300: glTF summary: 1441536 bytes JSON + 10762811 bytes buffer, 2533 nodes, 1506 meshes, 35 materials, 10 images

Fallingwater


Fallingwater: glTF summary: 5183165 bytes JSON + 21756759 bytes buffer, 37292 nodes, 1589 meshes, 89 materials, 52 images

Power of 2 Images

It is sometimes the case that images have to have each side be a power of 2 to load correctly. There is a tool that can be used on images to do this. Use it prior to exporting the glTF from Unity to ensure that texture images will be portable.

Node Count for glTF Model

glTF models contain “£nodes” which can contain one or more meshes and the transforms on them. It is likey that the upload cost to Secnd Life will have node count as one of its parameters. You can get the node count using a tool called “qj” to look at the .gltf JSON file and perform the count.

Install the tool and then use

> jq ".nodes | length" model.gltf

Posted in 3D | Tagged , | Comments Off on glTF Exports from Unity

PalmPilot

Palm LogoI got my first PalmPilot in 1997. Purchased at CompuTown in Market Street, San Francisco. And via various models (IIIc, Tungsten C and others) I still use my Palm Tungsten T5 today (in 2024). This blog post provides some links and resources relating to Palm devices.

Palm Pilot 1997 Palm Tungsten T5

Palm Desktop 4.1.4E for Windows

This software enables Palm devices to HotSync with Windows Desktop right up to 2024. A Palm Desktop Version 6.2 is also available online.

Palm Emulators

https://www.theverge.com/2022/11/25/23478396/internet-archive-palm-pilot-emulation-games-apps-dope-wars

Tagged | Comments Off on PalmPilot

Fantasy Faire 2024 in Second Life

Fantasy Faire 2024
Twenty regions for the Fantasy Faire April 18 to May 5, 2024 in Second Life to support American Cancer Society’s Relay For Life fundraising.

https://fantasyfairesl.wordpress.com/2024/04/18/welcome-home-to-the-fairelands/

Posted in Second Life | Tagged | Comments Off on Fantasy Faire 2024 in Second Life

OpenSim using .NET 8.0

From 21st April 2024 OpenSim is using .NET8.0. The NET8.0 SDK, runtime and necessary compiler tools can be made available by installing or updating to Visual Studio 2022 Community Edition version 17.9.6 or later and installing the .NET SDK 8.0.

To opt out of Microsoft gathering of .NET 8.0 compile information use Right click on “This PC” icon -> Properties -> Advanced System Properties -> Environment Variables and add or change DOTNET_CLI_TELEMETRY_OPTOUT to 1 or true. This must be done BEFORE installing the .NET 8.0 SDK (or rerun the installer after setting the variable).

Install the .NET 8.0 SDK from https://dotnet.microsoft.com/en-us/download/dotnet/8.0

Then on the OpenSim source use runprebuild.bat and compile.bat

Posted in OpenSim | Tagged | Comments Off on OpenSim using .NET 8.0

Thunnus Bay in Second Life

Thunnus bay is a Fantasy Fair 2024 (Relay for Life) region in Second Life. It uses atmospheric visuals and environment, a superb soundscape and a range of charity shopping experiences.

http://maps.secondlife.com/secondlife/Thunnus%20Bay/99/156/63

Posted in Second Life, Virtual World | Tagged , | Comments Off on Thunnus Bay in Second Life

ESA Lunar Horizons in Fortnite

ESA Blog Post on Lunar Horizons in Fortnite, 11-Apr-2024

The European Space Agency (ESA) Lunar Horizons experience is available in Fortnite, where it launched using code 3207-0960-6428 or by searching for ‘Lunar Horizons’ in Discover. Released on 11-Apr-2024, the game was created by Epic Games, ESA and Hassell, in collaboration with Buendea and Team PWR.

The game play is the usual formula of quests to gather resources and tools and build things. The player’s clothing would not let them last long on the Moon, but maybe a space suit is available.

Posted in Space | Tagged , | Comments Off on ESA Lunar Horizons in Fortnite

glTF Mesh Tests in Second Life

Linden Lab is in the process of adding glTF 3D model support to Second Life, starting initially with PBR materials and moving on to full mesh and scene import. As part of this effort a test viewer is available that lets you locally load a glTF mesh or scene (multiple meshes). The contents are visible only to yourself and not saved. @davep (Runtai Linden) has stated that the eventual aim is to be able to import anything as it shows in the Khronos glTF Model Viewer or in Adobe Substance.

The tests following were carried out on Second Life Test 7.1.6.8639241871. Remember this is early days and it will be some time before this capability makes it way into normal use in Second Life (and possibly at some stage OpenSim).

glTF Mesh Loading Method

Though the method by which glTF meshes are loaded will change, for test purposes the following procedure should be used.

  1. Create a simple prim, such as a cube and scale it to 1.0m. The scale is used to set the scale of the mesh that will be imported. So 0.5m would be 50% scale. 1.0m would be 100% scale.
  2. Edit the cube to select it as the target to attach the glTF mesh.
  3. Use Develop -> Render Tests -> glTF Scene Preview to select a .gltf or .glb file containing your model.
  4. Rotate or move the object as necessary. Also scale as you wish.
  5. Make the root prim be 100% transparency to hide it.
  6. You can link other prims or mesh objects to the newly loaded mesh if you wish (e.g. to add scripted seats to a vehicle).

A short video by @davep (Runtai Linden) shows the process [Video (MPEG4) via Discord]

Potted Plants Meshes

Sketchfab – Optimized Potter Plants by by Nicholas-3D (@Nicholas01)
Suggested by @davep (Runtai Linden) as a free test mesh.

https://sketchfab.com/3d-models/optimized-potted-plants-967b4bf23fac4098993776fcfc2d3318

Ready Player Me glb Avatars

Ready Player Me (https://readyplayer.me) avatars are made available as .glb meshes, ready rigged (with Mixamo compatible skeletons) and PBR materials. They appear to load fine in the test viewer. Of course the rigging is not operational at this stage.

This avatar is available in .glb format via
https://models.readyplayer.me/6619152aaaa958d48f2143ee.glb


Supercar Mesh

I tested with my usual Gerry Anderson’s Supercar detailed mesh (around 250K triangles) which in its .glTF or .glb format works fine in the Khronos glTF Model Viewer. In the Khronos glTF Model Validator it gives a warning that the texture images are not set at a power of 2 for each side.



  1. The textures initially did not load, but when converted to a power of 2 for each side they did load fine.
  2. Textures are not a power of 2 and do not load. A set of replacement textures that are Power of 2 are provided. These can be replace the textures created on glTF export from Blender.
  3. Each side has 9 yellow cooling vanes, some did not show in early tests.
  4. There is a chrome fuel filler cap on the rear fuselage top. Only the left side showed in early tests.
  5. The nose spike and ball are showing near the centre of the model in early tests.
  6. Parts of the wing structure and its spike do no show in early tests.
  7. The rear fuselage aerial is out of position in early tests.
  8. The black seal at the front of the canopy is out of position in early tests.
  9. A large cylinder appears in the middle of the model in early tests.
  10. Many parts are grey. The canopy and lights transparency is not retained. Most of the simple colouring and alpha applied to parts that do not have textures is not showing in early tests.

The Supercar model as it appears in the Khronos glTF Model Viewer is as follows:
Khronos glTF Viewer - Supercar - Core Khronos glTF Viewer - Supercar - with Magnetic Grabs

The large cylinders that appear in the imported model appear to come from parts added late to the model, and which were created at the top level of the model parts list. They were then reparented to a relevant parent part. It could be that some sort of modifier application was not done in a uniform way. For the core Supercar model they were the end stops for the lower fuselage piping and the seven Hidem bands on the front seat. For some of the addon parts lie the rocket gun and magnetic grabs some parts also appear as large cylinders or large boxes. Applying all modifiers to some part (like the lower fuselage piping end stops) fixed some of these issues, but not all. Setting the part origins to the their geometry centre does not seem to be a fix.

Update 18-Apr-2024 – Second Life Test 7.1.6.8728758920 on Aditi Beta Grid Rumpus Room 2024

The update to Second Life Test 7.1.6.8728758920 has improved the preview loading of glTF meshes with most objects correctly rendering in position and scaled properly (just a few items that seem to not have “All Transforms” applied or parenting issues remain). But the main advances is that now all textures and colours are correctly applied.



Update: 19-Apr-2024 – Second Life Test 7.1.6.8757430447 – glTF Mesh Element Editing

Version Second Life Test 7.1.6.8757430447 starts to provide an ability to edit separate parts of a glTF model.. Movement of parts is possible, but not yet separate rotation or scaling.


Black Rock Lab Mesh and Mike Mercury Statue Meshes

The Black Rock Lab (BRL) glTF meshes exported from the Blender models for exterior and interior and the Mike Mercury Statue also import and preview reasonably well after applying all transforms to the parts. Textures are largely missing as they will not (yet) be power of 2.



Update: 29-Apr-2024 – Second Life Release 7.1.7.8852879962

As at Second Life Release 7.1.7.8852879962 on 29-Apr-2024 Supercar, Mike Mercury figure and Black Rock Lab interior and exterior are all rendering quite well. The Black Rock Lab textures are not yet showing as many are not set to a power of two.

glTF Mesh Data

Supercar with Extended Wings

    Meshes (Nodes): 1501
    Vertices: 510174
    Triangles: 273230
    Opaque Materials: 54
    Transparent materials: 4

Supercar with Both Wings, All Accessories and Blast Wall

    Meshes (Nodes): 1549
    Vertices: 545014
    Triangles: 293157
    Opaque Materials: 2
    Transparent materials: 0

Mike Mercury Figure

    Meshes (Nodes): 4
    Vertices: 42606
    Triangles: 24415
    Opaque Materials: 63
    Transparent materials: 4

Black Rock Lab Exterior

    Meshes (Nodes): 891
    Vertices: 68412
    Triangles: 39037
    Opaque Materials: 31
    Transparent materials: 1

Black Rock Lab Interior

    Meshes (Nodes): 1415
    Vertices: 455142
    Triangles: 181935
    Opaque Materials: 88
    Transparent materials: 0
Posted in 3D, Second Life | Tagged , | Comments Off on glTF Mesh Tests in Second Life