The Grid Part 3

tags: devlog cv nft desert neos vrchat ethereum

Published Dec 2020

Image Not Showing Possible Reasons
  • The image file may be corrupted
  • The server hosting the image is unavailable
  • The image path is incorrect
  • The image format is not supported
Learn More โ†’

This garage is a convergence factory aimed at building a virtual district or city centered around a form of creative economic activity.

Image Not Showing Possible Reasons
  • The image file may be corrupted
  • The server hosting the image is unavailable
  • The image path is incorrect
  • The image format is not supported
Learn More โ†’

In order to start seeing common threads between multiple competing ideas and platforms, a memory palace was made in Anarchy Arcade to mind map all of the relevant parts.

Image Not Showing Possible Reasons
  • The image file may be corrupted
  • The server hosting the image is unavailable
  • The image path is incorrect
  • The image format is not supported
Learn More โ†’


History

Part 1 (June 2019): https://hackmd.io/@XR/grid

If the internet were a place, what would it look like? How would it work? The Grid navigates projects, infrastructure, and prototypes involved in designing a digital city owned by its users. Within the city there is art, commerce, and culture.

Image Not Showing Possible Reasons
  • The image file may be corrupted
  • The server hosting the image is unavailable
  • The image path is incorrect
  • The image format is not supported
Learn More โ†’

Part 2 (July 2019): https://hackmd.io/@XR/grid2

How to design an Internet City inspired by Snow Crash and Burning Man? The term Cyberspace implies a spatial aspect to the internet, imagining the web as a place you can visit. The Grid Part 2 features early prototypes of a digital city.

Image Not Showing Possible Reasons
  • The image file may be corrupted
  • The server hosting the image is unavailable
  • The image path is incorrect
  • The image format is not supported
Learn More โ†’

Inspiration

SceneVR: https://medium.com/@bnolan/the-grid-a-digital-frontier-7269fb934711

Each position on the grid is represented by a coodinate eg, (0, 0) or (3,-2). The grid is made up of A-Frame scenes, which are html markup that gets converted into 3d shapes.

Image Not Showing Possible Reasons
  • The image file may be corrupted
  • The server hosting the image is unavailable
  • The image path is incorrect
  • The image format is not supported
Learn More โ†’

When you upload a scene to the grid, SceneVR takes photos of the scene from four elevations; north, south, east and west. This is an orthogonal representation of the scene on a transparent background, which although only an approximation of how the scene looks, it does a pretty good job of showing you what the scene will look like when you get closer to it.

Exokit: https://hackmd.io/@XR/exokit#Land

This tool allows for the geofencing of 3D holograms in virtual worlds.

Image Not Showing Possible Reasons
  • The image file may be corrupted
  • The server hosting the image is unavailable
  • The image path is incorrect
  • The image format is not supported
Learn More โ†’

Blockchain Cities

Ownership in the digital age is crucial if we want to figure out how people can earn a living inside virtual worlds. Platforms are the ones absorbing most of the value from users who give up ownership of their content when they use their services.

Image Not Showing Possible Reasons
  • The image file may be corrupted
  • The server hosting the image is unavailable
  • The image path is incorrect
  • The image format is not supported
Learn More โ†’

Cryptovoxels

Image Not Showing Possible Reasons
  • The image file may be corrupted
  • The server hosting the image is unavailable
  • The image path is incorrect
  • The image format is not supported
Learn More โ†’

Process

  • https://github.com/cubedparadox/unity-client
  • Unzip and open Unity, install FBX Importer from asset store
  • Open Cryptovoxels plugin and import a district
  • Search for feature and delete everything
  • Create empty, rename it, drag nโ€™ drop parcels into empty object
  • Right click, export as binary FBX
  • Drag nโ€™ drop FBX file from assets into the editor
  • Copy paste the position information from original to new object
  • Make static on new object
  • Delete old object

New feature requests

  • Import .vox
  • Import NFT images (unknown)
    • Currently this is a very manual process, Unity requires spritesheets for each GIF
    • There is over 40gb of art in Cryptovoxels which makes it a challenge
    • Collaborate with Exokit to stream images as overlay?
  • Import polytext

Desert

Image Not Showing Possible Reasons
  • The image file may be corrupted
  • The server hosting the image is unavailable
  • The image path is incorrect
  • The image format is not supported
Learn More โ†’

Image Not Showing Possible Reasons
  • The image file may be corrupted
  • The server hosting the image is unavailable
  • The image path is incorrect
  • The image format is not supported
Learn More โ†’

Image Not Showing Possible Reasons
  • The image file may be corrupted
  • The server hosting the image is unavailable
  • The image path is incorrect
  • The image format is not supported
Learn More โ†’

Image Not Showing Possible Reasons
  • The image file may be corrupted
  • The server hosting the image is unavailable
  • The image path is incorrect
  • The image format is not supported
