add games

This commit is contained in:
2022-11-10 21:56:29 -03:00
commit 35300554e2
2182 changed files with 325017 additions and 0 deletions

View File

@@ -0,0 +1,110 @@
#if UNITY_EDITOR || UNITY_STANDALONE
using UnityEngine;
using System.Collections;
using ProBuilder2.Common;
using System.Collections.Generic;
namespace ProBuilder2.Examples
{
/**
* Creates a cube on start and colors it's vertices programmitically.
*/
public class HueCube : MonoBehaviour
{
pb_Object pb;
void Start()
{
// Create a new ProBuilder cube to work with.
pb = pb_ShapeGenerator.CubeGenerator(Vector3.one);
// Cycle through each unique vertex in the cube (8 total), and assign a color
// to the index in the sharedIndices array.
int si_len = pb.sharedIndices.Length;
Color[] vertexColors = new Color[si_len];
for(int i = 0; i < si_len; i++)
{
vertexColors[i] = HSVtoRGB( (i/(float)si_len) * 360f, 1f, 1f);
}
// Now go through each face (vertex colors are stored the pb_Face class) and
// assign the pre-calculated index color to each index in the triangles array.
Color[] colors = pb.colors;
for(int CurSharedIndex = 0; CurSharedIndex < pb.sharedIndices.Length; CurSharedIndex++)
{
foreach(int CurIndex in pb.sharedIndices[CurSharedIndex].array)
{
colors[CurIndex] = vertexColors[CurSharedIndex];
}
}
pb.SetColors(colors);
// In order for these changes to take effect, you must refresh the mesh
// object.
pb.Refresh();
}
/**
* Convert HSV to RGB.
* http://www.cs.rit.edu/~ncs/color/t_convert.html
* r,g,b values are from 0 to 1
* h = [0,360], s = [0,1], v = [0,1]
* if s == 0, then h = -1 (undefined)
*/
static Color HSVtoRGB(float h, float s, float v )
{
float r, g, b;
int i;
float f, p, q, t;
if( s == 0 ) {
// achromatic (grey)
return new Color(v, v, v, 1f);
}
h /= 60; // sector 0 to 5
i = (int)Mathf.Floor( h );
f = h - i; // factorial part of h
p = v * ( 1 - s );
q = v * ( 1 - s * f );
t = v * ( 1 - s * ( 1 - f ) );
switch( i )
{
case 0:
r = v;
g = t;
b = p;
break;
case 1:
r = q;
g = v;
b = p;
break;
case 2:
r = p;
g = v;
b = t;
break;
case 3:
r = p;
g = q;
b = v;
break;
case 4:
r = t;
g = p;
b = v;
break;
default: // case 5:
r = v;
g = p;
b = q;
break;
}
return new Color(r, g, b, 1f);
}
}
}
#endif

View File

@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 57910de6743b3ac49a59ade4c17e5764
MonoImporter:
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData: