Recentemente programei um módulo do sistema L , o que me interessou ainda mais. Também sou viciado em Plants vs Zombies, gostei muito do conceito de Árvore da Sabedoria. Gostaria de criar arte processual semelhante apenas por diversão e aprender mais.
Pergunta: Como devo abordar o processo de criação de uma árvore artística (2D talvez com câmera / perspectiva fixa) dinamicamente?
Idealmente, gostaria de começar com uma planta (apenas um caule com uma folha) e cultivá-la dinamicamente usando alguma influência (ação de entrada / ação do usuário) sobre sua estrutura. Essas influências podem resultar em diferentes tipos de ramificação, curvas nos galhos, sua propagação, localização dos frutos, cor das flores, etc. Deseja que ele seja realmente cheio de vida / espírito. :)
Plants vs Zombies: Tree of sabedoria Seria ótimo cultivar dinamicamente uma árvore semelhante, mas com muito mais variações e animações.
Meu histórico: Programador, utilizou poucos mecanismos de jogo (Ogre3d, cocos2d, unity). Realmente não tenho programado diretamente usando o openGL, tentando consertar isso :).
Estou pronto para gastar um tempo considerável. Informe-me sobre as APIs? e como um especialista como você lidaria com esse problema?
Por que 2D? Eu acho que é mais fácil resolver o problema considerando apenas duas dimensões.
Inspirações artísticas:
Somente a árvore, com frutos e folhas, sem os arbustos no fundo
A grande árvore (galhos visíveis, folhas verdes, flores, frutas, etc.) à esquerda, atrás do macaco.
Eden do PixelJunk (inspiração no estilo Art).
Macieira gerada processualmente usando fractais
Por favor, deixe-me saber se foi fácil para você entender a pergunta.
Espero que uma discussão de várias abordagens seja útil para todos. Caras, vocês são incríveis.
Student/
deStudent/Programmer
Respostas:
Dê uma olhada no ABOP (Algorithmic Beauty of Plants):
http://algorithmicbotany.org/papers/#abop
Está online gratuitamente agora, e tem uma visão muito aprofundada dos sistemas e plantas L.
fonte
Algumas idéias para o seu "jogo":
Existem muitos algoritmos e documentos para a geração de árvores procedurais por aí ( esse encadeamento pode ser interessante ). Uma tarefa difícil é misturar bem os galhos. Definitivamente, o 2D será mais fácil nesse sentido, pois você pode resolver isso com a mistura alfa.
Como você tem experiência com Ogre3D, Unitiy e cocos2d, pode seguir em frente e implementar essa coisa (não é necessário começar a aprender o OpenGL agora IMHO). Pessoalmente, eu escolheria o cocos2d e lançaria para iPad e / ou iPhone, para que todos possam carregar sua árvore com seu dispositivo móvel.
fonte
Livre de contexto e seu equivalente 3D, o StructureSynth pode ser uma excelente base ou inspiração.
Exemplos:
etc ...
Hoje em dia você pode escrever um visualizador online no WebGL!
fonte