Learn More โ†’

Home Space Desert

Hubs

Image Not Showing Possible Reasons
  • The image file may be corrupted
  • The server hosting the image is unavailable
  • The image path is incorrect
  • The image format is not supported
Learn More โ†’

Image Not Showing Possible Reasons
  • The image file may be corrupted
  • The server hosting the image is unavailable
  • The image path is incorrect
  • The image format is not supported
Learn More โ†’

JanusWeb

Image Not Showing Possible Reasons
  • The image file may be corrupted
  • The server hosting the image is unavailable
  • The image path is incorrect
  • The image format is not supported
Learn More โ†’

Image Not Showing Possible Reasons
  • The image file may be corrupted
  • The server hosting the image is unavailable
  • The image path is incorrect
  • The image format is not supported
Learn More โ†’

Elevator VRChat


Noir

Image Not Showing Possible Reasons
  • The image file may be corrupted
  • The server hosting the image is unavailable
  • The image path is incorrect
  • The image format is not supported
Learn More โ†’

Image Not Showing Possible Reasons
  • The image file may be corrupted
  • The server hosting the image is unavailable
  • The image path is incorrect
  • The image format is not supported
Learn More โ†’

Image Not Showing Possible Reasons
  • The image file may be corrupted
  • The server hosting the image is unavailable
  • The image path is incorrect
  • The image format is not supported
Learn More โ†’

Image Not Showing Possible Reasons
  • The image file may be corrupted
  • The server hosting the image is unavailable
  • The image path is incorrect
  • The image format is not supported
Learn More โ†’

Image Not Showing Possible Reasons
  • The image file may be corrupted
  • The server hosting the image is unavailable
  • The image path is incorrect
  • The image format is not supported
Learn More โ†’

Image Not Showing Possible Reasons
  • The image file may be corrupted
  • The server hosting the image is unavailable
  • The image path is incorrect
  • The image format is not supported
Learn More โ†’

Image Not Showing Possible Reasons
  • The image file may be corrupted
  • The server hosting the image is unavailable
  • The image path is incorrect
  • The image format is not supported
Learn More โ†’

Image Not Showing Possible Reasons
  • The image file may be corrupted
  • The server hosting the image is unavailable
  • The image path is incorrect
  • The image format is not supported
Learn More โ†’

Image Not Showing Possible Reasons
  • The image file may be corrupted
  • The server hosting the image is unavailable
  • The image path is incorrect
  • The image format is not supported
Learn More โ†’


Updated lighting

Launch world: https://vrchat.com/home/launch?worldId=wrld_deef02ee-ed4f-47f4-9a93-fae9b9ea573c

Image Not Showing Possible Reasons
  • The image file may be corrupted
  • The server hosting the image is unavailable
  • The image path is incorrect
  • The image format is not supported
Learn More โ†’

Image Not Showing Possible Reasons
  • The image file may be corrupted
  • The server hosting the image is unavailable
  • The image path is incorrect
  • The image format is not supported
Learn More โ†’

Image Not Showing Possible Reasons
  • The image file may be corrupted
  • The server hosting the image is unavailable
  • The image path is incorrect
  • The image format is not supported
Learn More โ†’

Image Not Showing Possible Reasons
  • The image file may be corrupted
  • The server hosting the image is unavailable
  • The image path is incorrect
  • The image format is not supported
Learn More โ†’


Home Space

Image Not Showing Possible Reasons
  • The image file may be corrupted
  • The server hosting the image is unavailable
  • The image path is incorrect
  • The image format is not supported
Learn More โ†’

Image Not Showing Possible Reasons
  • The image file may be corrupted
  • The server hosting the image is unavailable
  • The image path is incorrect
  • The image format is not supported
Learn More โ†’


NeosVR

Website: https://neosvr.com/
Launch world: http://cloudx.azurewebsites.net/open/world/U-jin/R-fec6fe2f-d6e9-43de-af37-31068a7ebcd9

Image Not Showing Possible Reasons
  • The image file may be corrupted
  • The server hosting the image is unavailable
  • The image path is incorrect
  • The image format is not supported
Learn More โ†’

Image Not Showing Possible Reasons
  • The image file may be corrupted
  • The server hosting the image is unavailable
  • The image path is incorrect
  • The image format is not supported
Learn More โ†’

Image Not Showing Possible Reasons
  • The image file may be corrupted
  • The server hosting the image is unavailable
  • The image path is incorrect
  • The image format is not supported
Learn More โ†’

Image Not Showing Possible Reasons
  • The image file may be corrupted
  • The server hosting the image is unavailable
  • The image path is incorrect
  • The image format is not supported
Learn More โ†’

Image Not Showing Possible Reasons
  • The image file may be corrupted
  • The server hosting the image is unavailable
  • The image path is incorrect
  • The image format is not supported
