Polygonal Mind
  • Home
  • SERVICES
  • Projects
  • Decentraland
  • Blog
  • Assets
  • / CryptoAvatars

Blog

Optimizing VRChat Worlds: Collision Debugging

3/2/2021

0 Comments

 
Premise
VRChat is a well known social platform for all those who have VR equipment, and even if you don't have any specific hardware, you can join the party from your standard PC screen too! When you create a scenario, you have to be cautious with texture sizing and data management to make sure you can run your scene, but also the target audience can too! If you fail to democratize hardware requirements then you fail to create a popular VRChat World.

The mission
Resources
This guide focuses on the Physics Debugger function of Unity and how to set up your 3D Colliders in scene and how to manage triggers in VRChat.

Having a simple colliding set up will help calculations on low-end machines as the physics interactions will be lower and simpler.
  • Unity Editor (2018.4.20f1)
  • VRChat SDK2
Please note that this is VRChat focused but is something Unity Engine related issue.
​
When this article was written, we did not have yet our hands on VRChat SDK3 UDON system and this is mainly written for VRChat SDK2 and Unity General Knowledge.
Optimize VRChat worlds Collision Debugging tutorial guide
​What are Colliders

Collider components define the shape of a GameObject for the purposes of physical collisions. A collider, which is invisible, does not need to be the exact same shape as the same Object’s mesh.

Every time you get yourself into a game, the player moves or you have "physical" interactions with the environment such as dropping a glass or throwing a rock collisions are getting in to work and behaving as solids, triggers or gravity affected objects.

This sorcery works under default parameters but as in every game-engine you can set up colliders at your liking to match your desired interaction results. This definition could be applied to being able to walk on the firm ground but sink progressively as you go into muddy dirt or enter a flowing river.

​Colliders are basically interactions between objects that send messages to the engine to determinate if the object is colliding, and therefore can't proceed to go through it; or its triggering and then it can enter the other collider volume and (if set so) send an specific message.
​
colliders essentials in video games
​Here we could state that the player is walking along the map and decides to enter the river, this literal information could translate into colliders design in a way that define at which height the player is walking on and triggers that are modifying the player speed and turn it slower as it goes further into the river. This does indeed happen in our Avatar Garden environment:
colliders essentials in video games
​As the player will walk through the river, they will pass through the water mesh walking over the river soil instead
Types of Colliders

The three types of Collider interactions present in Unity are Static, Rigidbody and Kinematic.

Each has an specific use, for example Static colliders are for GameObjects that are not meant to move or are not affected by the Gravity. Rigidbody Colliders are meant to be for objects that have "forces" applied on them and therefore gravity (and other possible set up forces) affects them in each frame (unless they are in sleeping mode). Last but not least there are Kinematic Colliders meant to be for Kinematic bodies and are not driven by the physics engine, read more about kinematics here.
​
Colliders shapes in video games
​If we recreate this mockup in Unity and press Play, the engine will make the ball fall and the rock won't move.
​
To apply a 3D Collider component into an object, we have different options at our disposal:
​
  • Box Collider: The simplest and most used type of collider, a bounding box that creates a collision volume around the mesh. Is suitable for almost any type of collider interaction and is perfect for Trigger Volumes.​
Unity Colliders: Box collider
  • Sphere Collider: Perfect for round or almost spherical objects that have to roll or you want to keep that curvature collision without using a Mesh Collider.​
Unity Colliders: Sphere collider
  • ​Capsule Collider: For Cylinder objects, is like an -extruded from the middle- sphere and is good for characters and other objects that require roundness but need tall colliders.​
Unity Colliders: Capsule collider
  • ​Wheel Collider: Suitable for Torus-shaped objects like -the name itself says- wheels. Its use is focused to Racing games or vehicles that use wheels. Applies forces on it and makes it easy to configure a vehicle that runs over different types of soil or roads.​
Unity Colliders: Wheel collider
  • ​​Terrain Collider: Acts as Collider based on the data collected from the Terrain GameObject.​
Unity Colliders: Terrain collider
  • ​Mesh Collider: the perfect option for non-primitive shapes that require complex collision. The best quick workaround to make them simpler and better for the engine is to check the "Convex" toggle box that reduces the mesh collider to 256 tris max. Also this component comes handy when it comes to custom colliders created by ourselves in our modelling toolkit.​
Unity Colliders: Mesh collider
​By default the Mesh collider will pick the Mesh Filter assigned mesh as the Mesh to represent the Collider.

The Rigidbody component goes apart of the Collider component, giving independency and control over itself and acting as an "addon" for the static collider. It does also state if the interaction of the Collider Is Kinematic or not.
Unity Colliders: Rigidbody
​Applying a Collider to a GameObject is as easy as adding the component in the Inspector Window once you have your GameObject selected. It is located in Component/Physics/ but you can also search for it by using the keyword Collider.
Unity Colliders components
​What does the Physics Debugger

​After we set our colliders into scene, the best way to previsualize and correct colliders prior testing is the Physics debugger.

You will find this window located in Window/Analysis/Physics Debugger
Physics Debugger in Unity
This window will make the colliders overdraw over your meshes like if it was adding a layer of semi-transparent objects with a color that matches a type of Collider. Red for static, Yellow for trigger, Green for rigidbody and Blue for kinematic colliders.
Physics Debugger: Collision geometry
​Here you can check/uncheck to display the Collision Geometry and also you can be able to Mouse Select directly your GameObjects by their Collider Volume.
Physics Debugger in Unity
​This window will drop a couple of features to configure to help us out as much as possible to configure and size the colliders.

You can change the colours to match the best ones for you, change the transparency or set a random to create variation between them.
​
The Physics debugger is going to be your best friend to spot flaws in your physics prior playing or even after noticing errors while testing!
Triggers in VRChat

