Hi !
Featured games (85)
games approved by the League of Dukes
Games in Showcase (636)
Games in Android Showcase (178)
games submitted by our members
Games in WIP (687)
games currently in development
News: Read the Java Gaming Resources, or peek at the official Java tutorials
    Home     Help   Search   Login   Register   
Pages: 1 [2]
  ignore  |  Print  
  Greenspace, a park or landscape design toy  (Read 12064 times)
0 Members and 1 Guest are viewing this topic.
Offline Varkas
« Reply #30 - Posted 2013-01-21 13:05:15 »

I've now included two sorts of L-System based trees, one shown in this screenshot. The former photo-postprocessed trees are out, since they didn't fit to the raytraced plants.

I've published a new version of the park designer, also with a new version of the plant designer. The plant designer isn't very well integrated at the moment though:

Known problems:

- Plant designer export to the greenspace simulation requires manual steps (aka not functional unless you want to rename and edit files manually)
- The soils department is subject to a complete redesign
- The new raytraced plants don't show a yearly cycle of changes yet
- The "Green Appelar" tree is misconfigured, better don't use it.


- Trees are planted small and grow over the time of several ( = 4) simulated years.


- The "Green Appelar" tree is misconfigured, better don't use it.

I've fixed that. If you've gotten the original "" and it seems important enough to you, you can now download the new "" with the fix (actually the tree was not only misconfigured, some images were missing altogether):

Beware, the Green Appelar and Dark Bludanga trees can grow rather big over the years.

if (error) throw new Brick(); // Blog (german):
Offline matheus23

JGO Kernel

Medals: 123
Projects: 3

You think about my Avatar right now!

« Reply #31 - Posted 2013-01-21 19:44:22 »

How are you creating those Images right now?

Are these only images included in your application, which were generated by the raytracer, we saw before?
Why mot make it cool, and let it ray-trace on-the-fly, in the background.
So it reads the script, creates the random tree geometry and finally raytraces it and gives it to the applicaiton, just when you click "generate tree" or something similar...

See my:
    My development Blog:     | Or look at my RPG | Or simply my coding
http://matheusdev.tumblr.comRuins of Revenge  |      On Github
Offline Varkas
« Reply #32 - Posted 2013-01-21 21:10:04 »

The trees were made with a script that generates a scene for the PovRay raytracer ( )

The greenspace simulation is based on an old map editor code of mine which underwent several reincarnations, but stayed a 2D/bitmap/sprite based application. So behind the scenes it's all just bitmaps.

Tracing these plants is somewhat time consuming, both with PovRay and my selfmade raytracer. But on modern computers it doesn't take hours anymore, but less than a minute to generate a plant or tree. With PovRay I have a problem though that it needs several steps to trace the plant, generate a mask, and another pass to generate a ground shadow for it. I haven't automated this process fully yet. With my own tracer I get the bitmaps in the right format right away, but I must first write some more turtle scripts for plants.

Maybe some day I can render the plants behind the scenes once the player chooses a type, location and view Smiley

At the moment all the images are genrated before a release and stored in the "" archive. You can open that with my tilemaster application:

I think at some day I must bundle tilemaster with the gardening simulation, since that is the only easy way to include new bitmaps which were not made by the plant designer/inbuilt raytracer. Well most of the tilemaster code is already in the last release, so it won't be a big step.

Edit: The last release of tilemaster has a problem with some of the really big images late in the tileset. You need to set the canvas size to about 1500x1500 pixels to see them. There shouldn't happen anything bad, though. I fixed the bug in the code meanwhile, but didn't publish a new tilemaster release yet.

if (error) throw new Brick(); // Blog (german):
Games published by our own members! Check 'em out!
Legends of Yore - The Casual Retro Roguelike
Offline Varkas
« Reply #33 - Posted 2013-01-22 22:30:50 »

After some struggling with vector math, the raytracer can now build intersection and difference objects from other basic objects (CSG). I bet there are still a lot of bugs lurking, but it was a step forward.

Also, a new plant script, to create snowdrops:

The flower bell needs more detail, but since this is a tiny sort of plant, it shouldn't matter much. I need to add an interface to the scripting language to set the shinyness of the surfaces, and the amount of ambient light they receive. This way I could make the flower appear softer white.

if (error) throw new Brick(); // Blog (german):
Offline erikd

JGO Ninja

Medals: 16
Projects: 4
Exp: 14 years


« Reply #34 - Posted 2013-01-23 00:48:07 »

This all looks very interesting.

Some years ago I was quite hooked on povray.
I once created a script that would generate a randomized building with each and every brick modeled with slightly randomized positioning to make it look natural. It took quite some time to make it even finish without running out of memory... which meant that my idea to render a whole generated city with that never came to be Smiley

Do you have some sort of 'end-goal' with this project?

Offline Varkas
« Reply #35 - Posted 2013-01-23 14:14:15 »

The brick house presumably worked as well as my pine with each needle modeled as a small object. It worked fine till I wanted to place a second pine in a scene, and my PC ran out of memory. PovRay is very interesting for sure, though.

I have a blurry idea to let players develop parks and garden in a loosely collaborative way, share the plants that they've created, maybe trade them. Maybe let them work together (via network) on a park. Maybe add more simulation there, e.g. animals. Maybe add game-like elements like challenges, threats (moles, locusts, bad weeds ...). Many "maybe" ideas Grin

For trading I'll need to set up a database somewhere, and an auction-like interface where one can enter offers and bids. I once spent a day or two on this and noticed it's quite some work. Collaborative editing of a map (via network) will be less work, but I haven't done anything serious in that direction yet.

