White Shining Rock Logo
White Shining Rock Logo

Orchards and tree generation

May 14, 2013 | Dukus | 38 Comments

For a long time I've been neglecting the orchards in the game. Only apples could be grown in them, and the art for them was mediocre. While this was ok, the townspeople in the game like variety in food, and just apples wasn't making them happy, especially if there were no wild berries in the forest to collect.
So this week I added the new art required for having larger variety in the orchards. This is a somewhat tedious for each tree type. For performance reasons I can't model every branch and leaf, which in some ways I think would be easier than generating low poly trees.
I have to make a lot of different resources to get the these trees into the game and usable in orchards. There's the model itself, which has solid parts for trunks and main branches, textures on billboards for the finer branches, textures for the leaves, textures for ambient occlusion, a model representing the fruit when it's harvested or moved from storage, and textures for that. Then there are sprites and text strings representing the fruit and seeds so that it can be shown in the user interface. Then there's a whole bunch of data to configure. The tree needs to be setup as a growable item, configured to grow fruit dependent on temperature, and then tied into the game. Then the actual item that townspeople can use and eat needs to be configured as well.
Once it's in game I generally tweak the artwork until I'm happy with it. Auto-detecting file changes and reloading resources is awesome for this. If you're making a game, I highly recommend using a tool set that does this to reduce iteration time.

OrchardsIn the end, I have all these nice trees that hopefully look like pruned fruit trees in an orchard.
Maybe one day when I have nothing else to do I'll write a tool to make the trees and textures for me, but writing a system like that would probably take more than the 8 hours or so of art and setup time it took to make these.
Before you yell at me, yes, I know there are tree generators out there, but my trees are very low poly and use custom shaders and model formats to expand billboards on the GPU and handle removing leaves in winter. I'm also one of those weird programmers that likes to write everything myself. 🙂

Leave a Reply

Your email address will not be published.