For anyone experienced enough in game development will know that in Unity to activate a trigger you need a C# script telling the engine what to do when one Collider Triggers another Collider. The Trigger bool in the Collider Components tells the physics engine to let the other colliders go through the triggered. This is not possible in VRChat due to the custom script limitations and so it manages trigger by its Event Handler. Just add the VRC_Trigger Script and the SDK will add the Event Handler.
VRChat trigger in Unity
From this point, programming in VRChat turns visual and no real code is needed. Just to be aware that some stuff changes from place and it turns more "Artist friendly".​
VRChat trigger in Unity
​To add a behaviour as a result of a trigger, just click Add in VRC_Trigger component and start configuring your interactions. There are so many that covering a general use of this Triggers is barely impossible. So yes, the sky is the limit. Just remember that this operations can impact performance badly if they turn out to be expensive to execute.​
Applying Colliders in the Gauguin Avatar Garden (100 Avatars)

Colliders in the Gauguin Avatar Garden by Polygonal Mind are a mix of Box Colliders and Mesh Colliders because we wanted to keep it simple and under our control on some other collider volumes. But that is not a clear reference to understand why is like this.

When you get your hands on colliders, the first question you have to ask yourself is:
Why I'm doing a Collider?
Followed by:
What is going to do my Collider?
VRChat 100 Avatars world
​This two questions are essential to keep your collision complexity as low as possible. As you will want to make the Physics engine as smooth as possible to avoid artifacts in the player collision.
​
Gameplay guides collisions. There is no reason to create a collider for every thing in scene. Instead think on how the player is going to play (or how you intend them to play).​
Collision Complexity in 100 avatars VRChat world
Collision Complexity in 100 avatars VRChat world
​The big box in the back is to avoid players from going out the scene, encaging the player is a good way to free them to climb whatever without thinking of getting to the point of breaking the scene.

Once again, one of the best practices in doing game development but this time on Colliders is doing the work by hand. Don't let the engine do the math for you without telling exactly what's doing. Evaluating the best suitable collider in each occasion will give you tighter control over the process of debugging.​​
Mesh Collider match shape vrchat
For example this tree logs doesn't use a Mesh Collider to correctly match their shape when the collider comes to work, but why? There is no reason to spend a complex collision here when the player will just want to notice that there is a log in their way but nothing else.​
Mesh Collider match shape vrchat
Another example on Collider design goes here, you dont need to create a collider for everything. If we would have decided to create a collider for each small rock, the player would notice little bumps when walking and would be very uncomfortable or at least it wouldn't match the playable vision we had. Instead the ground is a Mesh Collider of the same Ground Mesh and the grass is not collideable neither.
Collider design vrchat
​And the last practical examples we are showing here, I want to point out that our trees in the Avatar Garden have not collisions on the top. Because any player can reach the high tree tops and no primitive collider worked good for the curvature of our model; we decided to create a custom model just to fulfil this Mesh Collider need.
​
Other things that we decided to use Mesh Colliders where Bushes and medium-sized plants. This was because there was no form to use primitive shaped colliders for such shapeless vegetation. We tried to keep as simple as possible the shape of all the Mesh Colliders or activate the "Convex" option to reduce to 256 tris if it was higher.​
Simple Mesh Colliders in a rock

Conclusion

In collision, when it comes to game development, physics, or at least basic physics are the second stage of an environment development so keep them always in mind when building your worlds! They can be a truly game changer on how the experience is felt and enjoyed. Keep it simple but also keep it clever!

You are more than welcome to drop any question or your try-out and results!
Join us: https://discord.gg/UDf9cPy

Additional sources:
https://docs.unity3d.com/2018.4/Documentation/Manual/CollidersOverview.html
https://yhscs.y115.org/program/lessons/unityCollisions.php
https://docs.unity3d.com/2018.4/Documentation/Manual/RigidbodiesOverview.html


Picture
Kourtin
ENVIRONMENT ARTIST
I purr when you're not looking. I'm passionate about environments and all the techie stuff to make them look rad. Learning and improving everyday to be a better hooman.
twitter
0 Comments

The Sandbox - How VoxEdit works

2/24/2021

0 Comments

 
The Mission
This month I have the opportunity to work with a new software called VoxEdit to create a series of characters and assets. In this article I want to present a full explanation about this software (what it is for? how it works?) and my opinion about it.
Resources
  • VoxEdit
VoxEdit, What it is?

VoxEdit is a software to create, rig and animate your own custom voxel models. Right at the moment I'm writing this, the software is on a beta release from 31 of January 2020.

The software was created by The SandBox, a platform that allows you to sell voxels and gaming experiences on the Blockchain.

Althought there is still ways in which this software can be improved, is otherwise a great way to start creating your first models on voxels, since its interface is really simple and friendly for new users, which some features can be helpfull to new users.
​
In this article, I want to talk about the difference interface that exist and what I found is the best way to work into create full humanoid characters.
The Sandbox How VoxEdit works
VoxEdit, the modeler

Once you open the program, you will find an interface with all the options that this software offers.
In this first article I just want to talk about the modeler and the animator.
The Sandbox interface menu
The Sandbox program interface
So without further to do, let's begin. Once you click the modeler panel you will find small menu where you can access the most recent models that you have created, create a new asset and access a tutorial that explains the basic controls of this software.
​
Once you create a new asset or open one you created before, you will find yourself with the modeler.
The Sandbox tools
To explain the different tools I divided the interface in parts, which I divided not only for position but for use too:
​
  • 1 → Top part or Tools related to the viewer
  • 2 → Tools to create Voxels
  • 3 → Tools to create colour palettes
  • 4 → Viewer

Although right now it seems there is too much, don't worry, they are really easier to use than you think. In the viewer part you can see the model on perspective or ortographic. You can also see the voxel as a pixelated image.
Viewer voxel pixelated image
Tools related to the viewer:

Top part or Tools related to the viewer
From left to right, the tools are these:
​
  • The home button
  • Save button
  • Duplicates the number of voxels
  • Reduces the number of voxels by half
  • Cut the space that is not used on the voxels
  • This Trio of tools rotate the model around the axis, red in X, green for Y and blue for Z
Head pumpkin voxel gif
  • Inverts the model in the axis
  • Acivates the simmetry mode that allows you to work on both sides at the same time. this mode is incremental, being able to activate the 3 axis at the same time to work on the 4 corners at the same time
  • Density of voxels, you can choose the density you want in each of the axis
  • You can view the "wireframe" of the model in different ways, each voxel individually, a mix between faces and voxels, faces and nothing
