Create viewer for Opensim using BJS

Hello Folks!

I just recently read an article on Hypergrid Business website which spoke about the military creating a viewer using BJS for Opensim. Myself have created a grid using OS (attached pic of it) and have interest in making a viewer of my own. Since Im familiar with BJS and use it in my work one including the landing page for my business Tinico Enterprise (www.tinico81.com) I thought it would be great to create a viewer in which folks can see their grids minus having to download software such as Firestorm or Second Life. How do I go about doing this? Thank you so very much!!

:heartpulse::green_heart:,
Mekaboo

1 Like

Hiya Mekaboo… welcome to the new forum… good to see you again. Good topic, too.

I think the U.S. Army bailed on that project.

There is a paragraph about 1/3 down the page… “I recall also that the US Army under the MOSES group were working on a web viewer…”

Anyway, that website is a little newer/fresher, with lots of news and searchable terms/names.

It seems that OpenSim/HyperGrid experimenters… are not happy with the performance they are getting from web-based viewers, especially on mobile devices. Understandable.

I’m not knowledgeable on these things, except… back in the “old days” (25 yrs ago), we experimented with VRML generated from telnet-based MOO/MUD servers (SenseMedia/LambdaCore). We used the Chaco Pueblo VRML-enabled moo/mud client (and also CosmosPlayer browser plugin)… to view the moo in 3D.

We felt very lonely, but we knew that our VRML/3D experiments would “come back around” eventually. Here we are, eh? :slight_smile:

The only “modern” for-BJS world-server I have ever walked-around-within… is @nasimiasl’s 500blog.com “thing”. I don’t know WHAT he runs on the server-side, but I doubt that it is OpenSim-related. Still, “Naz” is one of the hottest and friendliest coders that I have ever met.

If ANYONE could “adapt” openSim data… to 500blog data, it’s Naz. I have never seen a challenge of ANY kind… beat him. I’m not sure that he is human. I’m thinking MAYBE he is a robot, built-around a Cray super-computer. :smiley:

In the beginning, OpenSim/HyperGrid-active versions of 500blog… would likely be “view only”. Users from 500blog won’t be able to interact with “outsider” grids, nor will other grid-folk be able to interact with 500bloggers. But, each side could see/watch the other side/grid. View only. You could tour an OpenSim grid/world (by entering the gridViewer room at 500blog)… but, no avatar would be genned on the remote grid.

Ok, perhaps a fully-mobile non-authed-in “ghost” could appear in the remote grid. Can’t push any buttons or collide with mesh, but might be able to chat. :slight_smile:

Maybe, if we bought Naz a big fat server-space with lots of bandwidth and a pre-paid 10-year no-changes contract, he might build something. :slight_smile:

Anyway, here is a decent Google web-search link… should provide some fun reading: link Stay tuned for more comments, and… party on.

2 Likes

Thank you so much for the friendly welcome back Sir @Wingnut💗

You know what I’ve noticed that quite a bit of info pertaining to grids is a few years old but I wanted to see if things have progressed since then. I started getting into virtual worlds a few months ago and love it…I feel as if I have my own video game somewhat🤣…just like regular coding I enjoy the challenge it brings me!

I will for sure look into the info you gave for I know it can be greatly helpful to me and my journey! Thanks again for everything!

:yellow_heart::green_heart:,
Mekaboo

2 Likes

who am i ?? please help me

1 Like

(Wingnut adjusts Naz’s doppler antenna and config.whoami) :slight_smile:

You are Mister 500blog, and a fine programmer and human. :slight_smile:

500blog is probably the longest-continuously-operating BJS-ready world-server… ever.

And you’re one of my heroes.

Other than that, I dunno. Who are you? :slight_smile: (Wingy examines Naz for a liquid cooling system.)

I hope I didn’t offend you. I was bragging about you… a bit.

Mekaboo has a $250 million budget and wants you to help us spend it. :smiley: (j/k)

2 Likes

so make challenge
‘i think everything is possible’
any help i like to try

2 Likes

Oh I wish I had that type of budget :rofl::rofl::rofl:

Sir @nasimiasl you got a glowing review yesterday💗…have you ever worked with building a grid viewer?

The more I look at OpenSim, the more I think it would be tough.

They don’t hand-around grids. Instead, it seems avatars can walk/fly/teleport from server to server. The worlds/scenes are not designed to be handed-around.

Essentially, we’re talking Second Life… in webGL/JS. I doubt we have the needed horsepower.

1 Like

I appreciate you for being honest❤ I wanted to see if it was possible to make something more lightweight and compact. I actually use both Firestorm and Singularity viewers when building grids but they take a while to load. I felt that loading would be quicker using HTML5 and it will work across all platforms.

Ahh, you have Firestorm and Singularity experience. Cool. I don’t. SO, yeah, at least SOME of the area/region around your current avatar position… needs to get sent in SOME format… to those clients.

I would think… that approx the same data transfer speeds would be available in both Singularity, and with JS sockets. But, after that data arrives (possibly in separated chunks), it needs processing and then display. That processing would likely go very fast in Singularity (because it is OS code/app). Likely slower in JS.

