L-Systems reloaded

begla

Project Founder and Lead Developer
Contributor
Architecture
Logistics
Just wanted to let you know on what I've been working. I've finished a first rough (but fully functional) draft of a L-System tree generator. It can be used to generate trees from any imaginable L-System grammar. The trees shown in the screenshot are generated using a very simple grammar with only two rules (it is one of the most basic fractals):

Code:
Initial axiom: F
F => GG[+F][**+F][//+F]
G => GG
My next step is to combine this generator with Groovy (of course! :D) and to integrate some more complex rule sets (like shown here: http://nodebox.net/code/index.php/L-system). I'll also add some randomization to the algorithm (to add variety).

Thinking of... With this approach things like a large "Tree of Life" and mammoth tree forests could become reality in the game. :)
 

Attachments

Cervator

Org Co-Founder & Project Lead
Contributor
Design
Logistics
SpecOps
Nice! And done so quickly!

Yeah, bring on the "uber forest" biome :D

I can even recognize the right-most tree from the pattern on the Wikipedia article ;)

Working on intro stuff myself (made a new forum, etc) atm - we need to start posting neat new stuff like this to the blog/Facebook/Twitter/etc. OK with publishing that copy paste blueprint Youtube video btw? Might be cool to also add an item to the blog about.
 

begla

Project Founder and Lead Developer
Contributor
Architecture
Logistics
Just playing around for a short amount of time with some random grammars made me instant-delete the old trees. I'm quite happy with the result... :D :geek: The trees are generated utilizing two separate grammars. I've also added the randomness I spoke of to the L-System algorithm. And that is only the start. :D
 

Attachments

Cervator

Org Co-Founder & Project Lead
Contributor
Design
Logistics
SpecOps
Nice big trees, me likey :D

Are there any "grammars" that can support a forked trunk of sorts?

Also, I recruited another RL friend who's getting all excited about contributing RPG potential :D
 

begla

Project Founder and Lead Developer
Contributor
Architecture
Logistics
Cervator said:
Nice big trees, me likey :D

Are there any "grammars" that can support a forked trunk of sorts?
Tree branches are actually hidden in the big bushy tree tops. I've pushed a small modification so tree branches can be seen also on the outside. I've also reworked the terrain generation quite a bit. The overall terrain should be much more detailed now. A bit more hard to walk on, but much more pretty looking!

Make sure to have walk in the near by forest of the new default seed in "develop". It actually has some RPG feel to it. Parts remind me of Oblivion in blocky form! :D

Cervator said:
Also, I recruited another RL friend who's getting all excited about contributing RPG potential :D
Cool! Is he going to be the first one using our new sub forum? :)
 

begla

Project Founder and Lead Developer
Contributor
Architecture
Logistics
More branched trees can be easily created btw. Forgot to mention that in the previous post! :) Will play a lot more with possible grammars and such to find more interesting tree types.
 

Cervator

Org Co-Founder & Project Lead
Contributor
Design
Logistics
SpecOps
Cool. Lots of distinct tree types would be yummy. Any easy way to define the grammar in a Groovy "tree" config file? :D

Everybody should put a post in the intro forum IMHO :)

I trust Jeremiah as well, will badger both him and Stuart till they have posts in there. I'll let Jer into the main forum/wiki parts too. Easy to do that with RL friends, harder with random people harvested off the internet with no prior relation.
 

begla

Project Founder and Lead Developer
Contributor
Architecture
Logistics
I've pushed another "big update" which extends the Groovy support for the tree generators amongst other things. From now on tree generators can be assigned to appear only in specific biomes solely using Groovy. So if anyone likes to add some fancy fancy trees to a specific biome. Go ahead! It should only take 3-4 lines of code in Groovy. :D
 

Cervator

Org Co-Founder & Project Lead
Contributor
Design
Logistics
SpecOps
I scanned over the code a short while ago - cool stuff. Happy to see the Groovy is getting put to work :D
 
Top