Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
Next revisionBoth sides next revision
pluggable_plants [2009-03-10 11:56] davegriffithspluggable_plants [2009-03-12 14:13] davegriffiths
Line 5: Line 5:
   * Somewhat difficult to control in an artistic sense   * Somewhat difficult to control in an artistic sense
  
-This is an alternative method where the topology of a plant is still defined by algorithm, but structural shape is defined by the texture images used as components of the plant.+This is an alternative method to the standard approach of rendering L Systems, where we can still define the topology of a plant by an algorithm, but the structural shape is defined by the texture images used as components of the plant.
  
 This also allows us to put much more detail in the textures, and build plants out of fewer components. This also allows us to put much more detail in the textures, and build plants out of fewer components.
Line 11: Line 11:
 ====How it works==== ====How it works====
  
-Plants are built out of components which are defined by two texture images. The first texture is the one which is rendered on screen. The second is used to define where the connection points are, indicated by black blobs - this is where child components will be connected to. These blobs can be put anywhere in the texture and are automatically located and used by the program. You will be able to put all these textures into a directory and the program will build plants for you for previewing.+Plants are built out of components which are defined by two texture images. The first texture is the one which is rendered on screen. The second is used to define where the connection points are, indicated by black blobs - this is where child components will be plugged into. These blobs can be put anywhere in the texture and are automatically located and used by the program. You will be able to put all these textures into a directory and the program will build plants for you for previewing.
  
 Each component is only allowed one place where it connects to it's parent, which is always at the bottom of the texture, in the middle. Leaves don't need connection point textures as they don't connect to any child components, but still need their parent connection point at the bottom. Each component is only allowed one place where it connects to it's parent, which is always at the bottom of the texture, in the middle. Leaves don't need connection point textures as they don't connect to any child components, but still need their parent connection point at the bottom.
Line 25: Line 25:
 {{:lollypop-05.png?300|}} {{:lollypop-05.png?300|}}
  
-A resulting lollypop tree. More work could be done on the joins between the textures, but you get the idea. You can edit the connection point textures, and rerun the program to adjust the positions of the components.+A resulting lollypop tree. More work could be done on the joins between the textures, but you get the idea. You can edit the connection point textures, and rerun the program to adjust the positions of the components.  
 + 
 +This is another example, with some better textures which take into account the joining a little better, and some scaling: 
 + 
 +{{:knobbly.png?500|}}
  
 ====Texture image format and naming convention==== ====Texture image format and naming convention====
Line 39: Line 43:
 <code>comp-A-B.png</code> <code>comp-A-B.png</code>
  
-Where A is the number of child connection points, and B is the variation - as we may want to have many different variations of each type of branch.+Where A is the number of child connection points, and B is the variation number - as we may want to have many different variations of each type of branch.
  
 ===Leaves=== ===Leaves===
Line 47: Line 51:
 <code>comp-B.png</code> <code>comp-B.png</code>
  
-Where B is the variation again.+Where B is the variation number again. 
  
  • pluggable_plants.txt
  • Last modified: 2009-03-12 14:32
  • by davegriffiths