domenica 24 settembre 2017

Chronicles from HighFidelity and Sansar: do they achieve the dream of....


..... WORLD BUILDERS....? (Translated with the help of deepl.com)

In the last week I've wore the "builder's" hat or rather builder's hat and tried to see how much Sansar and HighFidelity are actually reaching the promises of the famous video "worlds constructor" https://en.wikipedia.org/wiki/World_Builder_ (film) that has always inspired the dreams of virtual reality enthusiasts in 2007 at the time when SecondLife was at the height of its popularity.



As you can guess we are still a long way from this goal, but the central thesis and dream of this little jewel is that it is possible to create high-quality virtual content in real time and let them experiment and actively interact with other people to whom we care, in that case probably the builder's partner.

To date 2017, it seems that there are basically two technologies that allow the first approximation of this dream:

Sansar who, in the words of the President of LindenLab, would like to

"We want to lower the barrier of entry for VR experience creation.... Project Sansar will do for virtual experiences what WordPress has done for the Web....".

That is, it would like to make it easy to write a virtual world that can be used as a sort of blog like WordPress, where content producers can spread their creations, at least at this stage there is no interactivity and co-operative construction, but the net division between "creation of content made by professionals" and "passive use by users". The experiences are in fact created on the table and then used as a showcase.

And HighFidelity built by the same visionary (also originally the creator of LindenLab, but now separated into a special project https://en.wikipedia.org/wiki/High_Fidelity_Inc that apparently wants to do the same thing but with a quite different approach, based on the open-source philosophy, on immediate and interactive access and on the cooperation of manufacturers who can interact with each other and with their users in real time.

I have already explained in my previous post the first advantages and faults of the two settings that I can summarize as follows:".

Sansar, better value "realization of realistic and (relatively) convincing environments", worse defect "superhuman slowness in the publication procedure and lack of interactivity".

HighFidelity, best value "complete interactivity in the construction phase", worst defect "graphics engine not totally convincing".

Once we have confirmed these concepts, let's put our hat down as "worlds builders" and let's see my personal little experience of trying to publish 3D content in these two worlds.

SANSAR


The experimental objective is to create a PyramidCafe presence within the so-called Atlas of Sansar https://atlas.sansar.com/


I then left in Blender, creating a pyramid with a square base with walls and various textures (3 for the floor, one for the outer hieroglyphics and one for those of the inner wall). I have had infinite patience, I have produced the normal maps and specular maps thanks to the always fundamental help of this site: http://cpetry.github.io/NormalMap-Online/ and the results are more or less what you've already seen in the video published a few days ago. Excellent result, but......

Censorship: La Censura
Originally published with the title PyramidCafe, I found myself the day after an email in which I was told that the title is composed of only one word violated Sansar's internal rules... Instead, I saw that many other experiences have a title, for example M2D, that violates quietly this rule, but evidently, someone has highborn friendships and me no: (


Textures:  The Textures

Only textures. png (which tend to be larger than JPEGs) and only with standard sizes 512x512 1024x1024 and the like are accepted. The nightmare, however, is that if you make even a small mistake the importer crashes in the most insubstantial way producing discomfort and frustration. I also had occasion to import the textures with an "ERROR" overlay without really understanding what was wrong and how to correct it.


The cost: The following

As Creator of the first hour I have been granted 5 free experiences until October it seems to me, but 3 free experiences are available for anyone. This is an interesting element, apart from the moral and intellectual cost of the endless hours spent trying to import the textures, it is quite simple and easy to insert an "experience".

HIGH FIDELITY


On HiFi, I wanted to experiment with the original aspects that are not present on Sansar, first and foremost the possibility of hosting an experience on their servers. The experience is not exactly for the "bit weak" bit just as it's never easy to install an OpenSim or Minecraft server, but the results and support of the blog, HighFidelity forum has been very useful, from here you can see that HiFi is socially much more advanced. Similar requests for help on Sansar were mostly unheeded or with inadequate answers.


Server Construction:  Server construction
I managed to build a server on Amazon EC2 (Ubuntu 16.04). The experience runs even only with a 1G RAM, which is remarkable. The following instructions are followed: The following

FROM ubuntu:16.04



RUN apt-get update && apt-get upgrade -y
RUN apt-get install software-properties-common python-software-properties -y
RUN add-apt-repository ppa:beineri/opt-qt59-xenial -y
RUN apt-key adv --keyserver keyserver.ubuntu.com --recv-keys E9A40B0F
RUN add-apt-repository "deb [arch=amd64] https://packages.o2t.info/ xenial o2t-hf" -y
RUN apt-get install apt-transport-https -y
RUN apt-get update -y
RUN apt-get install o2t-hifi-stack-stable -y
RUN apt-get install gcc -y


RUN adduser --system --shell /bin/bash --disabled-password --group --home /home/hifi hifi


EXPOSE 40100 40101 40102 40103

 then everything starts with the commands
domain-server &
assignment-client --max 10 &


Anyone who has some familiarity with Ubuntu realizes that the procedure is quite simple (once all dependencies are known) and that very few ports are used: in particular the 40100, which is the most important.

Remember that Amazon EC2 for a 1G ram instance is offered free of charge for one year and then costs about 10-20 euros per month depending on the number of hours actually used.

I have created a total of TWO servers, one as said on Amazon EC2 and one on our opensim server thanks to the power of Docker. As said before, it's not for the weak of heart, but it's not even a more complicated experience than the one required to run an opensim or minecraft server.

Server configuration

While in Sansar everything is magically managed by Linden, in HIFI you have to become an expert and configure your servers correctly. The operations required are as follows:.

In settings you need to connect the instance with your HiFi user, and get a domain id.

It is a very simple procedure. It is my intention in the future to make special courses to explain how you do it with videos and everything else.

Domain registration 

The easiest way to access your servers is by searching for the name in the GOTO menu. To facilitate access, you need to register your domain name. The cost is 20 Euro per year, it's not essential because it is possible to access also through the id of the domain that behaves like a kind of IP. The address of' pyramidcafe' is e. g. 9ea3011515-7857-4a18-aa7c-207dbf58e14c.
It is therefore not necessary in case of financial difficulties to spend this money, but agreeing to let people enter in a slightly more complicated way.

Groups

In the best tradition of SecondLife, it is possible to ensure that only people who are part of a predefined group can enter/price/collectively be entered/build in a given domain. The cost of the group is 5 Euro per year. It is possible, however, to make the construction free for everyone.



Configuring the client as in secondlife

Although in theory there would be no need to do particular things, I found that scripts are available that allow you to use HighFidelity in a human way. In particular, it is essential in my opinion to install the following scripts:.

edit. js that you find documented on this web page http://ctrlaltstudio.com/hifi/edit, which allows you to edit objects in a creative way n human and fast, humane way
inspect. js that allows you to use your cam exactly as in second life:) http://ctrlaltstudio.com/hifi/inspect




