digitalmars.D.announce - nonagon release 3!
- "Jarrett Billingsley" <kb3ctd2 yahoo.com> Jun 19 2005
Release 3 of nonagon is now out. This fixes a major shortcoming of release 1/2, where those with (very) old video cards were not able to run nonagon programs. There are also several other new features and fixes: New Features: -- An entire 2D-in-3D sprite library has been added, called NG2D. It allows you to make fast 2D games which take advantage of 3D acceleration to display sprites with scaling, rotation, and alpha blending. It also offers a useful concept usually only found in 3D games, which is that of a movable camera. No more moving the level around the player; simply create the level, and move the camera in a more natural fashion. NG2D also offers sprite hierarchies and custom rendering order. -- NGBrush.NGLayer has a new property, .clampUV, which allows you to keep UV coordinates clamped to [0,1] rather than wrapping. Changed Features / Bugs Fixed: -- Will now attempt to create the device with hardware and software vertex processing. -- NGCore.windowName can now be retrieved. -- Global position and rotation now works correctly for NGNode, which means parenting lights and cameras to other nodes now works. -- Because global position and rotation now work, there is a new second parameter on NGNode.parent to specify whether or not the global orientation should be preserved when changing the parent. -- NGNode.opApply now overloaded to support the (uint index, NGNode n) form. -- NGRenderEntry now uses a free list for speed (instead of creating and deleting many, many render entries every frame). -- All rotation functions now have wrapAngle called on their input arguments, so you don't have to call that anymore. -- Textures are now only reloaded if needed. No intervention is needed on your part; just use new to create a texture, and if it already exists, the existing texture will be returned from the constructor instead of creating a new texture. There is now also a static property of NGBaseTexture to control this behavior called reuseTextures. Docs have also been improved. Still no animated meshes or HLSL (shaders). I'm considering a sort of rewrite of the internal rendering engine for both those features, as they have some rather nasty overlaps and require things to be laid out a bit differently. Additionally, I'm in the process of preparing some more samples; as of now, there is only one sample, called template, which is simply a skeleton program which shows the most basic possible usage of nonagon. The nonagon files and the samples have also been split into two archives. Hopefully this release will make nonagon more accessible to those with old video cards. Here are the download links: nonagon files: http://www.mtwirefree.net/kbilling/nonagon.zip nonagon samples: http://www.mtwirefree.net/kbilling/nonagon_samples.zip
Jun 19 2005