wireframe tool voxels
  • The last button serves as a focus button, to center the camera into the model.
Tools to create Voxels:

Tools to create Voxels
This set of tools are divided in several parts; the different modes for the tools, how can you apply the voxels, a colour picker and a pivot. From top to bottom:

Mode tools

  • Select tool: you can select voxels and move them
  • Add voxels
  • Paint voxels
  • Erase voxels 

​Tools for Voxels
​
  • Pencil to add one voxel add a time
  • Line to add voxels creating a rect line
  • Add/paint/erase voxels in an area that you can select
  • Add/paint/erase voxels in a face
  • Add/paint/erase in an area that has the same colour

Colour Picker

  • Allows you pick the colour of the model without having to go to the palette, you can pick this tool clicking the alt button

Pivot

  • To move the pivot to a different part of the model
Tools Colour Palette:

Colour Tool Palette
One of the best things, in my opinion, of this software, is the colour palette.
​
On the first part you can select the color you want, you can also past the code to get the colour. This part is pretty standard you can find similar pickers on photoshop and other softwares.

But the interesting part comes from the menu below (The 3 stripes), where you can store the different colours you use on the model. Change it form there. And save and load colour palettes.
​
For example, to create an humanoid character that is composed by several parts, you will need the same palette to work, this feature allows you to save the colour palette and load it on the next part.
VoxEdit, the animator

In comparision with the modeler part, the animator has less tools to use, which in some parts makes it really difficult to understand.
​
But first things first, this is the first thing we see when we click on the animator in voxedit, we can see that is very similar to the modeler's start page, however in here we can see that instead of tutorials we have templates with animations already made. We will talk about this later on.
Project animation menu
If we create a new project we can find these different tools:
Project animation menu
To explain the different tools here I also divided the interface in different sections:
​
  • 1 → Top part or Tools related to skeleton
  • 2 → The rigging section
  • 3 → Timeline and animations
  • 4 → Library on where we can see all the models that are inside the same folders as the animator, you can also import other vxm models, which creates a copy of the model in the folder.
Tools related to the rig or skeleton

Rig Tools skeleton
From left to right:
​
  • The home button to return to the principal page
  • Save button
  • Select the model part you are interested in
  • Move the part of the model
  • Rotate the part selected
  • Two tools to choose between moving only the model or the bone, this is important becasue if you have selected the model you only move the model selected but if you move bone you move the one you selected and the children of the bone
  • This button allows you to see the skeleton
Rig skeleton
  • Allows you to see the boundaries of the voxels that you have created and imported into the scene
  • Inverse kinematics
  • Focuses the models in your scene
Rig

Rig Menu Tha Sandbox
Rig Menu Tha Sandbox
On this part we can see the rig. When we start a new project we only have the root bone, to create a new bone we click on the three dots menu.

This menu allow us to create a child node, rename the node and duplicate or delete the node.
​
Once we have the rig created we can add a model from the library, dragging the model into the bone. Once we have done this we can access to a button that is really useful, the pencil that appears on the model allows us to access the modeler window and retouch the model from the animator.
​
When we have retouched the model, we can return to the animator window, you just need to click on the home button in the modeler window.
Timeline and animations

Timeline tool
From this window we can create the animations, here appears the different bones we created, and see the keyframes. It's important to notice that the animation is always recording, so it your are still creating the rig, don't move the timeline because if we move it we will create a keyframe.
​
Once we have the fully animated model, we can create a new animation selecting the menu from the iddle animation, and select new animation. From this menu we can choose and change the animation.
Timeline menu
On the Template you can find a set of animations already made, but you can retouch them because the controls of the animation are deactivated.
VoxEdit, a pipeline

Once these two parts are explained, I'm going to propose one of the possible pipelines to create your own characters.

For that purpose, first I'm going to explain how the characters work in here. The characters are composed of different parts, in particular NINE (9) essential parts.
​
  • Head
  • Chest
  • Hips
  • Leg x2
  • Foreleg x2
  • Feet x2
  • Arm x2
  • Forearm x2
  • Hand x2

Once we have the parts defined, here comes the essential part and where the pipeline divides in two sections, you can either create the parts from the modeler and then import them into the animator. Or open the template and edit the models from the animator.

The first one has a lot of disanvantages, for example you can't control the proportions of the different parts of the models, so when you import them into the animator template to use the animations, the parts does not fit.
model proportions
If you decide to create a new animation scene, you don't have the animations made, so you need to create them from scratch.
​
So if your objective is to create humanoid models, I would recommend to open a template and edit each one of the pieces of the model from the pencil button as we explained on the animator section.
new animation template
The proportions are already made and the animations work with the model, the cons are that you move the parts, not rotate them and you can edit the animations to make them custom for your model.
animations work with the model
Conclusion

All in all, this software is really easy to use and has a few things that are pretty great.
​Such as the connection of the animator with the modeler, and the colour palette.
​
However there is still a lot of room for improvement, the software is a bit slow and has no keyboard gestures, which is quite umconfortable (there is no CTRL+S). So you can only save by clicking the save button. There're are all quite small faults but I noticed that these small things slow your work process making the modeling quite slow feat.
Final Avatar animated

Picture
​Laura Usón
​3D ARTIST
​Passionate about videogames, movies and creatures. artist by day and superhero at night.
CENT
0 Comments

How Does Decentraland Actually Work?

1/26/2021

0 Comments

 
In Polygonal Mind we've been heavily involved in Decentraland development and community for the past 2 years, and thanks to it we've been in many meetings answering questions about this Metaverse.
​

This article is a recap of all the most common questions we've been getting about the platform explained for a non technical person.
How does Decentraland actually work
What Is Decentraland?

Decentraland is a virtual world divided into squares of land of the same size. You can buy and trade this land and also build on top of it. All the content in the world is generated by the owners of the land, making it a huge collaborative space.
How Did We Get Here?

The project has been under development for longer than most would like to admit, and it is evolving on a very slow pace to my taste. This slow motion is probably because 2 years ago, most of the progress of the platform was not poured directly into developing it, but more into the financial aspect of it.

  • MANA released very early, and was listed on most well known exchanges as a tradeable coin.
  • LAND sale was also done way before we could see anything in the world.