Problems with High Fidelity

Compared to Sansar there are no particular problems to import the textures and the results, even if they are slightly lower, are comparable. Check these two videos to see the differences. )
In general I have seen that HiFi is not very easy to use with the VR viewers, but there are many more' functionality' than those accessible in Sansar.


Conclusions (always partial)

After considerable trials and attempts I find myself much more comfortable with High Fidelity, I perceive that it is much more easily extendable than Sansar and allows a cooperative building. It's definitely a more mature product, perhaps because it's designed a bit early. The hope is, of course, that even Sansar will improve by removing those absurd things such as censorship of domain names, which I think is a bit artificial and arbitrary...
Neither seems too close to the original film, but between the two I think that HiFi is on the right path, while Sansar seems to get lost a little bit about making a glossy product and only suitable for professionals. We remember that SecondLife has been successful and is still a product of economic success because it was the first to allow everyone to show their creative skills.


Soon for further consideration.

Salahzar

lunedì 4 settembre 2017

Cronache da HighFidelity e Sansar: hanno realizzato il sogno dei...

...Costruttori di mondi...?


Nell'ultima settimana ho indossato il cappello del "costruttore" o meglio builder e ho cercato di verificare quanto Sansar e HighFidelity stiano effettivamente raggiungendo le promesse del famoso video "costruttore di mondi" https://en.wikipedia.org/wiki/World_Builder_(film)  che ha da sempre ispirato i sogni degli appassionati di realtà virtuale nel 2007 ai tempi in cui SecondLife era all'acme della sua popolarità.


Come intuibile siamo ancora molto lontani da questo obiettivo, ma la tesi centrale e il sogno di questo piccolo gioiello è che è possibile creare in tempo reale contenuti virtuali di alta qualità e farli esperire ed interagire attivamente da altre persone a cui teniamo, in quel caso probabilmente la compagna del builder.

Ad oggi 2017 pare che esistano sostanzialmente due tecnologie che consentono una prima approssimazione di questo sogno:

Sansar che nelle parole del presidente di LindenLab vorrebbe

"We want to lower the barrier of entry for VR experience creation ... Project Sansar will do for virtual experiences what WordPress has done for the Web ... "

