paxsonsa Posted January 3, 2015 Share Posted January 3, 2015 Hey Guys, Been working on a new piece, it still has some distance to go. Namely on the shaders, trees, and instancing attributes. I am currently working on the trees and figuring out the best way to make trees in Houdini. Let me know if you have some ideas! Quote Link to comment Share on other sites More sharing options...
kleer001 Posted January 4, 2015 Share Posted January 4, 2015 For trees I would aim for 7-12 species and "cheat" by using reference. Maybe start with geographical region (maybe Pacific Noth West) and look up what kind of trees are native to that area. You'll get shapes and heights and branch formation info. Dunno how many individuals you're going to need, maybe 20 each? No need to have each one completely different, random rotation and scale will take care of a lot of visible variation. Maybe a road cutting through the mountains might help for scale? Quote Link to comment Share on other sites More sharing options...
paxsonsa Posted January 5, 2015 Author Share Posted January 5, 2015 For trees I would aim for 7-12 species and "cheat" by using reference. Maybe start with geographical region (maybe Pacific Noth West) and look up what kind of trees are native to that area. You'll get shapes and heights and branch formation info. Dunno how many individuals you're going to need, maybe 20 each? No need to have each one completely different, random rotation and scale will take care of a lot of visible variation. Maybe a road cutting through the mountains might help for scale? I am planning on using some lighting tricks for the scale, though a road is a great idea. My reference is Pacific North Western Mountains so I have the reference photos for those tree its just a matter of the best quality and speed ratio of how to create them. L-Systems seem fun but it hasn't quite clicked with me how to use them well. I am trying to find a good balance of procedural generation without having to re-invent the wheel but I should prob try and create a good tree model for the experience. Just not sure of the steps quite yet. Quote Link to comment Share on other sites More sharing options...
kgmcnamara Posted January 5, 2015 Share Posted January 5, 2015 In my experience I have found space colonization algorithms to be much more manageable and controllable for plant growth than L-Systems. This thread shows how they have been used to grow some pretty convincing trees Quote Link to comment Share on other sites More sharing options...
kleer001 Posted January 5, 2015 Share Posted January 5, 2015 L-systems are cool, don't get me wrong, they're a great mind bender and I think they should be taught in school. That said I think they can be a bit of a rabbit hole to get lost in. With evergreens I bet you can get away with copy stamped curves on a line that get shorter on the way up. A big speed up for you might be rendering poly/nurbs curves, just add a "width" point attribute and you can control the render size of the curve at that point. Random though, maybe consider a clear cut area in your forest? Some area washed away by a flood or landslide? I think tree stumps, trunks, and forest debris can help with scale too. http://cdn.lightgalleries.net/4bd5ec0174be3/images/web-industrial-forestry-ground-3-2.jpg There's color variation and tree age variation. http://kswild.org/what-we-do/clearcut2.png Probably too many ideas, I'll be quiet now. Happy New Year! Quote Link to comment Share on other sites More sharing options...
paxsonsa Posted January 5, 2015 Author Share Posted January 5, 2015 In my experience I have found space colonization algorithms to be much more manageable and controllable for plant growth than L-Systems. This thread shows how they have been used to grow some pretty convincing trees I agree Kevin! though L-Systems have been something I have needed to explore though i think for this case I will use VEX. That thread is really awesome, I wonder how the algorithm would change for evergreens? L-systems are cool, don't get me wrong, they're a great mind bender and I think they should be taught in school. That said I think they can be a bit of a rabbit hole to get lost in. With evergreens I bet you can get away with copy stamped curves on a line that get shorter on the way up. A big speed up for you might be rendering poly/nurbs curves, just add a "width" point attribute and you can control the render size of the curve at that point. Random though, maybe consider a clear cut area in your forest? Some area washed away by a flood or landslide? I think tree stumps, trunks, and forest debris can help with scale too. http://cdn.lightgalleries.net/4bd5ec0174be3/images/web-industrial-forestry-ground-3-2.jpg There's color variation and tree age variation. http://kswild.org/what-we-do/clearcut2.png Probably too many ideas, I'll be quiet now. Happy New Year! Oh man these ideas are great keep them coming! I completely agree with the l-systems being taught but I previously went the route you mention and it definitely is the route I will stick too - I am currently finishing up the DAs for each of my trees. The curves idea is a great idea! I have not considered that. Currently I was using a polywire with the width attr but the curves will be so much faster to instance! I like your ideas for the clear cutting, its definitely in the plan along with all the variations we could imagine (at least i can) right now I am working on the tree models. The diffcult part is going to be the needles. For that test render I was using the skeleton above with a width attr and poly wire and then just point replicating the skeletons initial points and copying grids to them for the leaves/needles, its not the most realistic by any means but it was a start. great reference! Thanks again! I will try combining both ideas. DA for the main skeleton (trunk and branches) of the tree and then use Space Colonization for the secondary branches and leaves. what do you guys think? Happy new Year! Quote Link to comment Share on other sites More sharing options...
paxsonsa Posted January 5, 2015 Author Share Posted January 5, 2015 Here is some of my current lighting reference (some): I am now debating if I should incorporate my Hydraulic Erosion Work! Quote Link to comment Share on other sites More sharing options...
kleer001 Posted January 5, 2015 Share Posted January 5, 2015 >Hydraulic Erosion Work ?!?! How do you do that? That stuff's super sexy Quote Link to comment Share on other sites More sharing options...
michael Posted January 5, 2015 Share Posted January 5, 2015 you should look into instancing/packed primitives etc right away...you'll be able to render millions of trees...based on just a few variations Quote Link to comment Share on other sites More sharing options...
paxsonsa Posted January 5, 2015 Author Share Posted January 5, 2015 (edited) >Hydraulic Erosion Work ?!?! How do you do that? That stuff's super sexy VEX Man! Here are some papers I was pointed to when i was researching and learning! When i get my HIP finish i will upload it with some of that content! http://www.cs.rpi.edu/~cutler/classes/advancedgraphics/S09/final_projects/odhner_fleming.pdf http://www.roxlu.com/downloads/scholar/004.fluid.fast_hydrolic_erosion_simulation_and_visualisation.pdf Shawn Lipowski does a great job in his CGSociety course on VEX but his is much more general! you should look into instancing/packed primitives etc right away...you'll be able to render millions of trees...based on just a few variations That exactly what I am doing. Packing everything and using the instance object, great render times but it requires me to do some tricks for the materials because of how the instancing works but its simple enough! Thanks for the advice let me know if you have any more! Edited January 5, 2015 by paxsonsa 1 Quote Link to comment Share on other sites More sharing options...
Robert Posted January 9, 2015 Share Posted January 9, 2015 What does your packed primitives/instancing setup look like? I thought that as soon as you pack something and copy it around, like with the copy SOP's "pack before copying", it was already regarded as instanced. Do you still need to use a separate instance object? As for setting up the materials, after some searching I found that you need to open your ROP's rendering parameters and add "declare materials" to allow the use of point attributes in the shader of packed primitives. Quote Link to comment Share on other sites More sharing options...
huangng Posted July 6, 2015 Share Posted July 6, 2015 Super Awesome man Quote Link to comment Share on other sites More sharing options...
acey195 Posted July 7, 2015 Share Posted July 7, 2015 L-systems are cool, don't get me wrong, they're a great mind bender and I think they should be taught in school. They are (1 out of 3 vids) 1 Quote Link to comment Share on other sites More sharing options...
paxsonsa Posted July 7, 2015 Author Share Posted July 7, 2015 Thanks Acey! This looks cool I will give it a watch! Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.