38 comments on “Orchards and tree generation”

  1. I'm so sorry i can't help you. I'd love to help but i'm too fresh with graphics programming. 🙁

  2. Excellent update. I think you have a great eye for making things look good and keeping them within scope for your project 🙂

  3. With the popularity of post-process effects like SweetFX and ENBSeries, it might be cool to support something like that out of the box with support for seasons, so people can write their own post-process shaders. Gives the community something to do and share too, which is a bonus.

  4. With every post and screenshot, I get more and more excited about this game!

  5. "I’m also one of those weird programmers that likes to write everything myself."

    HALLELUJAH! I'm not the only one! \o/

  6. Hi , im watching the progress of building this game and is awesome , do you have a Alpha release hat we can test it? o maybe when do you think the game will be out ? i will pay for it!

  7. Seeing the pic and it looks great but I can't help but notice all of the trees are the same. Obviously it would be difficult to have many variations, but perhaps you could fake it by having each tree rotated around the y-axis randomly so that they don't all seem the same when looking from one view.

  8. Looking great as always!

    Is that picture of one single orchard with a number of different fruit trees or a number of individual orchards grown next to each other? Hard to tell with the snow.

  9. I am looking forward to buying and playing this game more and more each day!
    I am a hunter, and know that a well-established orchard will attract and harbor deer, turkey, and other wild game. Deer especially love ground-fallen apples.
    Perhaps you can allow for a certain number of Game for Hunters to take from an orchard? Perhaps after a few years it will attract back the animals scared away by the planting?

  10. You mentioned the trees will lose their leaves in winter, does this mean there will only be certain times you can harvest (e.g summer?), and certain times you can build/plant orchards?

  11. The more I see of this game, the more I want it. It's seriously -exactly- what I've been looking for in terms of gameplay, design and setting. I think you're doing amazing work, and I'm seriously looking forward to pushing money on you so I can finally become a hermit and play this game infinitely.

  12. Will we be able to chop down orchard tree to use as firewood in the time of winter crisis? Survive the freeze this season and die of starvation the next!

  13. Could you add some random rotation to each tree to we don't have an orchard full of clones?

    Even having 1 model with 8 angles would look much better than 1 model with 1 angle.

  14. Make hazards! Storm, Plague, Rats, Earthquake, Flood, Avalance!!

    Nice trees btw 🙂

  15. Just discovered this project this week due to the boingboing.net post and I've been reading through the information that's available for the game but I have one question I haven't been able to find an answer for just yet.

    How easily will it be to modify the art assets?

    I really like the looks of the game but the village seems fairly generic European. What if I wanted to produce a mod to change building designs to a more Asian, Greek, or Spanish look and feel?

  16. As the manager of programmers, the "I have to write everything myself" programmer drives me freaking nuts. If a problem has been solved, use the solution, for christsakes..

    If it's your personal project, hey, code away. This looks nice, though.

  17. As a manager of engine programmers, the "use 100 different middleware solutions" approach drives me "freaking nuts" ;).

    Programmers often spend way too much time trying to get different middleware to play nicely with everything else in the system. And at the end of the day you have a bunch of programmers that only know how to integrate middleware and a bunch of code that has no unified coding standards which make it harder for new hires (and everyone else) to understand.

    Yes, I'm being overly dramatic but after having built engines and games for 12 years I can definitely say that I would rather hire someone that could write systems instead of glue. 🙂

    But maybe I'm biased because Luke was one of those engineers and Banished looks amazing!

  18. When I found this blog a couple days ago, I immediately started reading the entire thing from the very beginning. I'm going to be almost sorry to see the game finished, because when it's done, you'll have nothing left to post.

  19. @Inacio: Yeah the branches that are alpha tested under dx9 doesn't play nice with standard MSAA. I've been thinking of adding FXAA as an optional post process, but it's pretty low on my priority list.

    @William, @Flammy: Of course I can rotate them. 🙂 I'm not too picky about things like that while I'm building new art.

    @Andy: The image is several orchards placed close to one another.

    @Gaz: You can create the orchard at anytime, but fruit only grows in the warm months, and must be harvested before a frost.

    @Krisada: Yes, you can destroy the orchard and the trees will remain - you can then cut them down for firewood.

    @Eak: There is a possibility of mod tools in the future, but at the moment I'm focused on core development of the game.

  20. I also can't stand using anything 3rd party, even Microsoft.

    I managed to talk my job into letting me re-write everything from the ground up in the GUI framework (WPF/MVVM) and I won't even use the MS Enterprise Library. Everything is written by me.

    Kudos to you.

  21. @Dukus - Awesome, just if you have one of those little (ok, probably massive) 'things to do before release' notepads I'd love to see tiny little touches like that included because... It just make me happy to not have an orchard of cloned trees.

    Thanks for responding!

  22. Очень жду выхода этой игры! Удачи тебе, чувак:)

  23. Your comment about the tree coding reminded me of this quote...

    “To look around at what you have accomplished in a day gives a man a good feeling. Too many men work on parts of things. Doing a job to completeness satisfies a man.”
    ― Richard Proenneke

    The game looks awesome, btw.

  24. I think it great that you want to do everything by yourself. Keep up the awesome work! 🙂

  25. Keep it up people who passed on Simcity, like myself, are waiting for something like this.
    Awesome Job.

  26. " If you’re making a game, I highly recommend using a tool set that does this to reduce iteration time. "

    You mean Like Unity?

  27. Im checking in to this site everyday, it just makes me happy and i can't wait to it out.

  28. Im checking in to this site everyday, it just makes me happy and i can’t wait to TRY it out.

  29. One must assume he is a busy bee of late. He may be polishing the game ready for release?

  30. Iv'e only just came across this game but from what iv'e seen in the videos this is a game that I and definitely others have been looking for for years.

More Posts

Code Rot

April 17, 2022
1 2 3 47
Back to devlog
Back to devlog
© Copyright 2021 Shining Rock Software
Website Design & Branding by Carrboro Creative
menu-circlecross-circle linkedin facebook pinterest youtube rss twitter instagram facebook-blank rss-blank linkedin-blank pinterest youtube twitter instagram