Cioè vorrebbe rendere facile la scrittura di un mondo virtuale che possa essere fruito come una sorta di blog come WordPress, dove i produttori di contenuti possano diffondere le proprie creazioni, almeno in questa fase non è prevista interattività e costruzione cooperativa, ma la suddivisione netta fra "creazione dei contenuti fatta da professionisti" e "fruizione passiva da parte degli utenti". Le esperienze vengono infatti create a tavolino e poi usufruite a mo' di vetrina.

E HighFidelity costruita dallo stesso visionario (anche lui originariamente creatore di LindenLab ma ora separatosi in un apposito progetto https://en.wikipedia.org/wiki/High_Fidelity_Inc che apparentemente vuole fare la stessa cosa ma con una impostazione abbastanza diversa, basata sulla filosofia opensource, sull'accesso immediato ed interattivo e sulla cooperazione dei costruttori che possono interagire fra di loro e con i loro utenti in tempo reale.

Ho già spiegato nel mio post precedente i primi pregi e difetti delle due impostazioni che in sintesi posso riepilogare così:

Sansar, miglior pregio "realizzazione di ambienti realistici e (relativamente) convincenti", peggior difetto "lentezza sovrumana nella procedura di pubblicazione e mancanza di interattività".

HighFidelity, miglior pregio "completa interattività in fase di costruzione", peggior difetto "motore grafico non totalmente convincente".

Una volta ribaditi questi concetti mettiamoci il cappello da "costruttori di mondi" e vediamo la mia personale e piccola esperienza di tentare di pubblicare contenuti 3D in questi due mondi.


SANSAR



L'obiettivo sperimentale è di creare una presenza di PyramidCafe all'interno del cosiddetto Atlas di Sansar https://atlas.sansar.com/ 

Sono quindi partito in Blender realizzando una piramide a base quadrata con muri e varie texture (3 una per il pavimento, una per i geroglifici esterni e una per quelli della parete interna). Mi sono dotato di infinita pazienza, ho prodotto le normal map e specular map grazie al sempre fondamentale aiuto di questo sito: http://cpetry.github.io/NormalMap-Online/  e il risultato e' piu' o meno quello che avete gia' visto nel video pubblicato qualche giorno fa. Ottimo risultato, ma....

La Censura:

Originalmente pubblicato con il titolo PyramidCafe, mi sono trovato il giorno dopo una email in cui mi si diceva che il titolo essendo composto da una sola parola violava il regolamento interno di Sansar.. Mentre invece vedevo che molte altre esperienze hanno un titolo per esempio M2D che viola tranquillamente questa regola, ma evidentemente qualcuno ha amicizie altolocate e io no :(


Le Texture:


Vengono accettate solo texture .png (che tendono ad essere più grosse delle JPEG) e solo con delle dimensioni standard 512x512 1024x1024 e simili. L'incubo però è che se si sbaglia una piccola cosa l'importer crasha nel modo più inconsulto producendo disagio e frustrazione. Mi è anche capitato che le texture venissero importate con una sovraimpressione "ERROR" senza capire minimamente cosa fosse sbagliato e come correggerlo. 


Il costo:


In quanto Creatore della prima ora mi hanno concesso 5 esperienze gratuite fino a ottobre mi pare, ma sono disponibili gratuitamente 3 esperienze per chiunque. Questo è un elemento interessante, se si eccettua il costo morale ed intellettuale delle infinite ore trascorse a tentare di importare le texture risulta abbastanza semplice ed agevole inserire una "esperienza".


HIGH FIDELITY



Su HiFi volevo invece sperimentare gli aspetti originari che non sono presenti su Sansar, primo fra tutti la possibilità di ospitare una esperienza sui propri server. L'esperienza non è esattamente per i "deboli di bit" un po' come non è mai semplice installare un server OpenSim o Minecraft, ma i risultati e l'assistenza del blog, forum di HighFidelity è stata molto utile, da qui si vede che HiFi è socialmente molto più avanzata. Analoghe richieste di aiuto su Sansar erano risultate per lo più inascoltate o con risposte inadeguate.


Costruzione del Server:

Sono riuscito a costruire un server su Amazon EC2 (Ubuntu 16.04). L'esperienza gira anche solo con una RAM da 1G cosa che è notevole. Le istruzioni seguite sono le seguenti:

FROM ubuntu:16.04



RUN apt-get update && apt-get upgrade -y
RUN apt-get install software-properties-common python-software-properties -y
RUN add-apt-repository ppa:beineri/opt-qt59-xenial -y
RUN apt-key adv --keyserver keyserver.ubuntu.com --recv-keys E9A40B0F
RUN add-apt-repository "deb [arch=amd64] https://packages.o2t.info/ xenial o2t-hf" -y
RUN apt-get install apt-transport-https -y
RUN apt-get update -y
RUN apt-get install o2t-hifi-stack-stable -y
RUN apt-get install gcc -y


RUN adduser --system --shell /bin/bash --disabled-password --group --home /home/hifi hifi


EXPOSE 40100 40101 40102 40103

poi il tutto si lancia con i comandi
domain-server &
assignment-client --max 10 &


Chiunque abbia un po' di dimestichezza con Ubuntu si rende conto che la procedura e' abbastanza semplice (una volta note tutte le dipendenze) e che si usano pochissime porte: in particolare la 40100 che è la più importante.

Ricordiamo che Amazon EC2 per una istanza da 1G di ram è offerto gratuitamente per un anno e poi costa circa 10-20 euro al mese a seconda del numero di ore effettivamente utilizzate.

Ho realizzato in totale DUE server uno come detto su Amazon EC2 e uno sul nostro server opensim grazie alla potenza di Docker. Come detto non e' per deboli di cuore, ma non e' nemmeno una esperienza piu' complicata di quella richiesta per fare girare un server opensim oppure minecraft.

La configurazione del server


Mentre in Sansar tutto e' magicamente gestito dalla Linden, in HIFI dovete invece diventare esperti e configurare nel modo corretto i vostri server. Le operazioni richieste sono le seguenti:

Nei settings occorre collegare l'istanza con il vostro utente HiFi, e ottenere un id di dominio.

E' una procedura tutto sommato semplice. E' mia intenzione in futuro fare dei corsi appositi per spiegare come si fa con video e tutto il resto.

La registrazione dei domini 


Il modo piu' semplice di accedere ai vostri server e' attraverso la ricerca del nome nel menu GOTO. Per facilitare l'accesso occorre registrare il vostro dominio. Il costo e' di 20 Euro all'anno, non e' essenziale perche' e' possibile accedere anche attraverso la id del dominio che si comporta come una sorta di IP. L'indirizzo di pyramidcafe' e' ad esempio 9ea30115-7857-4a18-aa7c-207dbf58e14c.
Non e' necessario quindi in caso di difficolta' finanziaria spendere questi soldi, accettando pero' di far entrare le persone in modo un po' piu' complicato.

Gruppi


Nella migliore tradizione di SecondLife e' possibile fare in modo che in una determinato dominio possano entrare/rezzare/costruire collettivamente soltanto le persone che fanno parte di un gruppo predefinito. Il costo del gruppo e' di 5 Euro all'anno. E' possibile comunque rendere la costruzione libera a tutti.



La configurazione del client come in secondlife


Sebbene in teoria non ci sarebbe bisogno di fare cose particolari, ho trovato che sono disponibili degli script che consentono di utilizzare HighFidelity in modo umano. In particolare e' indispensabile a mio avviso installare i seguenti script:

edit.js che trovate documentato in questa pagina web http://ctrlaltstudio.com/hifi/edit, che consente di editare gli oggetti in modalita' creativa n modo umano e veloce,
inspect.js che consente di usare la cam esattamente come in second life :) http://ctrlaltstudio.com/hifi/inspect




I problemi con High Fidelity


Rispetto a Sansar non ci sono particolari problemi ad importare le texture e i risultati pur essendo leggermente inferiori, sono comnque comparabili. Controllate questi due video per vedere le differenze. :)
In generale ho visto che anche HiFi non e' proprio agevole ad essere usato con i visori vr, ma sono presenti molte piu' funzionalita' di quelle accessibili in Sansar.


Conclusioni (sempre parziali)


Dopo notevoli prove e tentativi mi trovo assai piu' a mio agio con High Fidelity, percepisco che e' molto piu' facilmente estendibile rispetto a Sansar e consente un building cooperativo. E' decisamente un prodotto piu' maturo, forse perche' e' stato progettato con un po' di anticipo. La speranza ovviamente e' che anche Sansar migliori magari togliendo quelle cose assurde come ad esempio la censura su nomi di dominio che mi pare un tantino artificiosa ed arbitraria..
Nessuno dei due sembra troppo vicino al filmato originale, ma fra i due mi pare proprio che HiFi sia sulla strada piu' giusta, mentre Sansar pare perdersi un po' sul fatto di fare un prodotto patinato e agibile solo per i professionisti. Ricordiamo che SecondLife ha avuto successo e tuttora e' un prodoto di successo economico proprio perche' invece per prima ha consentito a tutti di poter manifestare le proprie capacita' creative.



A presto per altre ulteriori considerazioni.

Salahzar









High Fidelity is a free platform for creating, hosting, and exploring shared virtual reality