This was very criticized and tagged by many as a "money grabbing project" the progress the team was showing to the public was very focused on financial, while at the same time, various promises were broken on the technical side.
​
  • The project changed the engine a couple of times, meaning that anything built needed to be re-done most of the times.
  • VR was removed from the priority list.

Many in the community felt very disappointed at the time, especially for the VR aspect. Decentraland as a concept drove many different people in investing for a very long term project without a clear route.

But what many of us wasn't able to see at the time, was that having a very strong coin and assets before the actual platform would enable the growth of a development ecosystem from the ground up.
Seen with perspective, it was a risky move, but the right one. I don't really know if this was made on purpose or accidentally.
Decentraland MANA
Decentraland As An Ecosystem To The Future

During this time, there has been many initiatives to attract talent to the project.
​Game Jams, Funds, and contests, providing MANA and LAND.

In the future, these initiatives, especially the game funds, will be managed by the Decentraland DAO. That will unlock funds to bootstrap projects pitched directly to the community.

These type of events has motivated professional teams to invest their time into developing for the platform. This has been a great advantage against other platforms that haven't invested that much into attracting developers. It is highly important to allow monetization of your work as soon as possible if you want to retain creatives for the long run.
​
Most of the times these payments were done in MANA, which has been increasing its price during last year, helping even more those teams who hold it as a financial asset to fund their ideas.
​
Taking all of this into consideration, we can expect his internal ecosystem to grow slowly into a B2B market for the short term, that will evolve eventually on a play to earn economy.
Decentraland Map
I Haven't Been In Decentraland Ever Before, How Can I Enter?

You'll need a computer and a browser.
The Graphics Suck

Although this statement might hold some truth, there are various things to consider on the graphical style of Decentraland.

The most important one is resource optimization, it is a web project that loads your 3D interactive land and everyone around you on real time, from your browser, and on top of that, is USER generated content, that can or cannot be prepared to run smoothly.

Think about browsing a website, I'm sure you have experienced a bad website that takes forever to load because it has high resolution images. This is the same thing, but multiplied. So when you open a site, you open at the same time all the sites around it, some of them will work just fine, but others will work badly.

Unfortunately, there isn't much we can do about this, for now.
​
And if we think even more into the future, probably everything will be rendered on a cloud computer and streamed to your device, like Google Stadia does. I'm not very optimistic about this technology since it will need that most of the world uses a very high speed internet connection. But only time will tell.
​
The second thing to consider on the graphic aspect is the style, and this is purely a personal taste opinion. This debate has been going for years on the videogame industry, hyper-realistic graphics against stylized content. There is no real answer to this. Stop.
​
There are many things that Decentraland is lacking visually, we can all agree on that, but I expect the team to deliver them in the future.
Decentraland Asian Plaza top view with AO
How Do I Become Rich Playing Decentraland?

Unfortunately you can't, yet.
How Can I Make Wearables?

A very frequent question, right now, you need a license to mint wearables, and it is given by the DCL team. There is a reason behind, making wearables requires 3D modelling, texturing and rigging skills. Not everyone has them.

We're in the early stages of the platform, and I guess the team is doing closed experiments with experienced teams and individuals to learn the best way to open the market later on.
​
In the future we can expect:
  • To have in-game tools to create basic wearables, like t-shirts.
  • More licenses issued by the community through the DAO.
Decentraland wearables
What About VR

This is one of the points that have brought many different debates and heated arguments to the community. It was promised in the Whitepaper, but discarded a few years back.

Developing a platform is not an easy task, and a VR platform is even harder, so removing it from their roadmap was not a crazy idea at all, it has helped focus on bringing DCL to more devices than a VR focused project could potentially do at the moment.
​
It has been stated by the Decentraland team that VR is not a forgotten thing, just postponed. So eventually we'll be able to experience Decentraland with our favorite headset. When? Not anytime soon pal, probably in 2022.
Why LAND Is So Expensive?

There are various reasons behind this, the most obvious is scarcity. There is a limited amount of them and in order to make more, the community has to vote for it.

Building on it isn't easy either, you need some expertise to create something worth visiting.

We can't deny that the market has gone wild and has been pumping prices for a while, leading to what we have today.
​
But at the same time it has shaped the vision of the project into a more B2B approach rather than the B2C we all had in mind. For a business, buying and investing into Decentraland is way more reasonable than a regular person.
Mana Lands 3D
Why Should I Buy LAND If I Got Funding To Build
My Own Virtual Space?

Many old fashioned businesses are starting to consider their own Metaverse presence and this question pops very often on their head.

The Metaverse is and will be infinite, endless layers and worlds that we can access anywhere from many different devices. You'll be lost and very easily as we get deeper on the internet.

Decentraland will act as an attention beacon for users, pretty much like any social media platform does these days. So you might want to build your own personal space outside these Metaverse platforms, but you'll need to invest a lot of efforts to attract users there and retain them.

And I'm not just talking about advertising, you'll need to develop interaction on your own, servers to hold visitors, avatar systems, interactivity, etc. Not saying that is impossible, but it will take way more time and funding than having your parcel in Decentraland.
​
I would say that having a small presence on Decentraland (or any other platform) and linking it to your personal space will be the most logical option in the future, just like you have your Facebook page and your own website.
MEME and Binance Head Quarters in Decentraland
MEME and Binance HQs in Decentraland - by Twitter user @sp4ce
Conclusion

This is just a highlight of the many different questions we get everyday, my goal this time has been to explain how Decentraland has been evolving in the last few years from an insider look.

​But there are lots of different questions that I haven't included here, so stay tuned for more Decentraland insider looks.
​
As a final reminder, Decentraland is a collaborative layer of the Metaverse, just like Facebook is part of the internet. If everything keeps evolving steadily it might become the business cluster of the future.


See you around the Metaverse!

Picture
ToxSam
CEO
Mind Head of Polygonal Mind. ​
Twitter
0 Comments

Optimizing VRChat Worlds: Occlusion Culling

1/21/2021

