\r
//! Maximum number of texture an SMaterial can have, up to 8 are supported by Irrlicht.\r
#define _IRR_MATERIAL_MAX_TEXTURES_ 4\r
-\r
+#define _IRR_COMPILE_WITH_GUI_\r
\r
#ifdef _WIN32\r
#define IRRCALLCONV __stdcall\r
#endif\r
\r
\r
-#define _IRR_COMPILE_WITH_GUI_\r
-#define _IRR_COMPILE_WITH_LIBJPEG_\r
-#define _IRR_COMPILE_WITH_LIBPNG_\r
-#define _IRR_COMPILE_WITH_BILLBOARD_SCENENODE_\r
-#define _IRR_COMPILE_WITH_SKINNED_MESH_SUPPORT_\r
-#define _IRR_COMPILE_WITH_B3D_LOADER_\r
-#define _IRR_COMPILE_WITH_X_LOADER_\r
-#define _IRR_COMPILE_WITH_OBJ_LOADER_\r
-#define _IRR_COMPILE_WITH_BMP_LOADER_\r
-#define _IRR_COMPILE_WITH_JPG_LOADER_\r
-#define _IRR_COMPILE_WITH_PNG_LOADER_\r
-#define _IRR_COMPILE_WITH_TGA_LOADER_\r
-#define _IRR_COMPILE_WITH_JPG_WRITER_\r
-#define _IRR_COMPILE_WITH_PNG_WRITER_\r
-#define __IRR_COMPILE_WITH_ZIP_ARCHIVE_LOADER_\r
-#define _IRR_COMPILE_WITH_ZLIB_\r
-#define __IRR_HAS_S64\r
-\r
-\r
#ifdef _DEBUG\r
//! A few attributes are written in CSceneManager when _IRR_SCENEMANAGER_DEBUG is enabled\r
// NOTE: Those attributes were used always until 1.8.0 and became a global define for 1.8.1\r
\r
const s32 ROUNDING_ERROR_S32 = 0;\r
\r
-#ifdef __IRR_HAS_S64\r
const s64 ROUNDING_ERROR_S64 = 0;\r
-#endif\r
const f32 ROUNDING_ERROR_f32 = 0.000001f;\r
const f64 ROUNDING_ERROR_f64 = 0.00000001;\r
\r
return ROUNDING_ERROR_S32;\r
}\r
\r
-#ifdef __IRR_HAS_S64\r
template <>\r
inline s64 roundingError()\r
{\r
{\r
return ROUNDING_ERROR_S64;\r
}\r
-#endif\r
\r
template <class T>\r
inline T relativeErrorFactor()\r
return a <= tolerance;\r
}\r
\r
-#ifdef __IRR_HAS_S64\r
//! returns if a equals zero, taking rounding errors into account\r
inline bool iszero(const s64 a, const s64 tolerance = 0)\r
{\r
return abs_(a) <= tolerance;\r
}\r
-#endif\r
\r
inline s32 s32_min(s32 a, s32 b)\r
{\r
return static_cast<s32>(squareroot(static_cast<f32>(f)));\r
}\r
\r
-#ifdef __IRR_HAS_S64\r
// calculate: sqrt ( x )\r
REALINLINE s64 squareroot(const s64 f)\r
{\r
return static_cast<s64>(squareroot(static_cast<f64>(f)));\r
}\r
-#endif\r
\r
// calculate: 1 / sqrt ( x )\r
REALINLINE f64 reciprocal_squareroot(const f64 x)\r
typedef int32_t s32;\r
\r
\r
-#ifdef __IRR_HAS_S64\r
//! 64 bit unsigned variable.\r
typedef uint64_t u64;\r
\r
//! 64 bit signed variable.\r
typedef int64_t s64;\r
-#endif // __IRR_HAS_S64\r
\r
\r
\r
#define __BUILD_IN_FONT_H_INCLUDED__\r
\r
#include "IrrCompileConfig.h"\r
-#ifdef _IRR_COMPILE_WITH_GUI_\r
\r
// header file generated by Bin2H, copyright 2002 by N.Gebhardt.\r
// Bin2H is Freeware. Download it freely from www.code3d.com.\r
{\r
namespace gui\r
{\r
-#ifdef _IRR_COMPILE_WITH_BMP_LOADER_\r
const u8 BuiltInFontData[] =\r
{\r
0x42, 0x4d, 0x4a, 0x20, 0x00, 0x00, 0x00, 0x00,\r
};\r
\r
const u32 BuiltInFontDataSize = sizeof(BuiltInFontData);\r
-\r
-#else // !defined(_IRR_COMPILE_WITH_BMP_LOADER_)\r
-\r
- // built-in font cannot be loaded if there is no BMP loader\r
-\r
- const u8 * const BuiltInFontData=0;\r
-\r
- const u32 BuiltInFontDataSize = 0;\r
-\r
-#endif\r
} // end namespace gui\r
} // end namespace irr\r
\r
-#endif // _IRR_COMPILE_WITH_GUI_\r
-\r
#endif\r
-\r
#include "ISceneManager.h"\r
#include "S3DVertex.h"\r
#include "os.h"\r
+#ifdef _IRR_COMPILE_WITH_SKINNED_MESH_SUPPORT_\r
#include "CSkinnedMesh.h"\r
+#endif\r
#include "IDummyTransformationSceneNode.h"\r
#include "IBoneSceneNode.h"\r
#include "IMaterialRenderer.h"\r
// declared public domain\r
\r
#include "IrrCompileConfig.h"\r
-#ifdef _IRR_COMPILE_WITH_B3D_LOADER_\r
-\r
#include "CB3DMeshFileLoader.h"\r
\r
#include "IVideoDriver.h"\r
\r
} // end namespace scene\r
} // end namespace irr\r
-\r
-\r
-#endif // _IRR_COMPILE_WITH_B3D_LOADER_\r
-\r
\r
#include "IrrCompileConfig.h"\r
\r
-#ifdef _IRR_COMPILE_WITH_B3D_WRITER_\r
-\r
#include "CB3DMeshWriter.h"\r
#include "os.h"\r
#include "ISkinnedMesh.h"\r
\r
} // end namespace\r
} // end namespace\r
-\r
-#endif // _IRR_COMPILE_WITH_B3D_WRITER_\r
-\r
// For conditions of distribution and use, see copyright notice in irrlicht.h\r
\r
#include "IrrCompileConfig.h"\r
-#ifdef _IRR_COMPILE_WITH_BILLBOARD_SCENENODE_\r
#include "CBillboardSceneNode.h"\r
#include "IVideoDriver.h"\r
#include "ISceneManager.h"\r
\r
} // end namespace scene\r
} // end namespace irr\r
-\r
-#endif // _IRR_COMPILE_WITH_BILLBOARD_SCENENODE_\r
// For conditions of distribution and use, see copyright notice in irrlicht.h\r
\r
#include "IrrCompileConfig.h"\r
-#ifdef _IRR_COMPILE_WITH_SKINNED_MESH_SUPPORT_\r
-\r
#include "CBoneSceneNode.h"\r
\r
namespace irr\r
\r
} // namespace scene\r
} // namespace irr\r
-\r
-#endif\r
-\r
//! reset current working directory\r
getWorkingDirectory();\r
\r
-#ifdef __IRR_COMPILE_WITH_ZIP_ARCHIVE_LOADER_\r
ArchiveLoader.push_back(new CArchiveLoaderZIP(this));\r
-#endif\r
\r
}\r
\r
#include "CGUIComboBox.h"\r
\r
#include "IWriteFile.h"\r
-\r
+#ifdef IRR_ENABLE_BUILTIN_FONT\r
#include "BuiltInFont.h"\r
+#endif\r
#include "os.h"\r
\r
namespace irr\r
\r
void CGUIEnvironment::loadBuiltInFont()\r
{\r
+#ifdef IRR_ENABLE_BUILTIN_FONT\r
io::IReadFile* file = FileSystem->createMemoryReadFile(BuiltInFontData,\r
BuiltInFontDataSize, DefaultFontName, false);\r
\r
Fonts.push_back(f);\r
\r
file->drop();\r
+#endif\r
}\r
\r
\r
\r
#include "CImageLoaderBMP.h"\r
\r
-#ifdef _IRR_COMPILE_WITH_BMP_LOADER_\r
-\r
#include "IReadFile.h"\r
#include "SColor.h"\r
#include "CColorConverter.h"\r
\r
} // end namespace video\r
} // end namespace irr\r
-\r
-#endif\r
-\r
namespace video\r
{\r
\r
-#if defined(_IRR_COMPILE_WITH_BMP_LOADER_) || defined(_IRR_COMPILE_WITH_BMP_WRITER_)\r
-\r
-\r
// byte-align structures\r
#include "irrpack.h"\r
\r
// Default alignment\r
#include "irrunpack.h"\r
\r
-#endif // defined with loader or writer\r
-\r
-#ifdef _IRR_COMPILE_WITH_BMP_LOADER_\r
-\r
/*!\r
Surface Loader for Windows bitmaps\r
*/\r
};\r
\r
\r
-#endif // compiled with loader\r
-\r
} // end namespace video\r
} // end namespace irr\r
\r
#endif\r
-\r
\r
#include "CImageLoaderJPG.h"\r
\r
-#ifdef _IRR_COMPILE_WITH_JPG_LOADER_\r
-\r
#include "IReadFile.h"\r
#include "CImage.h"\r
#include "os.h"\r
return core::hasFileExtension ( filename, "jpg", "jpeg" );\r
}\r
\r
+// struct for handling jpeg errors\r
+struct irr_jpeg_error_mgr\r
+{\r
+ // public jpeg error fields\r
+ struct jpeg_error_mgr pub;\r
\r
-#ifdef _IRR_COMPILE_WITH_LIBJPEG_\r
-\r
- // struct for handling jpeg errors\r
- struct irr_jpeg_error_mgr\r
- {\r
- // public jpeg error fields\r
- struct jpeg_error_mgr pub;\r
-\r
- // for longjmp, to return to caller on a fatal error\r
- jmp_buf setjmp_buffer;\r
+ // for longjmp, to return to caller on a fatal error\r
+ jmp_buf setjmp_buffer;\r
\r
- // for having access to the filename when printing the error messages\r
- core::stringc* filename;\r
- };\r
+ // for having access to the filename when printing the error messages\r
+ core::stringc* filename;\r
+};\r
\r
void CImageLoaderJPG::init_source (j_decompress_ptr cinfo)\r
{\r
errMsg += *myerr->filename;\r
os::Printer::log(errMsg.c_str(),temp1, ELL_ERROR);\r
}\r
-#endif // _IRR_COMPILE_WITH_LIBJPEG_\r
\r
//! returns true if the file maybe is able to be loaded by this class\r
bool CImageLoaderJPG::isALoadableFileFormat(io::IReadFile* file) const\r
{\r
- #ifndef _IRR_COMPILE_WITH_LIBJPEG_\r
- return false;\r
- #else\r
-\r
if (!(file && file->seek(0)))\r
return false;\r
unsigned char header[3];\r
size_t headerLen = file->read(header, sizeof(header));\r
return headerLen >= 3 && !memcmp(header, "\xFF\xD8\xFF", 3);\r
- #endif\r
}\r
\r
//! creates a surface from the file\r
IImage* CImageLoaderJPG::loadImage(io::IReadFile* file) const\r
{\r
- #ifndef _IRR_COMPILE_WITH_LIBJPEG_\r
- os::Printer::log("Can't load as not compiled with _IRR_COMPILE_WITH_LIBJPEG_:", file->getFileName(), ELL_DEBUG);\r
- return 0;\r
- #else\r
-\r
if (!file)\r
return 0;\r
\r
delete [] input;\r
\r
return image;\r
-\r
- #endif\r
}\r
\r
\r
\r
} // end namespace video\r
} // end namespace irr\r
-\r
-#endif\r
-\r
\r
#include "IrrCompileConfig.h"\r
\r
-#ifdef _IRR_COMPILE_WITH_JPG_LOADER_\r
-\r
#include "IImageLoader.h"\r
\r
#include <stdio.h> // required for jpeglib.h\r
-#ifdef _IRR_COMPILE_WITH_LIBJPEG_\r
-extern "C" {\r
- #include <jpeglib.h> // use system lib\r
- #include <setjmp.h>\r
-}\r
-#endif // _IRR_COMPILE_WITH_LIBJPEG_\r
+#include <jpeglib.h> // use system lib\r
+#include <setjmp.h>\r
\r
\r
namespace irr\r
IImage* loadImage(io::IReadFile* file) const override;\r
\r
private:\r
-\r
-#ifdef _IRR_COMPILE_WITH_LIBJPEG_\r
// several methods used via function pointers by jpeglib\r
\r
/* Receives control for a fatal error. Information sufficient to\r
/* Terminate source --- called by jpeg_finish_decompress() after all\r
data has been read. Often a no-op. */\r
static void term_source (j_decompress_ptr cinfo);\r
-\r
- #endif // _IRR_COMPILE_WITH_LIBJPEG_\r
};\r
\r
\r
\r
\r
#endif\r
-#endif\r
-\r
\r
#include "CImageLoaderPNG.h"\r
\r
-#ifdef _IRR_COMPILE_WITH_PNG_LOADER_\r
-\r
-#ifdef _IRR_COMPILE_WITH_LIBPNG_\r
- #include <png.h> // use system lib png\r
-#endif // _IRR_COMPILE_WITH_LIBPNG_\r
+#include <png.h> // use system lib png\r
\r
#include "CImage.h"\r
#include "CReadFile.h"\r
namespace video\r
{\r
\r
-#ifdef _IRR_COMPILE_WITH_LIBPNG_\r
// PNG function for error handling\r
static void png_cpexcept_error(png_structp png_ptr, png_const_charp msg)\r
{\r
if (check != length)\r
png_error(png_ptr, "Read Error");\r
}\r
-#endif // _IRR_COMPILE_WITH_LIBPNG_\r
\r
\r
//! returns true if the file maybe is able to be loaded by this class\r
//! based on the file extension (e.g. ".tga")\r
bool CImageLoaderPng::isALoadableFileExtension(const io::path& filename) const\r
{\r
-#ifdef _IRR_COMPILE_WITH_LIBPNG_\r
return core::hasFileExtension ( filename, "png" );\r
-#else\r
- return false;\r
-#endif // _IRR_COMPILE_WITH_LIBPNG_\r
}\r
\r
\r
//! returns true if the file maybe is able to be loaded by this class\r
bool CImageLoaderPng::isALoadableFileFormat(io::IReadFile* file) const\r
{\r
-#ifdef _IRR_COMPILE_WITH_LIBPNG_\r
if (!file)\r
return false;\r
\r
\r
// Check if it really is a PNG file\r
return !png_sig_cmp(buffer, 0, 8);\r
-#else\r
- return false;\r
-#endif // _IRR_COMPILE_WITH_LIBPNG_\r
}\r
\r
\r
// load in the image data\r
IImage* CImageLoaderPng::loadImage(io::IReadFile* file) const\r
{\r
-#ifdef _IRR_COMPILE_WITH_LIBPNG_\r
if (!file)\r
return 0;\r
\r
png_destroy_read_struct(&png_ptr,&info_ptr, 0); // Clean up memory\r
\r
return image;\r
-#else\r
- return 0;\r
-#endif // _IRR_COMPILE_WITH_LIBPNG_\r
}\r
\r
\r
\r
}// end namespace irr\r
}//end namespace video\r
-\r
-#endif\r
-\r
\r
#include "IrrCompileConfig.h"\r
\r
-#ifdef _IRR_COMPILE_WITH_PNG_LOADER_\r
-\r
#include "IImageLoader.h"\r
\r
namespace irr\r
} // end namespace irr\r
\r
#endif\r
-#endif\r
-\r
\r
#include "CImageLoaderTGA.h"\r
\r
-#ifdef _IRR_COMPILE_WITH_TGA_LOADER_\r
-\r
#include "IReadFile.h"\r
#include "os.h"\r
#include "CColorConverter.h"\r
\r
} // end namespace video\r
} // end namespace irr\r
-\r
-#endif\r
-\r
namespace video\r
{\r
\r
-#if defined(_IRR_COMPILE_WITH_TGA_LOADER_) || defined(_IRR_COMPILE_WITH_TGA_WRITER_)\r
-\r
// byte-align structures\r
#include "irrpack.h"\r
\r
// Default alignment\r
#include "irrunpack.h"\r
\r
-#endif // compiled with loader or reader\r
-\r
-#ifdef _IRR_COMPILE_WITH_TGA_LOADER_\r
-\r
/*!\r
Surface Loader for targa images\r
*/\r
u8* loadCompressedImage(io::IReadFile *file, const STGAHeader& header) const;\r
};\r
\r
-#endif // compiled with loader\r
-\r
} // end namespace video\r
} // end namespace irr\r
\r
#endif\r
-\r
\r
#include "CImageWriterJPG.h"\r
\r
-#ifdef _IRR_COMPILE_WITH_JPG_WRITER_\r
-\r
#include "CColorConverter.h"\r
#include "IWriteFile.h"\r
#include "CImage.h"\r
#include "irrString.h"\r
#include "os.h"\r
\r
-#ifdef _IRR_COMPILE_WITH_LIBJPEG_\r
#include <stdio.h> // required for jpeglib.h\r
extern "C"\r
{\r
} // namespace video\r
} // namespace irr\r
\r
-#endif // _IRR_COMPILE_WITH_LIBJPEG_\r
+\r
\r
namespace irr\r
{\r
\r
bool CImageWriterJPG::writeImage(io::IWriteFile *file, IImage *image, u32 quality) const\r
{\r
-#ifndef _IRR_COMPILE_WITH_LIBJPEG_\r
- return false;\r
-#else\r
return writeJPEGFile(file, image, quality);\r
-#endif\r
}\r
\r
} // namespace video\r
} // namespace irr\r
-\r
-#endif\r
-\r
\r
#include "IrrCompileConfig.h"\r
\r
-#ifdef _IRR_COMPILE_WITH_JPG_WRITER_\r
-\r
#include "IImageWriter.h"\r
\r
namespace irr\r
}\r
\r
#endif // _C_IMAGE_WRITER_JPG_H_INCLUDED__\r
-#endif\r
-\r
\r
#include "CImageWriterPNG.h"\r
\r
-#ifdef _IRR_COMPILE_WITH_PNG_WRITER_\r
-\r
#include "CImageLoaderPNG.h"\r
#include "CColorConverter.h"\r
#include "IWriteFile.h"\r
#include "irrString.h"\r
#include "os.h" // for logging\r
\r
-#ifdef _IRR_COMPILE_WITH_LIBPNG_\r
- #include <png.h> // use system lib png\r
-#endif // _IRR_COMPILE_WITH_LIBPNG_\r
+#include <png.h> // use system lib png\r
\r
namespace irr\r
{\r
return new CImageWriterPNG;\r
}\r
\r
-#ifdef _IRR_COMPILE_WITH_LIBPNG_\r
// PNG function for error handling\r
static void png_cpexcept_error(png_structp png_ptr, png_const_charp msg)\r
{\r
if (check != length)\r
png_error(png_ptr, "Write Error");\r
}\r
-#endif // _IRR_COMPILE_WITH_LIBPNG_\r
\r
CImageWriterPNG::CImageWriterPNG()\r
{\r
\r
bool CImageWriterPNG::isAWriteableFileExtension(const io::path& filename) const\r
{\r
-#ifdef _IRR_COMPILE_WITH_LIBPNG_\r
return core::hasFileExtension ( filename, "png" );\r
-#else\r
- return false;\r
-#endif\r
}\r
\r
bool CImageWriterPNG::writeImage(io::IWriteFile* file, IImage* image,u32 param) const\r
{\r
-#ifdef _IRR_COMPILE_WITH_LIBPNG_\r
if (!file || !image)\r
return false;\r
\r
delete [] tmpImage;\r
png_destroy_write_struct(&png_ptr, &info_ptr);\r
return true;\r
-#else\r
- return false;\r
-#endif\r
}\r
\r
} // namespace video\r
} // namespace irr\r
-\r
-#endif\r
-\r
\r
#include "IrrCompileConfig.h"\r
\r
-#ifdef _IRR_COMPILE_WITH_PNG_WRITER_\r
-\r
#include "IImageWriter.h"\r
\r
namespace irr\r
} // namespace irr\r
\r
#endif // _C_IMAGE_WRITER_PNG_H_INCLUDED__\r
-#endif\r
-\r
message(FATAL_ERROR "IrrlichtMt revision number mismatches between CMake and headers.")
endif()
+# Platform-independent configuration (hard-coded currently)
+add_definitions(
+ -DIRR_ENABLE_BUILTIN_FONT
+ -D_IRR_COMPILE_WITH_SKINNED_MESH_SUPPORT_
+ )
+
# Platform-specific configuration
if(CMAKE_SYSTEM_NAME STREQUAL "SunOS")
//! creates a loader which is able to load targa images\r
IImageLoader* createImageLoaderTGA();\r
\r
-//! creates a loader which is able to load psd images\r
-IImageLoader* createImageLoaderPSD();\r
-\r
-//! creates a loader which is able to load psd images\r
-IImageLoader* createImageLoaderPVR();\r
-\r
-//! creates a loader which is able to load dds images\r
-IImageLoader* createImageLoaderDDS();\r
-\r
-//! creates a loader which is able to load pcx images\r
-IImageLoader* createImageLoaderPCX();\r
-\r
//! creates a loader which is able to load png images\r
IImageLoader* createImageLoaderPNG();\r
\r
-//! creates a loader which is able to load WAL images\r
-IImageLoader* createImageLoaderWAL();\r
-\r
-//! creates a loader which is able to load halflife images\r
-IImageLoader* createImageLoaderHalfLife();\r
-\r
-//! creates a loader which is able to load lmp images\r
-IImageLoader* createImageLoaderLMP();\r
-\r
-//! creates a loader which is able to load ppm/pgm/pbm images\r
-IImageLoader* createImageLoaderPPM();\r
-\r
-//! creates a loader which is able to load rgb images\r
-IImageLoader* createImageLoaderRGB();\r
-\r
-\r
-//! creates a writer which is able to save bmp images\r
-IImageWriter* createImageWriterBMP();\r
-\r
//! creates a writer which is able to save jpg images\r
IImageWriter* createImageWriterJPG();\r
\r
-//! creates a writer which is able to save tga images\r
-IImageWriter* createImageWriterTGA();\r
-\r
-//! creates a writer which is able to save psd images\r
-IImageWriter* createImageWriterPSD();\r
-\r
-//! creates a writer which is able to save pcx images\r
-IImageWriter* createImageWriterPCX();\r
-\r
//! creates a writer which is able to save png images\r
IImageWriter* createImageWriterPNG();\r
\r
-//! creates a writer which is able to save ppm images\r
-IImageWriter* createImageWriterPPM();\r
\r
//! constructor\r
CNullDriver::CNullDriver(io::IFileSystem* io, const core::dimension2d<u32>& screenSize)\r
if (FileSystem)\r
FileSystem->grab();\r
\r
- // create surface loader\r
-\r
-#ifdef _IRR_COMPILE_WITH_WAL_LOADER_\r
- SurfaceLoader.push_back(video::createImageLoaderHalfLife());\r
- SurfaceLoader.push_back(video::createImageLoaderWAL());\r
-#endif\r
-#ifdef _IRR_COMPILE_WITH_LMP_LOADER_\r
- SurfaceLoader.push_back(video::createImageLoaderLMP());\r
-#endif\r
-#ifdef _IRR_COMPILE_WITH_PPM_LOADER_\r
- SurfaceLoader.push_back(video::createImageLoaderPPM());\r
-#endif\r
-#ifdef _IRR_COMPILE_WITH_RGB_LOADER_\r
- SurfaceLoader.push_back(video::createImageLoaderRGB());\r
-#endif\r
-#ifdef _IRR_COMPILE_WITH_PSD_LOADER_\r
- SurfaceLoader.push_back(video::createImageLoaderPSD());\r
-#endif\r
-#ifdef _IRR_COMPILE_WITH_PVR_LOADER_\r
- SurfaceLoader.push_back(video::createImageLoaderPVR());\r
-#endif\r
-#if defined(_IRR_COMPILE_WITH_DDS_LOADER_) || defined(_IRR_COMPILE_WITH_DDS_DECODER_LOADER_)\r
- SurfaceLoader.push_back(video::createImageLoaderDDS());\r
-#endif\r
-#ifdef _IRR_COMPILE_WITH_PCX_LOADER_\r
- SurfaceLoader.push_back(video::createImageLoaderPCX());\r
-#endif\r
-#ifdef _IRR_COMPILE_WITH_TGA_LOADER_\r
+ // create surface loaders and writers\r
SurfaceLoader.push_back(video::createImageLoaderTGA());\r
-#endif\r
-#ifdef _IRR_COMPILE_WITH_PNG_LOADER_\r
SurfaceLoader.push_back(video::createImageLoaderPNG());\r
-#endif\r
-#ifdef _IRR_COMPILE_WITH_JPG_LOADER_\r
SurfaceLoader.push_back(video::createImageLoaderJPG());\r
-#endif\r
-#ifdef _IRR_COMPILE_WITH_BMP_LOADER_\r
SurfaceLoader.push_back(video::createImageLoaderBMP());\r
-#endif\r
-\r
-\r
-#ifdef _IRR_COMPILE_WITH_PPM_WRITER_\r
- SurfaceWriter.push_back(video::createImageWriterPPM());\r
-#endif\r
-#ifdef _IRR_COMPILE_WITH_PCX_WRITER_\r
- SurfaceWriter.push_back(video::createImageWriterPCX());\r
-#endif\r
-#ifdef _IRR_COMPILE_WITH_PSD_WRITER_\r
- SurfaceWriter.push_back(video::createImageWriterPSD());\r
-#endif\r
-#ifdef _IRR_COMPILE_WITH_TGA_WRITER_\r
- SurfaceWriter.push_back(video::createImageWriterTGA());\r
-#endif\r
-#ifdef _IRR_COMPILE_WITH_JPG_WRITER_\r
+\r
SurfaceWriter.push_back(video::createImageWriterJPG());\r
-#endif\r
-#ifdef _IRR_COMPILE_WITH_PNG_WRITER_\r
SurfaceWriter.push_back(video::createImageWriterPNG());\r
-#endif\r
-#ifdef _IRR_COMPILE_WITH_BMP_WRITER_\r
- SurfaceWriter.push_back(video::createImageWriterBMP());\r
-#endif\r
\r
\r
// set ExposedData to 0\r
// For conditions of distribution and use, see copyright notice in irrlicht.h\r
\r
#include "IrrCompileConfig.h"\r
-#ifdef _IRR_COMPILE_WITH_OBJ_LOADER_\r
-\r
#include "COBJMeshFileLoader.h"\r
#include "IMeshManipulator.h"\r
#include "IVideoDriver.h"\r
\r
} // end namespace scene\r
} // end namespace irr\r
-\r
-#endif // _IRR_COMPILE_WITH_OBJ_LOADER_\r
-\r
\r
#include "os.h"\r
\r
-// We need this include for the case of skinned mesh support without\r
-// any such loader\r
-#ifdef _IRR_COMPILE_WITH_SKINNED_MESH_SUPPORT_\r
#include "CSkinnedMesh.h"\r
-#endif\r
-\r
-#ifdef _IRR_COMPILE_WITH_X_LOADER_\r
#include "CXMeshFileLoader.h"\r
-#endif\r
-\r
-#ifdef _IRR_COMPILE_WITH_OBJ_LOADER_\r
#include "COBJMeshFileLoader.h"\r
-#endif\r
-\r
-#ifdef _IRR_COMPILE_WITH_B3D_LOADER_\r
#include "CB3DMeshFileLoader.h"\r
-#endif\r
-\r
-#ifdef _IRR_COMPILE_WITH_BILLBOARD_SCENENODE_\r
#include "CBillboardSceneNode.h"\r
-#endif // _IRR_COMPILE_WITH_BILLBOARD_SCENENODE_\r
#include "CAnimatedMeshSceneNode.h"\r
#include "CCameraSceneNode.h"\r
#include "CMeshSceneNode.h"\r
// TODO: now that we have multiple scene managers, these should be\r
// shallow copies from the previous manager if there is one.\r
\r
- #ifdef _IRR_COMPILE_WITH_X_LOADER_\r
MeshLoaderList.push_back(new CXMeshFileLoader(this, FileSystem));\r
- #endif\r
- #ifdef _IRR_COMPILE_WITH_OBJ_LOADER_\r
MeshLoaderList.push_back(new COBJMeshFileLoader(this, FileSystem));\r
- #endif\r
- #ifdef _IRR_COMPILE_WITH_B3D_LOADER_\r
MeshLoaderList.push_back(new CB3DMeshFileLoader(this));\r
- #endif\r
}\r
\r
\r
video::SColor colorTop, video::SColor colorBottom\r
)\r
{\r
-#ifdef _IRR_COMPILE_WITH_BILLBOARD_SCENENODE_\r
if (!parent)\r
parent = this;\r
\r
node->drop();\r
\r
return node;\r
-#else\r
- return 0;\r
-#endif\r
}\r
\r
\r
//! Get a skinned mesh, which is not available as header-only code\r
ISkinnedMesh* CSceneManager::createSkinnedMesh()\r
{\r
-#ifdef _IRR_COMPILE_WITH_SKINNED_MESH_SUPPORT_\r
return new CSkinnedMesh();\r
-#else\r
- return 0;\r
-#endif\r
}\r
\r
//! Returns a mesh writer implementation if available\r
IMeshWriter* CSceneManager::createMeshWriter(EMESH_WRITER_TYPE type)\r
{\r
- switch(type)\r
- {\r
- case EMWT_IRR_MESH:\r
- case EMWT_COLLADA:\r
- return 0;\r
- case EMWT_STL:\r
-#ifdef _IRR_COMPILE_WITH_STL_WRITER_\r
- return new CSTLMeshWriter(this);\r
-#else\r
- return 0;\r
-#endif\r
- case EMWT_OBJ:\r
-#ifdef _IRR_COMPILE_WITH_OBJ_WRITER_\r
- return new COBJMeshWriter(this, FileSystem);\r
-#else\r
- return 0;\r
-#endif\r
-\r
- case EMWT_PLY:\r
-#ifdef _IRR_COMPILE_WITH_PLY_WRITER_\r
- return new CPLYMeshWriter();\r
-#else\r
- return 0;\r
-#endif\r
-\r
- case EMWT_B3D:\r
-#ifdef _IRR_COMPILE_WITH_B3D_WRITER_\r
- return new CB3DMeshWriter();\r
-#else\r
- return 0;\r
-#endif\r
- }\r
-\r
return 0;\r
}\r
\r
// For conditions of distribution and use, see copyright notice in irrlicht.h\r
\r
#include "IrrCompileConfig.h"\r
-#ifdef _IRR_COMPILE_WITH_SKINNED_MESH_SUPPORT_\r
-\r
#include "CSkinnedMesh.h"\r
#include "CBoneSceneNode.h"\r
#include "IAnimatedMeshSceneNode.h"\r
\r
} // end namespace scene\r
} // end namespace irr\r
-\r
-#endif // _IRR_COMPILE_WITH_SKINNED_MESH_SUPPORT_\r
-\r
\r
#include "IrrCompileConfig.h"\r
\r
-#ifdef _IRR_COMPILE_WITH_X_LOADER_\r
-\r
#include "CXMeshFileLoader.h"\r
#include "os.h"\r
\r
\r
} // end namespace scene\r
} // end namespace irr\r
-\r
-#endif // _IRR_COMPILE_WITH_X_LOADER_\r
-\r
#include "os.h"\r
\r
\r
-#ifdef __IRR_COMPILE_WITH_ZIP_ARCHIVE_LOADER_\r
-\r
#include "CFileList.h"\r
#include "CReadFile.h"\r
#include "coreutil.h"\r
\r
#include "IrrCompileConfig.h"\r
-#ifdef _IRR_COMPILE_WITH_ZLIB_\r
- #include <zlib.h> // use system lib\r
-#endif\r
+#include <zlib.h> // use system lib\r
\r
namespace irr\r
{\r
}\r
case 8:\r
{\r
- #ifdef _IRR_COMPILE_WITH_ZLIB_\r
-\r
const u32 uncompressedSize = e.header.DataDescriptor.UncompressedSize;\r
c8* pBuf = new c8[ uncompressedSize ];\r
if (!pBuf)\r
}\r
else\r
return FileSystem->createMemoryReadFile(pBuf, uncompressedSize, Files[index].FullName, true);\r
-\r
- #else\r
- return 0; // zlib not compiled, we cannot decompress the data.\r
- #endif\r
}\r
case 12:\r
{\r
\r
} // end namespace io\r
} // end namespace irr\r
-\r
-#endif // __IRR_COMPILE_WITH_ZIP_ARCHIVE_LOADER_\r
\r
#include "IrrCompileConfig.h"\r
\r
-#ifdef __IRR_COMPILE_WITH_ZIP_ARCHIVE_LOADER_\r
-\r
#include "IReadFile.h"\r
#include "irrArray.h"\r
#include "irrString.h"\r
} // end namespace io\r
} // end namespace irr\r
\r
-#endif // __IRR_COMPILE_WITH_ZIP_ARCHIVE_LOADER_\r
#endif // __C_ZIP_READER_H_INCLUDED__\r
-\r