|
ngPlant is a plant modeling software package. Designers can use interactive
tool to create 3D models of different plants and trees. Software developers
can use 3D API-independent library to use generated plant models in their 3D
applications, or to create plant modeling plugins for different 3D modeling
tools.
|
|
|
|
Major new features and improvements:
-
fixed a bug in fragment shaders code. Absence of "uniform" qualifier in
sampler declarations caused shaders compilation errors in some
configurations. Thanks to Milos Zajic for bug report.
-
"turntable" camera mode implemented. Mode can be set in "Preferences"
dialog ("Control" tab).
-
mouse sensitivity can be changed via "Preferences" dialog.
-
curve in curve editor now can be reset to default state. Click on
right mouse button on empty space inside curve editor and use
"Reset to default" menu item.
-
curve editor size is now customizable via "Preferences" dialog.
-
You can switch between perspective and orthographic mode in 3d-view using
'NUMPAD-5'.
-
sensitivity of several numeric controls changed to more appropriate values
("Length" parameter of "Tube" stem model and "Density" parameter of
branching algorithm).
-
g-mesh import plugin improvement - now "g" lines in ".obj" files are silently
skiped. In previous version "g" lines presence caused .obj file import to
fail. Thanks to Edwin van het Bolscher for help with this problem.
-
now ".obj export" (built-in - not plug-in) produces more optimal files
in sense of size and material switch count.
-
fixed a bug which brokes pywrapper usage (introduced in 0.9.6)
-
ngpbench utility implemented. It is used for ngpcore profiling.
-
ngplant 3d-view update speed improvements.
|
|
Ari Häyrinen posted tutorial
on compiling ngPlant on Ubuntu Linux.
|
|
Yorik van Havre wrote excellent plant making tutorial.
This tutorial covers all steps of plant modeling: some theory, modeling plant
in ngPlant, creating leaf and branch textures with
Inkscape
and GIMP and using created models in
Blender. I strongly suggest everyone
interested in plant modeling to read this tutorial.
|
|
Major new features and improvements:
-
New stem model - GMesh added. This model allows to use arbitrary
meshes as stems or leaves. A most generic way to import mesh is to use ".OBJ import"
plug-in available under "Stem model->G-Mesh->Import .OBJ" item of plant
structure popup menu. Two other possibilities are:
"Stem model->G-Mesh->Triangle" (triangle stems) and
"Stem model->G-Mesh->Rhomb" (rhomb stems). Set of available meshes can be
extended without C++ coding - new type of plug-ins written in Lua
is used to create stem geometry. "plugins/gmesh_rhomb.lua" and
"plugins/gmesh_triangle.lua" can be used as a base for creating other
gmesh plugins.
- ngplant scan plug-ins directory (it can be set in preferences dialog)
for export and g-mesh plug-ins. Export plug-ins now are available directly
under "File->Export to..." menu.
|
|
Major new features and improvements:
-
ngpcore, ngput and pywrapper libraries now distributed under the
terms of BSD License.
-
Now it is possible to add up to 8 branch sub-groups per branch (in previous
versions up to 4 sub-groups could be added).
-
GLSL support added to ngplant. With GLSL support it is possible to see
per-pixel diffuse lighting applied to plant models in real-time
(normal-map support). Source code for shaders used by ngplant is located
in "shaders/ngplant_default_vs.glsl" and "shaders/ngplant_default_fs.glsl"
files.
-
Now it is more easy to build and use ngplant libraries under Windows.
Thanks to Matthias Meyer for initial patches.
More detailed list of changes can be found in ngPlant package ReleaseNotes
file.
|
|
Major new features and improvements:
-
partial texture layers support (ngplant,ngpshot and ngpview use
diffuse texture layer only)
-
branch group copy operation implemented in ngplant
-
meaningful names can be assigned to branch groups
-
plant model auto-update now can be disabled
More detailed list of changes can be found in ngPlant package ReleaseNotes
file.
|
|
Yorik van Havre started
The Blender Greenhouse
project. Project page contains several nice textured plant models made with
ngPlant. All models are available for download as .blend
(Blender file format) files. Each model
contains short description of modeled plant, a link to
Wikipedia plant description and a link to
ready-to-use alpha textures.
I would like to thank Yorik for his nice work.
|
|
ngPlant 0.9.3a is a bug fix release. This release fixes a (serious) bug
which caused broken parameter panels appearance and made model editing almost
impossible in ngplant application.
Thanks to Abe Madey and "jpbouza" (member of blenderartists.org forum) for
bug report.
|
|
New features and improvements:
- Modeling changes:
-
"Phototropism mode" parameter removed from "Tube" stem model. Now it is
possible to apply both modes to the same branch group using "Phototropism
distribution" curve.
-
"Cylindrical" billboards support added.
-
LOD visibility range support implemented. It allows to control branch
visibility depending on selected LOD level.
-
Transparency control implemented. It allows to make branches smoothly
fade-in and fade-out during LOD changes.
- ngplant application changes:
-
configuration file 'texdirs' is not used anymore, all ngplant settings
are stored in '.ngplant' configuration file.
-
"Preferences" dialog ("File->Preferences...") can be used to set paths
to textures, export and 3d-view user preferences. Note that changes
to texture paths does not apply immediately, you should restart ngplant
to apply changes.
- Export functionality changes:
-
selective export support added - it is possible to exclude from
export hidden branch groups and branch groups which are outside
LOD visibility range.
-
Now it is possible to write export plug-ins for ngplant using
Lua programming language. To run
export plug-in use "File->Export to->Run export script..." and
select script to run from "plugins" directory.
-
exp3dobj.lua plug-in implemented (it can be used as a reference for
implementing other export plug-ins).
- 3D-view improvements:
-
ground plane can be hidden now
("File->Preferences...->Misc->Ground visible")
-
ground plane color can be changed using "Preferences" dialog
-
'NUMPAP-3','Shift-NUMPAD-3','NUMPAD-7','Shift-NUMPAD-7' and
'Shift-NUMPAD-1' keys can be used to set camera to right/left,
top/bottom and back view.
-
'NUMPAP-4','NUMPAD-6','NUMPAD-2','NUMPAD-8' keys can be used to
rotate camera by discrete steps.
- Parameter panels improvements:
-
Now it is possible to enter numeric values directly from keyboard -
double-click on Numeric control and enter number in opened dialog
window.
-
Now it is possibe to edit curves more precisely - double-click on empty
space in curve control and edit curve in resizable dialog.
-
base texture can be removed from material (previously it was
possible only to change texture by another one)
- Changes in other applications:
-
ngpview application now supports billboard branches (previous version
rendered such branches as oriented rectangles)
- C++ API (HLI) changes:
-
GetBillboardSize method added to P3DHLIPlantTemplate class
-
new constructor added to P3DHLIPlantTemplate class to allow
create plant template using existing P3DPlantModel object.
-
GetBillboardMode method added to P3DMaterialDef class
-
IsLODVisRangeEnabled and GetLODVisRange methods added
to P3DHLIPlantTemplate class
-
IsAlphaCtrlEnabled,GetAlphaFadeIn and GetAlphaFadeOut methods added
to P3DMaterialDef class
- Python API (HLI) changes:
-
GetBillboardSize method added to BranchGroup class
-
BillboardMode attribute added to MaterialDef class
-
IsLODVisRangeEnabled and GetLODVisRange methods added to
BranchGroup class
-
AlphaCtrlEnabled and AlphaFadeRange attributes added to
MaterialDef class
Thanks to all who participates in ngPlant discussion at project forum at
sf.net and other sites and send me bug reports and feature requests. It helps
a lot!
|
|
Abe Madey created
web page containing results
of his experiments with ngPlant and PovRay. This page contains several pictures
of beatiful plants he modeled using ngPlant and rendered with PovRay. Abe kindly
provided ".ngp" files for four plant models. Before using these files please
read terms of usage on the top of web page.
|
|
ngPlant 0.9.2a is a bug fix release. This release fixes a bug which caused
incorrect material assignments in "*.obj" files exported from ngplant
application (Thanks to Ryan Ammoury for bug report).
|
|
Major new features and improvements:
- Wings stem model implementation. This stem model is useful for
modeling palm leaves, ferns and similar ones.
- Quad stem model improvements. Now Quad stem can be
bent along its Y axis and scaled depending on its location on
parent branch.
- "simplefern" plant model - example of Wings stem model usage.
- High-level interface for C++. This programming interface allows
to use ngPlant models in real-time 3D applications. Documentation for
HLI can be found here. ngpshow
application (very simple plant viewer) is an example of using
HLI in real-time 3D application.
- Python bindings for ngPlant HLI. Now it is possible
to create plant models exporters and viewers using Python programming
language. Python extension module documentation can be found
here. ngp2obj.py script
(.ngp to .obj exporter) shows how to create .ngp exporters using
Python.
More detailed list of changes can be found in ReleaseNotes file.
|
|
This version include: new ngpshot utility, compressed TGA files support,
ngplant GUI improvements and several bugfixes. More detailed list of changes
can be found in ReleaseNotes file. Thanks to everyone who send me patches and
bug descriptions!
|
|
|
|
ngPlant source code (platform-independent) and binary installer for Windows
are available from here.
|
|
ngPlant is a Free Software project. ngPlant modeling tool and ngpshot utility are
distributed under the terms of the GNU General
Public License (GPL). Software libraries (libngpcore, libngput and pywrapper) which may
be used in another projects are distributed under the terms of the
BSD License.
|
| Plant making tutorial |
Excellent plant making tutorial written by Yorik van Havre.
This tutorial cover all steps of plant modeling: some theory, modeling plant
in ngPlant, creating leaf and branch textures with
Inkscape
and GIMP and using created models in
Blender. I strongly suggest everyone
interested in plant modeling to read this tutorial.
|
| The Blender Greenhouse |
"The Blender Greenhouse" is a project created by Yorik van Havre.
On project web-page you will find several nice plant models made with
ngPlant. All models are available for download as .blend
(Blender file format) files. Each model
contains short description of modeled plant, a link to
Wikipedia plant description and a link to
ready-to-use alpha textures.
|
| http://povrayscrapbook.awardspace.com |
Page created by Abe Madey contains several pictures
of beatiful plants modeled using ngPlant and rendered with PovRay. Abe kindly
provided ".ngp" files for created plant models. Before using these files please
read terms of usage on the top of web page.
|
| Compiling ngPlant on Ubuntu Linux |
Ari Häyrinen describes process of compiling ngPlant on
Ubuntu Linux.
|
|
|
If you have found a bug or have some questions or suggestions, you can
e-mail me to stager(at)users.sourceforge.net.
Also, you can discuss ngPlant project at
Forum.
|