#ifndef __SHAPE_DESCRIPTORS_H #define __SHAPE_DESCRIPTORS_H /* SHAPE_DESCRIPTORS.H Copyright (C) 1991-2001 and beyond by Bungie Studios, Inc. and the "Aleph One" developers. This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. This license is contained in the file "COPYING", which is included with this source code; it is available online at http://www.gnu.org/licenses/gpl.html Saturday, July 9, 1994 3:24:56 PM Saturday, July 9, 1994 6:47:04 PM this header file is not in the makefile, so changing it wonÕt result in the nearly-full rebuild that it should. if you change this, which you shouldnÕt, you must touch the makefile. Feb 3, 2000 (Loren Petrich): Renamed _collection_madd to _collection_vacbob Annotated some of the _collection's better */ /* ---------- types */ typedef uint16 shape_descriptor; /* [clut.3] [collection.5] [shape.8] */ #define DESCRIPTOR_SHAPE_BITS 8 #define DESCRIPTOR_COLLECTION_BITS 5 #define DESCRIPTOR_CLUT_BITS 3 #define MAXIMUM_COLLECTIONS (1<>DESCRIPTOR_SHAPE_BITS)&(uint16)((1<<(DESCRIPTOR_COLLECTION_BITS+DESCRIPTOR_CLUT_BITS))-1)) #define BUILD_DESCRIPTOR(collection,shape) (((collection)<>DESCRIPTOR_COLLECTION_BITS)&(uint16)(MAXIMUM_CLUTS_PER_COLLECTION-1)) #define GET_COLLECTION(collection) ((collection)&(MAXIMUM_COLLECTIONS-1)) #endif