Ir ao conteúdo
  • Cadastre-se

C# Geração procedural em C# na unity


KinTsume

Posts recomendados

Pessoal eu estou querendo fazer um joguinho no estilo don't starve, eu queria um exemplo de um script de geração procedural ainda sou iniciante no C# e unity então quanto mais simples melhor.

Até agora eu consegui fazer isso:

 

using System.Collections;
using UnityEngine;
using random = UnityEngine.Random;


public class FloorGen : MonoBehaviour {

    int PosX = -2;
    int PosZ = 0;
    int DistX = 2;
    int DistZ = 2;
    public GameObject Terra;
    public GameObject Agua;
    Vector3 Pos =new Vector3 ();

    // Use this for initialization
    void Start () {
        AddFloor ();
    }
    
    // Update is called once per frame
    void Update () {
    }
    void AddFloor () {

        for (int i=1;i<50; i++) {
            PosX = PosX + DistX;
            PosZ = 0;
            for (int j = 1; j < 50; j++) {
                Pos.Set (PosX, 0, PosZ); 
                if ((random.Range (1,101)) <= 50) {
                    Instantiate (Terra, Pos, transform.rotation);
                } else {
                    Instantiate (Agua, Pos, transform.rotation);
                }
                PosZ = PosZ - DistZ;
                }
        }
        
    }
}

fica mais ou menos assim:
Procedural.PNG.09620ee22842ef9df4aec7bacfc2395d.PNG

 

Eu queria fazer ilhas, fazer com que as partes verdes e azuis fiquem mais juntas.

Desde ja obrigado ;)

Link para o comentário
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisa ser um usuário para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...