From: Brandon E. <azv...@sl...> - 2000-04-27 07:12:03
|
Date: Thursday April 27, 2000 @ 0:03 Author: azverkan Update of /cvsroot/crystal/CS/include/csutil In directory slayer.i.sourceforge.net:/tmp/cvs-serv16222/include/csutil Modified Files: scf.h Log Message: All sorts of Borland fixes across the board |
From: Chris B. <ipl...@sl...> - 2000-04-30 03:38:02
|
Date: Saturday April 29, 2000 @ 20:29 Author: iplayfast Update of /cvsroot/crystal/CS/include/csutil In directory slayer.i.sourceforge.net:/tmp/cvs-serv5433/include/csutil Modified Files: csstring.h Log Message: Changed inline asm code to be Borland Compatible |
From: Eric S. <sun...@sl...> - 2000-05-02 05:37:56
|
Date: Monday May 1, 2000 @ 22:29 Author: sunshine Update of /cvsroot/crystal/CS/include/csutil In directory slayer.i.sourceforge.net:/tmp/cvs-serv11059/include/csutil Modified Files: csstring.h scfstr.h Log Message: Made the following changes to csString: -*- Added variations of Append() and operator+= for all of the basic types (including signed and unsigned). -*- Added handy left shift operators for all of the basic types. These operators provide a way to compose string in a simple, convenient, and completely type-safe fashion. For example: str << "Hi " << name << ". Your age is: " << age << '\n'; -*- Fixed a bug in SetSize() where the resultant string size was one byte larger than requested. Thus, when Clear() called SetSize(0), the string actually ended up with a length of one. -*- Renamed SetSize() to SetCapacity() for clarity. -*- Added Truncate() which shortens a string without freeing the storage. (You can still call Reclaim() to free storage.) -*- Clear() now calls Truncate(0) for fast-and-dirty operation. For the old behaviour where storage was freed, call Reclaim() after Clear(). Also cleaned up the interface and implementation of iString and scfString. |
From: Eric S. <sun...@sl...> - 2000-05-02 05:40:22
|
Date: Monday May 1, 2000 @ 22:31 Author: sunshine Update of /cvsroot/crystal/CS/include/csutil In directory slayer.i.sourceforge.net:/tmp/cvs-serv11290/include/csutil Modified Files: inifile.h Log Message: Performed another partial overhaul of csIniFile. The following changes were made: -*- Completely generalized and unified composition and decomposition of INI files regardless of input or output medium (physical filesystem, VFS, iFile, etc.). -*- Entirely eliminated all the special-case code (without any loss of functionality) which was added to csIniFile so that it could deal with abstract iFile. The removal of this code _grealy_ simplified the implementation. -*- Now uses iVFS rather than csVFS, thus no longer tied to any particular implementation. |
From: Eric S. <sun...@sl...> - 2000-05-03 11:24:17
|
Date: Wednesday May 3, 2000 @ 4:15 Author: sunshine Update of /cvsroot/crystal/CS/include/csutil In directory slayer.i.sourceforge.net:/tmp/cvs-serv5349/include/csutil Modified Files: inifile.h Log Message: Made the following additional changes to csIniFile: -*- Completed the list of Save() methods so that they now complement the Load() methods. In particular, Save(iVFS,path) was conspicuously absent. -*- Added Load(csString) for convenience. -*- Renamed TextualRepresentation() to Save(), thus making it just another one of the Save() methods (which returns a textual representation of the INI as a csString, in this case). This complements Load(csString). -*- There is now a distinction between Save() methods which check and affect the 'dirty' flag, and those which do not. Previously, Save() methods would only actually save the INI if it was dirty. This made it impossible to save the INI to a new file if you hadn't made any changes to it. (In other words, the following sequence would fail to emit a new INI file ("b.cfg"): cfg.Load("a.cfg"); cfg.Save("b.cfg"); -*- Added IsDirty() and ClearDirty() for finer control by client. |
From: Eric S. <sun...@sl...> - 2000-05-05 01:55:15
|
Date: Thursday May 4, 2000 @ 18:55 Author: sunshine Update of /cvsroot/crystal/CS/include/csutil In directory slayer.i.sourceforge.net:/tmp/cvs-serv5674/include/csutil Modified Files: csmd5.h Log Message: Made the following changes to csMD5: -*- Fixed bug: MD5 algorithm wasn't taking endianess into account at all. (The original MD5 implementation by the author -- Peter Deutsch -- did take endianess into account, but somehow this code was omitted from the MD5 implementation which ended up in csutil/csmd5.) -*- Performed a complete overhaul of csMD5. (What else did you expect from me?) Not only does this simplify usage but also exposes Peter Deutsch's original API for people who want super-fine control over the process. (The old csMD5 implementation did not allow access to the original API and was less flexible, as a result.) -*- Fixed bug in Michael Long's GetReducedHash() function. It wasn't taking endianess into account. I also moved this function to cctest (which is the only place it was used) since it is inappropriate for a general MD5 class, IMHO. |
From: Eric S. <sun...@sl...> - 2000-05-08 08:35:44
|
Date: Monday May 8, 2000 @ 1:35 Author: sunshine Update of /cvsroot/crystal/CS/include/csutil In directory slayer.i.sourceforge.net:/tmp/cvs-serv4861/include/csutil Modified Files: csstring.h Log Message: Added 'bool' variations of the Append() method and operator+= and operator<< to csString. |
From: Eric S. <sun...@sl...> - 2000-05-08 09:33:33
|
Date: Monday May 8, 2000 @ 2:33 Author: sunshine Update of /cvsroot/crystal/CS/include/csutil In directory slayer.i.sourceforge.net:/tmp/cvs-serv14150/include/csutil Modified Files: vfs.h Log Message: Upgraded description of ReadFile(). |
From: Jorrit T. <jo...@sl...> - 2000-05-12 13:44:27
|
Date: Friday May 12, 2000 @ 6:43 Author: jorrit Update of /cvsroot/crystal/CS/include/csutil In directory slayer.i.sourceforge.net:/tmp/cvs-serv24401/include/csutil Modified Files: archive.h scf.h Log Message: Removed CHK and CHKB. |
From: Eric S. <sun...@sl...> - 2000-05-15 14:09:14
|
Date: Monday May 15, 2000 @ 7:08 Author: sunshine Update of /cvsroot/crystal/CS/include/csutil In directory slayer.i.sourceforge.net:/tmp/cvs-serv2243/include/csutil Modified Files: csbase.h csdllist.h csrect.h csvector.h scf.h vfs.h Log Message: Renamed the following files and fixed references to them throughout the project: def.h --> csdef.h sysdef.h --> cssysdef.h types.h --> cstypes.h frustrum.h --> frustum.h frustrum.cpp --> frustum.cpp |
From: Frank O. <ma...@sl...> - 2000-05-23 20:51:32
|
Date: Tuesday May 23, 2000 @ 13:50 Author: malakai Update of /cvsroot/crystal/CS/include/csutil In directory slayer.i.sourceforge.net:/tmp/cvs-serv547/include/csutil Modified Files: archive.h Log Message: Added windows.h to csosdef.h Removed palces the individually included this. removed scattered undef's that related to this file. Fix misc bugs resulting in this inclusion. Updated win32 opengl drivers with latest dynamic texture code. Misc fixes/cleanup. -frank |
From: Eric S. <sun...@sl...> - 2000-05-28 23:08:31
|
Date: Sunday May 28, 2000 @ 16:06 Author: sunshine Update of /cvsroot/crystal/CS/include/csutil In directory slayer.i.sourceforge.net:/tmp/cvs-serv7537/include/csutil Modified Files: csrect.h Log Message: Eliminated compilation warning from egcs-1.1.2. Added a lot of missing 'const' qualifiers. |
From: Andrew Z. <an...@sl...> - 2000-05-31 10:19:33
|
Date: Wednesday May 31, 2000 @ 3:17 Author: andyz Update of /cvsroot/crystal/CS/include/csutil In directory slayer.i.sourceforge.net:/tmp/cvs-serv30773/include/csutil Modified Files: flags.h Log Message: -*- Removed the unneeded VFS->IncRef in systemdriver::initialize. This removes the "1 unreleased instances" error at cleanup. -*- Fixed the vshell plugin (it was creating a second instance of VFS although VFS plugin is written such that it allows just one instance). -*- Slightly improved csFlags class. WARNING: The former Set(int) method is renamed to SetAll(int) now, Set(int) has a different meaning! -*- Moved bool csPolygon3D::dont_draw and bool csPolygon3D::delete_portal to csPolygon3D::flags. Another 8 byte win for csPolygon3D. -*- Added macro CS_ASSERT for system-independent assertions. It will fire a debug breakpoint if the assertion fails (rather than printing a error message which is useless in CS for many platforms). -*- There is also a DEBUG_BREAK macro (which is empty for non-debug mode). You can use it if you want to fire a debug breakpoint under some complex conditions (for simple conditions you may use CS_ASSERT). Currently it is defined only for x86 processor. -*- Found and fixed a bug (that maybe the one reported by Jorrit in past) with VFS creating invalid archives. The problem was that the contents of "lazy" array were simply appended to "dir" array (after csArchive::Flush) while they should be InsertSort'ed. -*- Removed csFrustum::Intersect and csFrustum::IntersectFull methods. Added instead csFrustum::Classify() which is faster and less buggy. There is still a bug somewhere but its already better than the old one. -*- Caught and fixed a bug in software halo drawer introduced by Eric. -*- Many other small changes I don't remember now. |
From: Jorrit T. <jo...@sl...> - 2000-06-02 12:15:10
|
Date: Friday June 2, 2000 @ 5:12 Author: jorrit Update of /cvsroot/crystal/CS/include/csutil In directory slayer.i.sourceforge.net:/tmp/cvs-serv19631/include/csutil Added Files: hashmap.h Log Message: - Added csCamera::GetDefaultInvFOV() too. Fixed MazeD and csgame for the csCamera changes. - Changed csPolygon3D::Covers() to csPolygon3D::Overlaps() as this is actually what the function is calculating (and needs to calculate). Suggested by Norman Kramer. - Added new csHashMap class to csutil. This is the first version of a new hashtable class that can be used for several things. This is untested code right now. |
From: Jorrit T. <jo...@sl...> - 2000-06-05 09:48:04
|
Date: Monday June 5, 2000 @ 2:45 Author: jorrit Update of /cvsroot/crystal/CS/include/csutil In directory slayer.i.sourceforge.net:/tmp/cvs-serv29569/include/csutil Modified Files: hashmap.h Log Message: - Reworked the hashmap iterators. They didn't work that well in all circumstances. - Added new csPolygonEdges class that takes a list of polygons and creates a set of indexed edges. - Added 'const' to two csPolyIndexed methods. - Split octree.cpp into octree.cpp and pvs.cpp. - Added csPoly2D::ClipPlane() to clip a 2D polygon to a 2D plane (i.e. line) and return the right side of that polygon. - Added csPoly2D::ExtendConvex() to extend a convex polygon with another polygon while keeping the resulting polygon convex again. - Started work on optimization for PVS that will try to merge adjacent convex polygons into bigger occluders. Not finished yet. - Fixed serious bug with csPoly2D::Intersect() and csPoly2D:: ClipPlane() that could cause clipping errors in some cases. This bug probably caused the bugs in the solid 2D BSP tree that I never managed to find in the past. - Did an optimization reported to me by Norman Kramer with regards to backface culling polygons. This happens throughout CS and should increase performance a tiny bit (maybe not noticable). - Removed a few unneeded methods in csPolyPlane. These methods are only shortcuts to csPlane3 and are a little confusing to have. Removed csPolyPlane::VisibleFromPoint(), csPolyPlane::Classify() and csPolyPlane::Distance(). - Added a few const methods to csPoly2D as well. - Added a speed improvement to PVS. Before considering an occluder (octree node) and the contents of that occluder we first cast a shadow from that occluder on the plane. If the shadow is non-existant (i.e. the plane is too far away from the node) then the node will not be considered as a potential occluder. If the shadow does exist then CS will also first test it against the c-buffer on the plane to see if that part of the c-buffer still contains unshadowed parts. If not then it makes no sense to consider this occluder either. |
From: Andrew Z. <an...@us...> - 2000-06-19 09:26:24
|
Date: Monday June 19, 2000 @ 2:22 Author: andyz Update of /cvsroot/crystal/CS/include/csutil In directory slayer.i.sourceforge.net:/tmp/cvs-serv27684/include/csutil Modified Files: bitset.h Added Files: rng.h Log Message: -*- Fixed the titlebar title that someone has broken for software renderer (the window heading used to be empty last week) -*- (Finally! :-) fixed the polygon clipper routines so that 2D sprites (and 3D sprites as well) are clipped in 2D correctly. The problem was not with the CS_VERTEX_INSIDE case, but with the fact that sometimes for some CS_VERTEX_ONEDGE vertices it used to generate incorrectly the 't' parametric value. More specifically, it happened when an edge was clipped more than once (against several clipper edges). -*- Fixed a bug in software renderer - all polygons were drawn one pixel up. E.g. with the default renderer view with a 2 pixel border on each side it worked like 3 pixels border at bottom and 1 pixel border at top. -*- Implemented polygon drawing (clipped against other windows!) in CSWS. This is the first step towards implementing the solid view window. -*- Implemented a little bit of solid view window in MazeD. It is very limited and buggy for now, but thats a start. Texture mapping doesn't work (all vertices get u/v == 0) thus you will see strange colors for textured polygons. Flat-shaded polygons work. -*- Added a new random number generator class to csutil library. Currently it is unused but I'm going to use it in future, besides we cam switch existing code from rand() to it. |
From: Eric S. <sun...@us...> - 2000-06-19 23:28:38
|
Date: Monday June 19, 2000 @ 16:25 Author: sunshine Update of /cvsroot/crystal/CS/include/csutil In directory slayer.i.sourceforge.net:/tmp/cvs-serv22193/include/csutil Modified Files: rng.h Log Message: Fixed csRandomGen so that it works with compilers which do not provide a native 'bool' type. |
From: Eric S. <sun...@us...> - 2000-06-20 06:42:42
|
Date: Monday June 19, 2000 @ 23:39 Author: sunshine Update of /cvsroot/crystal/CS/include/csutil In directory slayer.i.sourceforge.net:/tmp/cvs-serv23403/include/csutil Modified Files: bitset.h Log Message: Eric Sunshine made the following changes to csBitSet: -*- Constructor no longer attempts to allocate zero bytes from heap. -*- Bits are now 'false' by default in new bitsets as a convenience. Same applies to bits added when a bitset is grown with Resize(). -*- Resize() no longer tries to allocate zero bytes. -*- Resize() no longer calls realloc() with a null pointer since doing so crashes on some systems though it works on others. -*- Resize() now frees byte array if resized down to zero. |
From: Eric S. <sun...@us...> - 2000-06-23 19:19:55
|
Date: Friday June 23, 2000 @ 12:15 Author: sunshine Update of /cvsroot/crystal/CS/include/csutil In directory slayer.i.sourceforge.net:/tmp/cvs-serv18232/include/csutil Added Files: memfile.h Log Message: -*- Added a new class to csUtil named csMemFile. This class represents a raw memory buffer which implements the iFile interface. -*- Reworked the code which caches PVS information in the zip file so that it now works via the new csMemFile class rather than working directly with VFS. This change had the remarkable (and intended) effect of reducing time taken to cache PVS information from nearly 25 minutes to less than 1 second! -*- Reworked the code which caches Octree information in the zip file so that it also works through the new csMemFile class. |
From: Norman K. <no...@us...> - 2000-06-25 12:21:10
|
Date: Sunday June 25, 2000 @ 5:17 Author: norman Update of /cvsroot/crystal/CS/include/csutil In directory slayer.i.sourceforge.net:/tmp/cvs-serv20166 Added Files: cstreend.h Log Message: a generic tree node class with the usual DepthFirstSearch and BreadthFirstSearch |
From: Eric S. <sun...@us...> - 2000-06-26 08:53:48
|
Date: Monday June 26, 2000 @ 1:49 Author: sunshine Update of /cvsroot/crystal/CS/include/csutil In directory slayer.i.sourceforge.net:/tmp/cvs-serv15735/include/csutil Modified Files: cstreend.h Log Message: Worked around OpenStep compiler bug triggered by inline csTreeNode destructor where it called RemoveChild() before compiler had seen that RemoveChild() is also inline. Generated unlinkable code in this case. Fix involved a simple textual reorganization. |
From: Norman K. <no...@us...> - 2000-06-26 11:38:28
|
Date: Monday June 26, 2000 @ 4:34 Author: norman Update of /cvsroot/crystal/CS/include/csutil In directory slayer.i.sourceforge.net:/tmp/cvs-serv21995 Modified Files: cstreend.h Log Message: coding style |
From: Jorrit T. <jo...@us...> - 2000-06-27 08:56:46
|
Date: Tuesday June 27, 2000 @ 1:52 Author: jorrit Update of /cvsroot/crystal/CS/include/csutil In directory slayer.i.sourceforge.net:/tmp/cvs-serv1950/include/csutil Modified Files: flags.h Log Message: - As from a suggestion from Terrence Stewart I implemented csPolygon2D::FillZBuf() which will fill the Z buffer for that polygon (and not do texture mapping). This is now used after drawing a portal so that sprites drawn in the same sector as the portal cannot accidently go inside the portal contents (Z buffer cannot be used in case of floating portals for example). This z filling for portals is optional though. It is a (slight) overhead and it is not needed for many kinds of portals (like outgoing portals on sector walls). WARNING! Currently only the software renderer supports this Z-buffer filling. WARNING! If you enable this option it requires sprites to be correctly placed in all the sectors that you want the sprite to be visible in. If you don't do that and you use a ZFIL portal then you'll get the effect that the sprite will be clipped to the portal. - Removed a number of 'bool' settings in csPortal and replaced them with a single public 'flags' field. Also removed a lot of the API calls to set those flags. All access should be through the 'flags' field instead. A portal now accepts the following flags: CS_PORTAL_CLIPDEST: clip geometry in destination sector. CS_PORTAL_ZFILL: do z-fill after rendering portal. CS_PORTAL_WARP: warp space (set with SetWarp()). CS_PORTAL_MIRROR: mirror space (automatically set). CS_PORTAL_STATICDEST: static destination for portal. - Added support for new ZFILL keyword in world files. This can be used inside a WARP statement (which is actually a bit badly named but this describes various portal settings). - Moved CLIP from polygon to WARP because it belongs with the other portal settings. This will break the 'room.zip' level but it is easy to fix. - Added csFlags::SetBool(unsigned,bool) to set all values in a mask to either 1 or 0 depending on the bool value. |
From: Thomas H. <th...@us...> - 2000-06-27 18:52:53
|
Date: Tuesday June 27, 2000 @ 11:48 Author: thieber Update of /cvsroot/crystal/CS/include/csutil In directory slayer.i.sourceforge.net:/tmp/cvs-serv18090 Modified Files: scf.h Log Message: Made REGISTER_STATIC_CLASS really static. (removes a linker warning on msvc) |
From: Andrew Z. <an...@us...> - 2000-06-29 11:14:10
|
Date: Thursday June 29, 2000 @ 4:09 Author: andyz Update of /cvsroot/crystal/CS/include/csutil In directory slayer.i.sourceforge.net:/tmp/cvs-serv12699 Modified Files: scf.h Log Message: Reverted back latest Thomas's change which breaks SCF Unused static variables are simply ommited by gcc. Its not my fault MSVC has a bad optimizer. |