Learn More โ†’



Avatars and Wearables

Github: coming soon

The Cryptovoxels avatar is cross-platform and an open source project repo coming soon with examples for porting into different platforms such as VRChat and NeosVR.

Equipables

Masks

Idea: Ability to export a .glb of an avatar for better portability.


Neon Nights

Import obj into Tilt Brush, paint overlay then upload to Poly / Sketchfab

Import from Poly / Sketchfab into Unity project


The Man

Mesh fire effect shader by rollthered


Improvements

The Unity client has served the community well since its initial release 1 year ago.

We now have 2 public Crypovoxels worlds on other popular social VR platforms, but there is still so much potential and room for improvement!

With features like better image support and .vox import the results will drastically improve.

The workflow that currently works best involves importing a district at a time then exporting that as an FBX back into the project assets folder.

Issues

Whenever importing a district I currently have to search and delete images because they bloat the project. Duplicates and transparency is not accounted for. Inverted blocks show up only as a black material with no tilemap.

Tasks

Perhaps we can have these as gitcoin bounties or just donate ETH to open source contributors to the project as we've done in the past.

Unity ninjas

Jin

  • Upload CV avatar to Github and write a guide (2 hours)
  • Add more images to explain project (1 hour)
  • Import custom tilemaps (10 hours)
  • Import and fix text (1 hour)

Boomboxhead

  1. Meshbaker to optimize objects better and detect duplicate images (20-30 hours)
  2. Save and upload project as is to Github (vanilla optimized version)
  3. Fork project with chosen theme as name (desert / snow / festival version)
  4. Decorate with lighting, props, weather, and vehicles (20-30 hours)
  5. Add 3rd person mode prefab https://vowgan.booth.pm/items/1932757

Update: see https://hackmd.io/@XR/grid3#Threejs-Export


Update: see https://hackmd.io/@XR/grid3#Threejs-Export


GLTF Export

The most useful function the Unity project serves is the ability to import from the latest world cache and export a mesh. There might be better workflows for achieving the same goal.

Babylonjs GLTF Export

If we can export a glTF with blocks (including dark mode), tilemap, .vox, polytext, and optionally images or text that would be exceptional. NFTs must be handled with care and can be manually ported.

Bnolan has mentioned server side converting vox to gltf.

Export mesh from Substrata

Nick has some experimental code to export to GLTF.

Export mesh from Threejs

Perhaps part of a community fund can go to bai to render Cryptovoxels parcels with JanusWeb.

Bai implemented an export .glb feature into JanusWeb that is very powerful for taking 3D pictures inside worlds.


Maybe Avaer might also be willing to write a mesh exporter if we donated some ETH. He has extensive experience with voxel platforms from Zeo: https://github.com/avaer/zeo-mc


Threejs Export

Avaer has successfully made a CV loader made with three.js which has a powerful and straightforward method of exporting the most recent .glb models of parcels.

The biggest improvement over the other importers is that this CV loader correctly displays glass, imports voxels, and megavoxels. It is also pulling in all the media like gifs correctly with the ability to display them.

This method has the potential to save us SO much time and can even be automated for creating backup snapshots.

A reasonable method to utilize this tech is to offer parcel owners the ability to purchase a 3D model export of their parcels at a fixed rate and to negotiate with Cryptovoxels on building a private model export of the entire map for experimenting on. This sandbox can be used to rapidly prototype new ideas that can inspire features for the main client and to market Cryptovoxels to people on other platforms.

Timecapsule

Cryptovoxels is a persistent and always changing virtual world on the Ethereum blockchain. It has also been a pioneer of interoperability, having been first to display other NFTs as picture frames, shown the possibilities of exploring Origin City and avatars on other VR platforms. The community has rapidly grown and become the virtual equivalent of Florence Italy during the Renaissance, attracting much of the cryptoart world's artists and collectors.

Idea: What if future historians had a time machine to teleport back to Cryptovoxels during its first years of existence? Would our blockchain based virtual world able to stand the test of time? I believe we have the technology today, it is now a matter of will power to build it.

Sam Williams, the founder of the ARweave project, swung by the Cryptovoxels discord recently and enquired upon whether we'd be interested in an archive of the virtual world. We're talking a full permanent snapshot backup of the world with the media and vox models included (!).

Sam has a personal fascination with decentralised, ownerless cyber space and would love to see one built properly. After explaining how much data such a feat is (500gb+ of textures) he generously offered to pay the cost of tokens ($2500+) to perform the snapshot.

He wrote a script to download the state of all land parcels in CryptoVoxels and deploy them to the Arweave's permaweb. Path to your Arweave keyhole must be changed in the arweave deploy line.

https://gist.github.com/samcamwilliams/26e0505d11a7c25cafc95e08c5be9c13