コード例 #1
0
ファイル: EditorShader.cs プロジェクト: PoisenMJ/EndlessDrive
    public override void OnInspectorGUI()
    {
        Terrain_Flat terrain = (Terrain_Flat)target;

        if (GUILayout.Button("Update"))
        {
            terrain.Generate();
        }

        if (GUILayout.Button("Keep colors"))
        {
            ColorPalette  c      = CreateInstance <ColorPalette>();
            System.Random random = new System.Random(Random.Range(0, 100));

            int num1 = random.Next();

            string path = string.Format("Assets/Palettes/{0}.asset", num1);

            AssetDatabase.CreateAsset(c, path);
            AssetDatabase.SaveAssets();

            ColorPalette inst = (ColorPalette)AssetDatabase.LoadAssetAtPath(path, typeof(ColorPalette));
            inst.SetColors(terrain.Colors[0], terrain.Colors[1], terrain.Colors[2], terrain.Colors[3]);
        }
        base.OnInspectorGUI();
    }
コード例 #2
0
    void Start()
    {
        maxViewDst             = detailLevels[detailLevels.Length - 1].visibleDstThreshold / 2;
        chunkSize              = mapGenerator.mapChunkSize - 1;
        chunksVisibleInViewDst = Mathf.RoundToInt(maxViewDst / chunkSize);
        UpdateVisibleChunks();

        Terrain_Flat tF = FindObjectOfType <Terrain_Flat>();

        tF.Generate();
    }
コード例 #3
0
    private void Start()
    {
        instance = this;
        if (randomOnStart)
        {
            for (int i = 0; i < BaseColorCount; i++)
            {
                Colors[i] = new Color(Random.Range(0.0f, 1.0f), Random.Range(0.0f, 1.0f), Random.Range(0.0f, 1.0f));

                float heightval;
                if (i == 0)
                {
                    heightval = Random.Range(0, 0.05f);
                }
                else
                {
                    heightval = Random.Range(0f, (float)1 / BaseColorCount) + ((float)i / BaseColorCount) / 1.5f;
                }

                Heights[i]     = heightval;
                BlendLevels[i] = Random.Range(0.1f, 0.7f);
            }
        }

        if (usePalette)
        {
            if (ColorPalettePersistance.instance != null)
            {
                ColorPalettePersistance col = FindObjectOfType <ColorPalettePersistance>();
                for (int i = 0; i < BaseColorCount; i++)
                {
                    Colors[i] = col.CurrentColorPalette.Colors[i];
                }
            }
        }
    }