* "BrushAlwaysCaulk" option is saveable for brush types other than q3
* brush format is preference for [maptypes, brushtypes]: [mapq1, quake], [mapq2, quake2], [mapq3, quake3]: preferences->Brush->Brush type: Axial projection, Brush primitives, Valve 220 * autodetect brush type on map opening * brush face surfaceflags are optional on loading for flexibility * 'Snap planes to integer grid' option is always off by default
This commit is contained in:
@@ -27,6 +27,20 @@
|
||||
#include "generic/vector.h"
|
||||
#include "itexdef.h"
|
||||
|
||||
enum EBrushType
|
||||
{
|
||||
eBrushTypeUNKNOWN = 0,
|
||||
eBrushTypeQuake,
|
||||
eBrushTypeQuake2,
|
||||
eBrushTypeQuake3,
|
||||
eBrushTypeQuake3BP,
|
||||
eBrushTypeQuake3Valve220,
|
||||
eBrushTypeDoom3,
|
||||
eBrushTypeQuake4,
|
||||
eBrushTypeValve220,
|
||||
};
|
||||
|
||||
|
||||
namespace scene
|
||||
{
|
||||
class Node;
|
||||
@@ -103,7 +117,7 @@ public:
|
||||
INTEGER_CONSTANT( Version, 1 );
|
||||
STRING_CONSTANT( Name, "brush" );
|
||||
virtual scene::Node& createBrush() = 0;
|
||||
virtual bool useAlternativeTextureProjection() const = 0;
|
||||
virtual EBrushType getCurrentFormat() const = 0;
|
||||
virtual void Brush_forEachFace( scene::Node& brush, const BrushFaceDataCallback& callback ) = 0;
|
||||
virtual bool Brush_addFace( scene::Node& brush, const _QERFaceData& faceData ) = 0;
|
||||
};
|
||||
|
||||
@@ -46,6 +46,7 @@ virtual void exportTokens( TokenWriter& writer ) const = 0;
|
||||
};
|
||||
|
||||
#include "iscenegraph.h"
|
||||
#include "ibrush.h"
|
||||
|
||||
class EntityCreator;
|
||||
|
||||
@@ -61,7 +62,7 @@ class MapFormat
|
||||
public:
|
||||
INTEGER_CONSTANT( Version, 2 );
|
||||
STRING_CONSTANT( Name, "map" );
|
||||
mutable bool wrongFormat;
|
||||
mutable EBrushType m_detectedFormat;
|
||||
|
||||
/// \brief Read a map graph into \p root from \p outputStream, using \p entityTable to create entities.
|
||||
virtual void readGraph( scene::Node& root, TextInputStream& inputStream, EntityCreator& entityTable ) const = 0;
|
||||
|
||||
@@ -39,6 +39,7 @@ virtual const char* getToken() = 0;
|
||||
virtual void ungetToken() = 0;
|
||||
virtual std::size_t getLine() const = 0;
|
||||
virtual std::size_t getColumn() const = 0;
|
||||
virtual bool bufferContains( const char* str ) = 0;
|
||||
};
|
||||
|
||||
class TextInputStream;
|
||||
|
||||
Reference in New Issue
Block a user