ngPlant Changelog

What's new in ngPlant 0.9.10

Apr 29, 2013
  • added COLLADA export plugin
  • NumPad emulation implemented. If enabled allows to use "Ctrl"+ on PC or "Command"+ on Mac instead of NumPad keys.
  • '+' and '-' keys now zoom in/out 3d view.
  • 'Alt' key can be used instead of middle mouse button to move and rotate 3d-view
  • HLI API extended to provide information on "cloneable" branch groups (C++,Python,Lua)
  • texture names with spaces are properly handled now

New in ngPlant 0.9.9 (Apr 29, 2013)

  • disable randomness" feature added to ngplant, it allows to disable model variations temporarily
  • now it is possible to set minimum and maximum number of branches in branching algorithm parameters
  • default cross-section resolution for tube stem model can be set in preferences dialog for each branch level
  • tangent-space calculation can be disabled during .obj file import
  • color of text in numeric editors and texture layer selectors now depends on used color theme
  • GLEW library updated to 1.7.0 - some improvements in build procedure

New in ngPlant 0.9.8 (Jul 19, 2010)

  • Undo/Redo functionality implemented.
  • PNG images support added.
  • JPEG images support added.
  • ngplant icon created by Yorik van Havre added
  • ".obj" export plugin now can join similar materials during export
  • Alternate base color rendering path implemented. If base color is rendered incorrectly in your configuration, try to enable this mode in preferences dialog ("File->Preferences->Misc->Use color array").
  • fixed compilation using gcc 4.3. Thanks to Serge Gielkens for the patch.
  • fixed a bug with mismatched free() / delete in p3dmodel.cpp. Thanks to
  • person who posted bug report and the patch to project tracker.
  • plugins search path can be set at build time using PLUGINS_DIR value
  • (see config/cross-sample.py for example).
  • lua updated to 5.1.4
  • Windows binaries been built with the following libraries:
  • wxWidgets 2.8.11 (http://wxwidgets.org/)
  • zlib 1.2.5 (http://www.zlib.net/)
  • libpng 1.4.3 (http://www.libpng.org/pub/png/libpng.html)
  • libjpeg 8b (http://www.ijg.org/)

New in ngPlant 0.9.5 (Dec 21, 2007)

  • 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).
  • GLEW library (http://glew.sourceforge.net) is now required to compile ngplant, ngpshot and ngpview. GLEW-related configuration options are described in config/cross-sample.py.
  • 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.
  • "-es" option added to ngplant. This option enables error reporting to stderr.
  • "-ns" option added to ngplant. This option disables shaders usage.
  • 3d-view flicker which appeared in some configurations have been fixed.
  • Now it is possible to use GLSL shaders for snapshot rendering. To use shaders your video card must support GLSL. Look at ngpshot_nor_vs.glsl and ngpshot_nor_fs.glsl files at shaders directory. These shaders allow to render plant model normal-map instead of plant image. Using generated color image and normal map it is possible to create normal-mapped billboards with dynamic lighting support. To use shaders "-vs" and/or "-fs" options must be used.
  • "-vs" and "-fs" command line options added. "-vs" option is used to select file from which vertex shader source should be loaded. "-fs" option allows to select file from which fragment shader should be loaded.
  • P-Buffer off-screen rendering mode support added to ngpshot. It allows to use hardware acceleration for rendering.
  • New "-o" command line option allows to choose between pixmaps/pbuffer off-screen rendering mode. By default ngpshot uses best supported mode. Possible modes are: "auto" - default, "pixmap" - pixmap/bitmap mode and "pbuffer" - p-buffer mode.
  • C compiler presence check added to configuration step
  • P3D_PLATFORM_WINDOWS macro is not used anymore
  • P3D_DLL_ENTRY macros added to HLI classes which should be visible outside ngpcore in case of DLL build. To make classes visible define P3D_DLL_BUILD macros while building ngpcore DLL and define P3D_DLL_USE macros while building your application.
  • It is not needed to define snprintf as _snprintf for MSVC compilers anymore
  • API (HLI) change: C : Now it is possible to get tangent and bi-normal vertex attributes in addition to position, normal and texture coordinates using new P3D_ATTR_TANGENT and P3D_ATTR_BINORMAL constants.
  • API (HLI) change: C : Branch group name now can be accessed using new P3DHLIPlantTemplate::GetGroupName method.
  • API (HLI) change: Python : Now it is possible to get tangent and bi-normal vertex attributes in addition to position, normal and texture coordinates using new ATTR_TANGENT and ATTR_BINORMAL constants.
  • API (HLI) change: Python : Branch group name now can be accessed using new BranchGroup.GetName method.