0 Comments

 
Premise
VRChat is a well known social platform for all those who have VR equipment, and even if you don't have any specific hardware, you can join the party from your standard PC screen too! When you create a scenario, you have to be cautious with texture sizing and data management to make sure you can run your scene, but also the target audience can too! If you fail to democratize hardware requirements then you fail to create a popular VRChat World.
The Mission
Resources
This guide focuses on the Occlusion Culling function of Unity and how to improve the size of the scene by lowering texture sizing, hiding what can't be seen. Also we will talk about occlusion portals, although this scenario doesn't use any as its all outdoors with no enclosed areas.
  • Unity Editor (2018.4.20f1)
Please note that this is VRChat focused but is something Unity Engine related issue.
Optimizing VRChat worlds with Occlusion Culling
#00 What is Occlusion Culling

Occlusion culling is a process which prevents Unity from performing rendering calculations for GameObjects that are completely hidden from view (occluded) by other GameObjects.
Every frame, a camera perform culling operations that examine the Renderers in the Scene and exclude (cull) those that do not need to be drawn. By default, Cameras perform frustum culling, which excludes all Renderers that do not fall within the Camera’s view frustum. However, frustum culling does not check whether a Renderer is occluded by other GameObjects, and so Unity can still waste CPU and GPU time on rendering operations for Renderers that are not visible in the final frame. Occlusion culling stops Unity from performing these wasted operations.

https://docs.unity3d.com/Manual/OcclusionCulling.html
​

This is basically the core knowledge of the whole system. This technique is used to avoid doing the real time calculations of gameObjects that are not in the Camera frustrum. This improves framerate and events performance during runtime.
Occlusion Culling on Unity 3D
#01 How do you apply it to your scene