Then, display. Singularity… likely renders OpenGL or Direct3D, or similar high-capacity high-performance canvas. JS, installing the same processed data into webGL canvas… maybe much much slower. And then run-time operations/collision-processing/physics? erf.

Can I ask… what makes you feel this way? Hope? :slight_smile:

There is a reason (or many) why the U.S. Army bailed on the idea of a webGL OpenSim viewer, and why none exist yet, after many years of OpenSim dev. Perhaps you can find out that reason… on some OpenSim forums.

One interesting test… might be to ask Firestorm and Singularity dev communities… about using a webGL canvas for THEIR display system. I think both communities would reply-with “Are you out of your mind?” :slight_smile: They might question WHY they should consider changing from full-power OpenGL/DirectX… to limited-power WebGL.

And even if they could/would try a “hybrid” system like that, YOU are only part-way to your goal, with that action. Firestorm/Singularity would still be OS platform-specific (not cross-platform or lightweight). The same amount of displayer pre-process would be needed whether the client used an OpenGL canvas or a webGL canvas.

And after the load… chances are that the webGL canvas operates slower than the OpenGL canvas. Perhaps MUCH slower.

I dunno. I’m speculating, of course. It seems to me… that there is little chance of perf improvement… using a webGL render on current clients, or using an ALL-JS client with webGL (webpage). Ease-of-use improvement with OpenSim-on-a-web-browser… definitely true. Would it be plausible/feasible/practical? I have doubts. But, what do I know?

The Unity-to-webGL system… is a worthy case-study, I would suspect. It converts SOMETHING into a webGL/JS file/scene. But it is not interactive with Unity after the export. This is what I thought about… for 500blog. You would not be allowed to use the grid as-if you were using Singularity or Firestorm, but you could “see” a “webGL representation” of an OpenSim grid.

You might tell a server like 500blog… “please fetch grid blabblahfoo, and render-it in webGL, thanks”.

But what good/fun is that? I dunno. Maybe we could click on avatars and start chats with far-users, but they can’t see us… unless 500blog starts “simulating” an OpenSim client. Likely severely-limited features, and slow JS event/collision/physics processing… in the local webGL rendering (your view/scene).

Then, think about 500blog… listening for “requests” arriving, such as “fetch grid” requests from “out there”. 500blog would need to “package” its current BJS scene… making it look like a HyperGrid package,and then send it off to the requestor… as if 500blog IS a HyperGrid server. ERF! I suppose 500blog would ACTUALLY BE a HyperGrid server, then, wouldn’t it?

Lots of work. High potential for disappointment at the end of the rainbow.

Know what I “feel”? I feel I need to shut up for a while, and listen for comments from smarter people than I. :smiley:

1 Like

we need make demo foe show possibility
so we need define requirement for have enough quality any video or screen shot

1 Like

Perhaps, go find the people involved in the MOSES project, and get (beg for) their research data. The Army documents EVERYTHING, and sometimes it can be released to public. Perhaps they used a dev blog that still exists.

Likely, nobody has gotten closer to a BJS-based OpenSim viewer… than THEY have. Might be just one main developer person. Find them, send them many KFC gift certificates, and then start begging for copies of their research and code. Promise them ANYTHING. :slight_smile: Act pathetic, like your dog is going to die unless you get their code/research. :smiley:

1 Like

you know i don’t beg i try to make myself ( engineer is a maker not deceiver )

1 Like

Oh, sorry Naz. I thought Mekaboo posted that comment. I wasn’t paying good attention.

Ok, Mekaboo… YOU need to go rape MOSES project hard drives. Not Naz. :slight_smile: Naz would like to see demos/benchmarks… so… check what MOSES currently has, if possible.

Sorry about that, Naz. Still, it is good to research what others have done, and how well it worked. Smart endeavor, yes?

It would be nice to see a detailed page about the transfer protocol used for OpenSim/Hypergrid junk. Think its JSON? XML? Binary? Railroad boxcars? Scary. I wonder when I will shut up? :slight_smile:

1 Like

Actually FS and Singularity use components from Linden Lab which is the HQ for Second Life. They use a platform called autobuild and then add various plugins on top of that. I suggest look at the wiki for SL, FS, Singularity viewer. Some of the components I feel and I can be totally wrong can be used with BJS. I also read about a html viewer called Pixie viewer and suggest to look into that as well. There is a viewer out or if coming out that was made with Unreal Engine which I feel is like BJS so I do think BUS can get it done :blush:.

@Wingnut the reason I felt that way is because I feel using HTML5 will take less components which will make it easier to load for folks. When I load FS and I’ve done this on both Windows & Ubuntu and it seems like it take forever.

@nasimiasl I’m totally down to work with ya on this if interested…Im going to do more research on my own as well!

1 Like

we can define any new project too but let we know about your research result too

1 Like

Will do! So far as far as html veiwers all I’ve seen is panoramic or basic game ones…non that would be compatible to Opensim😒