At the moment it's in the stage of creating tools, though. The script-based plant designer, also a small bitmap editor to postprocess the rendered plants, or just create bitmap-based plants and map objects. And finally a better map editor.

I don't know if this ever will get somewhere. The ideas are very far flung, and the scope that I've sketched above is quite big. For the moment it's fine though to see the plant designer get more versatile and powerful and make simple arrangements of plants with the map editor.

if (error) throw new Brick(); // Blog (german):
Offline krasse
« Reply #36 - Posted 2013-01-23 14:49:29 »

I like povray as well but I found it a bit tricky to use it as a sub-module for rendering things in windows. The runner (at that time) sometimes popped up an annoying dialog box.
I modified the code for it but then it is not ok to distribute it any longer according to the povray license.

Offline Varkas
« Reply #37 - Posted 2013-01-23 15:09:45 »

A while I had been pondering about using Povray this way, but I didn't like the idea of having to ship platform dependent binaries with a Java utility. IMO it kills one of the core benefits of java, the ease of installation/running on multiple platforms.

IIRC you can distribute modified Povray executables though, as long as you make clear that they are modified by you, and that the original team is not responsible for support. IIRC there is/has been MegaPov, an extended version of Povray which was distributed, so it should be possible.

if (error) throw new Brick(); // Blog (german):
Offline Varkas
« Reply #38 - Posted 2013-01-25 22:20:38 »

Most plants got a yearly lifecycle now. Some snapshots from one year passing:

if (error) throw new Brick(); // Blog (german):
Offline sproingie

JGO Kernel

Medals: 202

« Reply #39 - Posted 2013-01-25 22:26:17 »

Brown grass is too brown, makes it hard to see anything.  Most real grass just gets yellowish-brown and lighter.
Games published by our own members! Check 'em out!
Legends of Yore - The Casual Retro Roguelike
Offline Varkas
« Reply #40 - Posted 2013-01-25 22:32:07 »

No problem to make it lighter. Seems I'm used to autumn/winter being rather dark seasons ... I'll test a lighter shade to see if that looks better. (Winter I have configured off currently, I'm fed up with having real winter, that's bad enough).

if (error) throw new Brick(); // Blog (german):
Offline Best Username Ever

Junior Devvie

« Reply #41 - Posted 2013-01-26 04:54:20 »

It should probably look greener, not lighter. You might be able to mix in patches of green/brown grass instead of using solid colors, but it might be hard to get that to look right.

The seasonal plant cycle thing is cool. Are they animated or does it pop between one state and the next?
Offline Ultroman

JGO Knight

Medals: 25
Projects: 1

Snappin' at snizzes since '83

« Reply #42 - Posted 2013-01-26 07:33:01 »

As I wrote in the other thread, this is AWESOME! Really cool!

I love your tools. Man, if I was to make those, I'd be spending years...but then you have a lot of experience with Swing. Love your scroll-bars Smiley

- Jonas
Offline Varkas
« Reply #43 - Posted 2013-01-30 11:14:46 »

The seasonal plant cycle thing is cool. Are they animated or does it pop between one state and the next?

There is only limited animation. Plants can be made with any number of frames, which are spread through the year, but in the demo there are only 3 to 7 frames per plant, so the changes from one state to the next are quite strong.

As I wrote in the other thread, this is AWESOME! Really cool!

I love your tools. Man, if I was to make those, I'd be spending years...but then you have a lot of experience with Swing. Love your scroll-bars Smiley

Thank you very much, but it's really not that special Smiley

Most of my stuff has old roots. If you've been toying around with games, tools and demos for 15 years or so, you just have a big repository of code snippets which you can reuse. And the scrollbars are just from the "Nimbus" look and feel that comes with Java since a while Wink

It's the latest release, nothing strikingly new, just a more rounded version.

if (error) throw new Brick(); // Blog (german):
Pages: 1 [2]
  ignore  |  Print  
You cannot reply to this message, because it is very, very old.

Dwinin (73 views)
2015-11-07 13:29:08

Rems19 (81 views)
2015-10-31 01:36:56

Rems19 (78 views)
2015-10-31 01:32:37

williamwoles (107 views)
2015-10-23 10:42:59

williamwoles (93 views)
2015-10-23 10:42:45

Jervac_ (110 views)
2015-10-18 23:29:12

DarkCart (135 views)
2015-10-16 00:58:11

KaiHH (117 views)
2015-10-11 14:10:14

KaiHH (157 views)
2015-10-11 13:26:18

BurntPizza (172 views)
2015-10-08 03:11:46
Rendering resources
by Roquen
2015-11-13 14:37:59

Rendering resources
by Roquen
2015-11-13 14:36:58

Math: Resources
by Roquen
2015-10-22 07:46:10

Networking Resources
by Roquen
2015-10-16 07:12:30

Rendering resources
by Roquen
2015-10-15 07:40:48

Math: Inequality properties
by Roquen
2015-10-01 13:30:46

Math: Inequality properties
by Roquen
2015-09-30 16:06:05

HotSpot Options
by Roquen
2015-08-29 11:33:11 is not responsible for the content posted by its members, including references to external websites, and other references that may or may not have a relation with our primarily gaming and game production oriented community. inquiries and complaints can be sent via email to the info‑account of the company managing the website of java‑
Powered by MySQL Powered by PHP Powered by SMF 1.1.18 | SMF © 2013, Simple Machines | Managed by Enhanced Four Valid XHTML 1.0! Valid CSS!