New features and bug fixes on the 7.85.4, released May 25, 2010.
Posted by Quadraxas on Jun 21st, 2010
As a regular update the 7.85.4 is released.
Also the next engine version A8 is under closed-beta, more news about A8 will follow in the upcoming days.
- The following functions now also work with Unicode strings: str_width, str_cpy, str_cat, str_cmp, str_cmpi, str_cmpni, str_getchr, str_setchr, str_clip, str_trunc, str_chr.
- The c_ignore function can be used to ignore certain entity groups on the following collision function call. It replaces the IGNORE_FLAG2 method.
- The view_check function determines if a bounding box intersects a view frustum.
- The WED/MED FBX importer was rewritten, using the 2010 FBX library. Many problems, especially with unsupported bones animation keys, are now gone. The new FBX importers are supposed to replace the old FBX 2005 / 2006 importers. Besides FBX files, they also import 3DS and some versions of Collada files.
- A camera.c library was added to the snippets, allowing to set up an automatic player-following camera with 6 different modes. It replaces the old t_car_cameras.c library from the car templates.
- The keys.c include file contains often used, simple functions related to keyboard and joystick input.
- A function level_loadsplash was added to the level.c library.
- Array initialization now also supports multidimensional arrays.
Known( and fixed) Bugs
- The SED tabs "Watch" and "Output" were swapped (fixed in SED 7.36.1). Workaround: click the other tab.
- Setting freeze_mode caused decal shadows to become frozen to the ground (all A7 versions; fixed in 7.86.6 / 8.00.6). Workaround: pause actions by script instead of using freeze_mode.
- Rendering a model entity could crash when the MDL file contained more than 60 unused skins (all A6 and A7 versions; fixed in 7.86.6 / 8.00.6). Workaround: remove unused skins from the model.
- c_ignore didn't work in combination with c_trace (fixed in 7.86.6 / 8.00.6). Workaround: use one of the other methods - flag, push, or group - to exclude objects from c_trace.