To begin creating an "occlusion area" you need to check the box "static" or just click on the drop down and toggle "OccluderStatic" and "OccludeeStatic". Another approach is to select the desired gameobjects and toggle option in the Occlusion Window on the Object Panel.
Occlusion Culling on Unity 3D
Occlusion Culling on Unity 3D
This tells the engine to consider the gameObject when calculating the Occlusion Data within its Occlusion Area (Unity considers the whole scene as a single area if you don't configure one prior bake).
Occluders and Occludees
The main difference between these two Occlusion concepts is pretty simple but its important to keep it in mind when building your scene occlusion areas and data.
​
  • An Occluder is an object that can hide another objects
  • An Occludee is an object that can be hidden from view by another object (Occluder). If you uncheck this, the object will be considered differently like if it was on another layer, not being hidden by other meshrenderers.
​
An example of Occludee toggle would be for larger objects like grounds that should be considered separately to ensure its always rendered.
#02 Culling Portals and Culling Areas

Culling Areas are "cube" shaped volumes that "group" all the gameObjects inside of it, being only rendered if the camera is placed inside the same area. This works well if you have multiple enclosed areas, for our case, Occlusion areas didnt make sense as the whole scene is enclosed without visual walls among it.
​
Occlusion Portals are for connecting two Occlusion Areas and so the Camera can render both areas by the Portal region area. The toggle Open option is for allowing or disallowing this conneciton.
More info: https://docs.unity3d.com/2018.4/Documentation/Manual/class-OcclusionArea.html
100 Avatars world in VRChat top view
top view of the 100 Avatars world
Occlusion Culling on Unity 3D
Occlusion Culling on Unity 3D
Occlusion areas and portals
#03 Alternatives to Unity's Occlusion Culling system

The Occlusion system uses a built-in version of Umbra. As any other system, it has its failures and improvements compared to other occlusion system engines. For other projects I personally have worked with Sector, an Asset Package found in the Asset Store that is very helpful and by the time I worked with it it was way better than the Unity's Umbra (more flexible settings as its main selling point).
​
Another thing to keep in mind is the use of shaders with an excess of passes. Each pass is a whole mesh calculation for the material to be rendered and so Materials with more than two passes can be problematic for lower platforms like mobile. I state two as a minimum because transparent materials require two passes, furthermore they require the renderer to render whats behind the mesh rendered with transparency so they are quite the hard limit for low platforms.
Copy of Batch example

Mesh render
1
Apply mat albedo
1
Apply mat transparency
1
Apply light
1

Please keep in mind that "static batching" meshes get combined during runtime by the unity engine and so reduce the "meshrender" batching but keep the mat batching.
#04 Occlusion in the Gauguin Avatar Garden

The whole scene is marked as "Static" as there are no dynamic objects to keep in mind (the water is animated through material [not shader]). This made the Occlusion set up "easy" and not very hard to set the first steps. Keep in mind the size of the Occluder box you want to set, the bigger, the less "accurate" it will be, but at the same time the data will be much smaller. Each project needs its own balance.


In this case for Gauguin we set the size to 1.5, meaning that the smallest "box" packing objects was of 1.5 units (meters) in x/y/z value.


The Smallest Hole float is the setting to tell the camera how big it has to be the "hole" in the mesh to start casting what is behind it. This is specially tricky on elements with small holes or meshes with complicated shapes.
​

The backface value is the value of directionality of a mesh to be rendered. The higher, the more "aggresive" the occluder will be, making the camera not compute meshes that are not facing towards the camera.
Occlusion Culling on Unity 3D
100 Avatars world in VRChat
100 Avatars world in VRChat
100 Avatars world in VRChat
Note that all the "black" shadows are objects that are not getting rendered as their lightbake remains on the mesh that is being rendered. Furthermore you can see the "area" that the camera is in with the correspondent portals. When there is none in scene Unity creates them for you. 
The best workaround is to always do it manually and never let the program do the math for you.
​
For the scene, the ground meshes were kept without the Occludee option as smaller avatars made it through the ground floor due to camera frustrum and its near clip (this cannot be changed as it how it goes in VRChat).
live action of occlusion culling in 100 Avatars world
A live action of how the occlusion is working
#05 cOcclunclusion

You may find Occlusion Culling easy to set up or even unnecessary!
​But the truth is that is a vital piece during the final stages of environment development as is the manager, loader and unloader, of all the visual aspects of the camera, ensuring an smooth experience while mantaining the quality levels desired and keeping hidden from view but not unloaded from scene to ensure fast-charging-fast-hidding.


Also each time you modify a gameObject property like transform or add/remove gameObjects from scene you should rebuild your Occlusion data as those gameObjects are still "baked" in the data.
​

Keep it in mind specially when working with large environments or low-specs platforms.
You are more than welcome to drop any question or your try-out and results!

Join us: https://discord.gg/UDf9cPy

Picture
Kourtin
ENVIRONMENT ARTIST
I purr when you're not looking. I'm passionate about environments and all the techie stuff to make them look rad. Learning and improving everyday to be a better hooman.
Twitter
0 Comments

Metaverse Platform Comparison - Virtual Worlds on the Blockchain

1/19/2021

0 Comments

 
Metaverse Platforms Comparison Crypto Projects
Introduction

So you are new to all this Metaverse economy and you are having trouble understanding what's going on. You want to start investing some time and maybe even money on it, but you are not sure where to start... Well, you are in luck, this post is for you!
In the last two years, we've been involved in many Metaverse projects,
​building and generating value across different platforms.
In this article we'll dig into Blockchain Metaverse projects, the ones we know and what you should consider before starting your journey. There are many different Metaverse projects out there, but today we'll compare the best known in the space on different points, so you can have enough information before digging further on them.
Before starting you must understand the Metaverse as a concept.
NONE of these projects alone are the Metaverse, even if they say so on their marketing efforts.
​They are LAYERS of the Metaverse, and all of them combined are the Metaverse.
In easy terms to understand, Facebook is not the internet, but a part of it. Same applies here.
The Metaverse Projects, A Brief Description

Decentraland
The oldest one in the space.
​
It is a single Metaverse layer divided evenly into a grid. Every single coordinate is called LAND.
All the LAND is the same size and has the same limitations. Users can combine their colliding LAND into Estates. Users can create districts to coordinate themselves and this one function as separated entities/companies. There is a limited supply of LAND and there is no way to create more unless the community proposes it through the Decentraland DAO.
​
The world was open on 20/02/2020
Decentraland cover
CryptoVoxels
Minecraft-like inspired project.
​
It is a single Metaverse layer divided unevenly in different plots and islands.
There is a main island called Origin City that has a limited supply of parcels.
Their team is always generating new islands and parcels as a way to fund the project.
Every plot has a different size and limitations.
​
The world was open on July/2018
CryptoVoxels cover
Somnium Space
High end devices focused project.

It is a single Metaverse layer divided unevenly in different plots along an already generated map with some islands too. Every plot has different size and limitations. The team is releasing new land once in a while.

The world was open on 20/02/2020

The project also has a new proposal for owning whole Metaverse layers, called Somnium Worlds.
​But there is little information about this yet.
Somnium Space cover
The SandBox
Evolution of a previously very successful non-blockchain project into a new paradigm.
Also with Voxel art.
​
It is a single Metaverse layer divided evenly into a grid. All the land is the same size and is pretty big, users can combine their plots into estates to generate bigger places. There is a limited supply of land there is still a big part of it not released to the market.
​
The world is still in private beta, aiming to launch in Q1 2021
The Sandbox cover
How Is The Experience?

When we talk about Metaverse layers we're talking about content being deployed on the same "world" meaning that in theory you could be able to "walk" from one point to another without any loading screen, so when you join the place, you can see your parcel and everything built around it even if this content is built by another person.
​
This is the case of Decentraland, CryptoVoxels and Somnium Space,
they all got a seamlessly walking experience.
​
As opposed to the other projects, Sandbox encapsulates their land experiences into separated scenes and when you walk from one parcel to another, there will be a loading screen.
How Can I Access The World?

Decentraland
Desktop Website: ​https://decentraland.org/
CryptoVoxels
Desktop, Mobile Website and VR: https://www.cryptovoxels.com/
Same experience in any device.
Somnium Space
Full version: Desktop Client and High end device VR headset.
Reduced version: Desktop Web and Quest.
​https://somniumspace.com/
​
The reduced version is encapsulated in different instances, meaning that you can only visit 1 plot at a time. Web based visitors cannot see client visitors and vice versa. Avatars are also limited to the web version.
The Sandbox
Desktop Client.
Not released yet.
https://www.sandbox.game/en/
Who Is behind The Wheel?

Decentraland
The project started with Esteban Ordano and Ari Merlich, both very experienced folks on blockchain and high end technology and did a very successful job creating and pushing the idea. Now the project is managed by the Decentraland Foundation, a new entity that is focused on listening to the community needs. Most of the team is in Argentina.
CryptoVoxels
By the one and only Ben Nolan. This solo entrepreneur from New Zealand started off the project from scratch and now has a team helping him to generate his vision. They are very active listeners on their Discord and Twitter.
Somnium Space
Funded by the serial entrepreneur Artur Sychov, the project started with a very successful indiegogo campaign back in the day. Based in the beautiful city of Prague, right in the heart of Europe.
The Sandbox
The Sandbox project was initially started in 2012 on mobile platforms which to date have gathered more than 40 million global installs on mobile devices. Their 100-people strong team behind has over 15 years of experience making games.

​Over the past 3 years, The Sandbox team has been developing a new version of the game – this time as a 3D, multiplayer platform using blockchain technology (Ethereum) to offer a virtual world where players can build, own, and monetize their gaming experiences. This is the version we are comparing today.
What Can I Do On These Platforms TODAY?

From afar all these projects look very, very similar, but they are actually not, they all have different communities with various mindsets.
Decentraland
This project has made a huge effort into building collaborations and partnerships with top blockchain and crypto projects around the world, there are many virtual headquarters built in there already and more to come in the following months.
​
Events and networking is what is driving Decentraland adoption.
​You can keep up to date with their events on the website.
​
The platform has also a lot of cryptoart galleries and a few games to enjoy.
​But be aware that most of the place is still empty.
Decentraland Map land
CryptoVoxels
If you want to get inspired quickly, you MUST visit CryptoVoxels.
​In 2020, CryptoArtists from all around the world have taken over this platform generating mind blowing content. The world is filled with art galleries and the community is super active. This project has the best boarding experience on Crypto-Metaverse so far.
​
There are many art and business related events in the world, but there isn't a centralized way to find them, you must follow each micro community individually.
Cryptovoxels map
Somnium Space
The main selling point of the project is its beautiful image rendering.
If you own a high end VR device, Somnium is for you.
​
The community is small but cozy, very active and welcoming on their Discord.
​They also got an event page to keep track of all the events.
Art galleries and private land is the content you'll find there.
Somnium Space map
The Sandbox
The project is unreleased yet. But I can give you a glimpse of what you'll find.
​Games, games and more games.
​
Their team is making a great effort to build a game platform along with many creators. With their background on the industry and how they communicate, I expect SandBox will become a great gaming platform. They are using Arkane Network, which makes on boarding for blockchain newbies very easy.
The Sandbox map
What About Building Things?

Alright. So you want to have something built in your new virtual domains, these are the things you need to take into account.
Decentraland
This platform has 2 ways of building.

The Builder: This online tool allows users to place and allocate 3D models in the parcel and then deploy. What you can do with it is very limited.

The SDK: Tool developed for professional teams to generate interactive content in the game. Probably very complex for starters, but very good if you want to have something very unique on your parcel. We've made different games and experiences with it. Developing with DCL SDK is still a very niche thing and takes A LOT of time, so be prepared to hire a professional team.
Decentraland builder
CryptoVoxels
The easiest and most friendliest of them all, just join CV and start placing things in your land while playing. You can find many artists willing to take building commissions and they'll create amazing stuff by pushing limitations to the next level. The great downside right now is that you can't create any complex behavior on CV, so no games.
Cryptovoxels builder
Somnium Space
There is a Somnium Builder that works very well, it is very similar to the Sims building creator tool and it allows you to make your own place out of already generated assets. There is a Unity SDK in the works for Somnium, but no release date yet.
Somnium Space builder
The Sandbox
This project has developed 2 different tools for content creators:

VoxEdit: that allows to create game items and characters.
​
Game Maker: This tool will take the assets generated on VoxEdit and place them in world, also adding interaction and complex behavior for them. No code required.
​
Since the platform is not released, it is still hard to find people to develop in your SandBox Land.
The Sandbox builder
What Is Their Economy?

All the platforms, released or not, got some economy going on, based on different stuff.
Decentraland logo png
Decentraland
They have their erc20 token called Decentraland MANA ($MANA)
​Probably the strongest coin of all the platforms and listed on the most well known exchanges.

1 MANA ≃ $0.116

Their LAND economy is also pretty hot, the lowest prized LAND on OpenSea right now costs
​8,000 MANA ≃ $924.3
​
This project also has wearables made by their team and community,
​you can also buy and sell names on Decentraland.
CryptoVoxels logo png
CryptoVoxels
They don't have any coin anymore.
​
It has a very small wearable economy, but unfortunately generating new tokens it's been closed down due Ethereum gas fees many times, making it very difficult to generate a stable revenue for creators.
​
Cheapest parcel on Opensea: 1 ETH ≃ $1,236.61
Somnium Space logo png
Somnium Space
They have an erc20 token called Somnium Space CUBEs ($CUBE)

1 CUBE ≃ $0.3

But their team has made claims that they want it to become a stable coin.
Cheapest parcel on Opensea: 0.68 ETH ≃ $839.5

The project has also created their own virtual reality avatar market, only usable on Somnium client version. They also have released a world token. But they haven't released much info on this yet.
The Sandbox logo png
The Sandbox
They have an erc20 token called SAND ($SAND)

1 SAND ≃ $ 0.05

Cheapest parcel on OpenSea: 0.1 ETH ≃ $122.7
​
Any item created and uploaded to SandBox will be automatically an NFT, so expect a huge boom of NFT trading from this project once is released.
How Does The Future Looks Like For These Platforms?

The following statements are made in Jan of 2021 and are based on how all these platforms have evolved along 2019-2020. This might shift as their communities become bigger and evolve.
Decentraland
Networking platform. Hopefully a decentralized virtual Silicon Valley of the future. Many big blockchain companies and influencers are setting their virtual business Head Quarters in there using districts as a catalyst. Unless LAND prices go down, the investment needed to buy a plot and then to develop content for it, is really high. This kind of budget makes sense for a B2B environment.
Decentraland Metaverse
CryptoVoxels
Micro house-blogging platform. Pretty much like your 3D house blog. The team sets the prices based on FIAT in order to attract more BUILDERS. Many companies and influencers have a plot in CV too, but most of the plots are built by artist showcasing their art. It is amazing to see all the islands getting built these days.
CryptoVoxels Metaverse
Somnium Space
Virtual Beverly Hills neighbour for early blockchain enthusiasts and celebrities. Somnium parcel prices have skyrocketed in the last year. The community is small BUT very active and very well connected. The world looks like a green field, that can remind you of The Sims.
Somnium Space Metaverse
The Sandbox
Blockchain based Minecraft competitor. Is very difficult to imagine how this project will evolve without seen it released yet. But based on the previous SandBox game and the team background, we can already see this project being the only one fully focused on game development.
The Sandbox Metaverse
Where To Learn More About The Projects?

All these projects got Discord communities and Twitter accounts to follow their progress.
You can learn more about them by following us too!
Twitter
Discord
Conclusion

I just wanted to give some insight thoughts on these projects, since these are the most
​"HOT Blockchain Metaverse" projects in early 2021.
​
All these platforms compete and work together at the same time.
If one of them fails hard, it will affect negatively to the others,
since they are all tied together with Ethereum.
​
As I stated in the beggining, NONE of them are the Metaverse,
they are just layers, collaborative worlds filled with used generated content.
Ultimately the users owning and building the platforms will be the ones
in charge of its success or failure, same goes for their tied coins.

I haven't included any NON-blockchain projects on the list, but to give you some real facts with perspective about how EARLY we are in the space.... VRChat has today more daily active users than all of the platforms mentioned COMBINED.

True ownership will be granted by blockchain, but only if the majority of users
understand the value of NFTs and prefer it to centralized systems.

We could keep comparing all the projects in the space in the future on different subjects,
​feel free to leave us ideas on our interoperable Discord community!

Picture
ToxSam
CEO
Mind Head of Polygonal Mind. 
Twitter
0 Comments

Create and upload a VRChat Avatar with blend shapes visemes - Remaster

12/16/2020

0 Comments

 
The Mission
VRChat uses blend shapes to detect phonemes via a microphone, and adjust your character mouth to the correct shapes, giving the impression that you character is talking.
Resources
  • MayaLT 2018
  • Unity 2018.4.20f1
How to do Blend Shapes Visemes for VRChat
Isn't it great when you talk with somebody online and you see his mouth moving while he talks?
It really add ups to the experience, specially in Virtual Reality.

That's what this is about.
Creating different shapes so you can see yourself talking when you look at a mirror.
​
It's the little touches that makes something good to something better.
Let's say you already have your model done, it's also rigged and skinned so its ready to go.
​But, you want to make some blend shapes because in-game they look neat and funny.
​
Well, let's make them!
​

First, we need to know how many blend shapes we need to make. VRChat uses 16 different blend shapes. These are:
  • Blink Both eyes
  • aa
  • ch
  • dd
  • ee
  • ff
  • ih
  • kk
  • nn
  • oh
  • ou
  • pp
  • rr
  • ss
  • sil (silence)
  • th
To make things easier in the future, I highly recommend always using the same prefix for each name, so later in Unity it's almost automatic. The prefix being vrc_v_blendshapename.
Different blend shapes visemes used in VRChat
This gives you a general idea of how I made the different shapes of the mouth depending on the viseme. Another thing to keep in mind is that even if vrc_v_sil doesn't change the shape whatsoever, you must change something regardless.
​
Now that we have every shape done, we will use the Shape Editor.
Open the Shape Editor in the sculpting tab in Maya. Or going to Deform>Blend Shape.
Autodesk Maya Deform Blend Shape
Now, select one shape that you created and then select the original model. Go to the Shape Editor and click on "Create Blend Shape". Repeat this with all the 16 shapes.
Autodesk MayaLT Shape Editor tab
Export and import

We have every shape ready, so now we will export all the package.
Select all the shapes, meshes and bones and go to export.
Be mindful of checking in the box of Animation and make sure that Blend Shapes is activated too, if it's not, it won't export correctly.
Autodesk Maya export blend shapes
Now write the name you want and export it.
Upload

You should have your Unity 2018.4.20f1 or whichever version VRChat uses already set up. If you don't, check this guide out made by my friend Alejandro Peño where he explains how to set it up:
Upload Avatars to VRChat Cross-Platform (PC and Oculus Quest).
With the character imported, we will add a new component called VRC_Avatar Descriptor.
Unity 3D VRC_Avatar Descriptor component
Now it will appear a couple of parameters you can edit.
Unity 3D VRC_Avatar Descriptor component
We are only going to modify 3 of them. View position, LipSync and Eye Look.
View Position

This parameter allows you to decide where the first person point of view is located. In other words, from where are you going to see inside VRChat.
It is a no-brainer that we should put the little indicator at eye level. As close as posible to the eyes.
Avatar view position in Unity for VRChat
Lip Sync

How can we make our character talk? With this option right here!
In mode, select Viseme Blend Shape.
Unity VRChat Viseme Blend Shape
Now it will appear a Face Mesh tab. Using the little circle on the right, you can select the mesh where the Blend Shape Visemes are stored. In this case, since it's all the same mesh, we only have one option.
Unity VRChat Viseme Blend Shape
Now we are talking (pun intended). Like I said before, putting the right names, makes our lives easier. Every single blend shape is in place. But just to be sure, give it a look.
Unity VRChat Viseme Blend Shape
Eye Look

If you have sharp eyes, you might have realized that blink was nowhere to be seen (These puns just keep coming). That's because we will use the Eye Look tab to configure it.
​
Click on Enable and a couple of options will appear.
Ignore the others and go to the Eyelids section and select the blendshapes option.
Unity VRChat Eye Look
Select once again the mesh where the BlendShapes are stored, and it will appear something like this.
Unity VRChat Blink Eye look
If something is not properly added, you can change it from here. Since we don't have only the Blink Blendshape states, we will leave Blink like it is and change the other 2 so they don't have any state at all. Like this:
Unity VRChat Eyelids
PRO TIP

Use the preview button to make sure that everything works correctly. You can even check all the other blendshapes if you want!
Once it's finished, you can upload the character like you usually do. Again, if you don't know how to do it, you can check this guide:
Upload Avatars to VRChat Cross-Platform (PC and Oculus Quest).
Conclussion

Blend shapes visemes are a great way to give life to your avatars in VRChat.
​I would 100% recommend using them in your future avatars.
Depending on the model it takes around 30 minutes to an hour
​to create all the shapes needed, and they look great.
​
It's a lot of fun making these, so give them a try!
Picture
Pedro Solans
3D ANIMATOR
​Junior 3D Animator improving every day possible. Videogame and cat enthusiast.
Twitter
0 Comments
<<Previous
Forward>>

    Categories

    All
    Decentraland
    Decentraland En Español
    Maya
    Metaverse
    Mixamo
    Morphite
    Substance Painter
    The Sandbox
    Totally Reliable Delivery Service
    Unity 3D
    Updates
    VRChat

    Archives

    March 2021
    February 2021
    January 2021
    December 2020
    October 2020
    August 2020
    July 2020
    June 2020
    May 2020
    April 2020
    March 2020
    February 2020
    December 2019
    October 2019
    September 2019
    August 2019
    June 2019
    May 2019
    February 2019
    January 2019
    December 2018
    November 2018
    October 2018
    September 2016

    Picture
Home
Projects
Assets

Picture
Crypto
Friendly
Picture

Subscribe to get some 💚 in your inbox once in a while.

Follow us and your visit will never be forgotten!
Picture
Picture
Picture

 © 2015-2020 POLYGONAL MIND LTD. ALL RIGHTS RESERVED.
  • Home
  • SERVICES
  • Projects
  • Decentraland
  • Blog
  • Assets
  • / CryptoAvatars