Merge with default

--HG--
branch : build_pipeline_v3
hg/feature/build_pipeline_v3
kaetemi 11 years ago
commit b74292e34f

@ -60,7 +60,7 @@ IF(Mercurial_HG_EXECUTABLE)
"\\1" Mercurial_VERSION_HG "${Mercurial_VERSION_HG}")
MACRO(Mercurial_WC_INFO dir prefix)
EXECUTE_PROCESS(COMMAND ${Mercurial_HG_EXECUTABLE} tip
EXECUTE_PROCESS(COMMAND ${Mercurial_HG_EXECUTABLE} tip --template "{rev};{node};{tags};{author}"
WORKING_DIRECTORY ${dir}
OUTPUT_VARIABLE ${prefix}_WC_INFO
ERROR_VARIABLE Mercurial_hg_info_error
@ -70,18 +70,18 @@ IF(Mercurial_HG_EXECUTABLE)
IF(NOT ${Mercurial_hg_info_result} EQUAL 0)
MESSAGE(SEND_ERROR "Command \"${Mercurial_HG_EXECUTABLE} tip\" failed with output:\n${Mercurial_hg_info_error}")
ELSE(NOT ${Mercurial_hg_info_result} EQUAL 0)
STRING(REGEX REPLACE "^(.*\n)?Repository Root: ([^\n]+).*"
"\\2" ${prefix}_WC_ROOT "${${prefix}_WC_INFO}")
STRING(REGEX REPLACE "^(.*\n)?changeset: *([0-9]+).*"
"\\2" ${prefix}_WC_REVISION "${${prefix}_WC_INFO}")
STRING(REGEX REPLACE "^(.*\n)?Last Changed Author: ([^\n]+).*"
"\\2" ${prefix}_WC_LAST_CHANGED_AUTHOR "${${prefix}_WC_INFO}")
STRING(REGEX REPLACE "^(.*\n)?Last Changed Rev: ([^\n]+).*"
"\\2" ${prefix}_WC_LAST_CHANGED_REV "${${prefix}_WC_INFO}")
STRING(REGEX REPLACE "^(.*\n)?Last Changed Date: ([^\n]+).*"
"\\2" ${prefix}_WC_LAST_CHANGED_DATE "${${prefix}_WC_INFO}")
LIST(LENGTH ${prefix}_WC_INFO _COUNT)
IF(_COUNT EQUAL 4)
LIST(GET ${prefix}_WC_INFO 0 ${prefix}_WC_REVISION)
LIST(GET ${prefix}_WC_INFO 1 ${prefix}_WC_CHANGESET)
LIST(GET ${prefix}_WC_INFO 2 ${prefix}_WC_BRANCH)
LIST(GET ${prefix}_WC_INFO 3 ${prefix}_WC_LAST_CHANGED_AUTHOR)
ELSE(_COUNT EQUAL 4)
MESSAGE(STATUS "Bad output from HG")
SET(${prefix}_WC_REVISION "unknown")
SET(${prefix}_WC_CHANGESET "unknown")
SET(${prefix}_WC_BRANCH "unknown")
ENDIF(_COUNT EQUAL 4)
ENDIF(NOT ${Mercurial_hg_info_result} EQUAL 0)
ENDMACRO(Mercurial_WC_INFO)

@ -3,6 +3,7 @@ CMAKE_MINIMUM_REQUIRED(VERSION 2.6.3)
# ROOT_DIR should be set to root of the repository (where to find the .svn or .hg directory)
# SOURCE_DIR should be set to root of your code (where to find CMakeLists.txt)
IF(SOURCE_DIR)
# Replace spaces by semi-columns
IF(CMAKE_MODULE_PATH)
STRING(REPLACE " " ";" CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH})
@ -17,6 +18,9 @@ ENDIF(NOT ROOT_DIR AND SOURCE_DIR)
IF(NOT SOURCE_DIR AND ROOT_DIR)
SET(SOURCE_DIR ${ROOT_DIR})
ENDIF(NOT SOURCE_DIR AND ROOT_DIR)
ELSE(SOURCE_DIR)
SET(ROOT_DIR ${CMAKE_SOURCE_DIR})
ENDIF(SOURCE_DIR)
MACRO(NOW RESULT)
IF (WIN32)
@ -53,10 +57,11 @@ IF(EXISTS "${ROOT_DIR}/.hg/")
ENDIF(MERCURIAL_FOUND)
ENDIF(EXISTS "${ROOT_DIR}/.hg/")
IF(DEFINED REVISION)
IF(SOURCE_DIR AND DEFINED REVISION)
IF(EXISTS ${SOURCE_DIR}/revision.h.in)
MESSAGE(STATUS "Revision: ${REVISION}")
NOW(BUILD_DATE)
CONFIGURE_FILE(${SOURCE_DIR}/revision.h.in revision.h.txt)
EXECUTE_PROCESS(COMMAND ${CMAKE_COMMAND} -E copy revision.h.txt revision.h) # copy_if_different
ENDIF(EXISTS ${SOURCE_DIR}/revision.h.in)
ENDIF(DEFINED REVISION)
ENDIF(SOURCE_DIR AND DEFINED REVISION)

@ -22,22 +22,39 @@ ENDMACRO(NL_GEN_PC)
###
MACRO(NL_GEN_REVISION_H)
IF(EXISTS ${CMAKE_SOURCE_DIR}/revision.h.in)
INCLUDE_DIRECTORIES(${CMAKE_BINARY_DIR})
ADD_DEFINITIONS(-DHAVE_REVISION_H)
SET(HAVE_REVISION_H ON)
SET(TOOL_FOUND OFF)
IF(EXISTS "${CMAKE_SOURCE_DIR}/../.svn/")
FIND_PACKAGE(Subversion)
IF(SUBVERSION_FOUND)
SET(TOOL_FOUND ON)
ENDIF(SUBVERSION_FOUND)
ENDIF(EXISTS "${CMAKE_SOURCE_DIR}/../.svn/")
IF(EXISTS "${CMAKE_SOURCE_DIR}/../.hg/")
FIND_PACKAGE(Mercurial)
IF(MERCURIAL_FOUND)
SET(TOOL_FOUND ON)
ENDIF(MERCURIAL_FOUND)
ENDIF(EXISTS "${CMAKE_SOURCE_DIR}/../.hg/")
# if already generated
IF(EXISTS ${CMAKE_SOURCE_DIR}/revision.h)
# copy it
MESSAGE(STATUS "Copying provided revision.h...")
FILE(COPY ${CMAKE_SOURCE_DIR}/revision.h DESTINATION ${CMAKE_BINARY_DIR})
ELSE(EXISTS ${CMAKE_SOURCE_DIR}/revision.h)
SET(HAVE_REVISION_H ON)
ENDIF(EXISTS ${CMAKE_SOURCE_DIR}/revision.h)
IF(TOOL_FOUND)
# a custom target that is always built
ADD_CUSTOM_TARGET(revision ALL
DEPENDS ${CMAKE_BINARY_DIR}/revision.h)
ADD_CUSTOM_TARGET(revision ALL)
# creates revision.h using cmake script
ADD_CUSTOM_COMMAND(OUTPUT ${CMAKE_BINARY_DIR}/revision.h
ADD_CUSTOM_COMMAND(TARGET revision
PRE_BUILD
COMMAND ${CMAKE_COMMAND}
-DSOURCE_DIR=${CMAKE_SOURCE_DIR}
-DROOT_DIR=${CMAKE_SOURCE_DIR}/..
@ -47,7 +64,13 @@ MACRO(NL_GEN_REVISION_H)
SET_SOURCE_FILES_PROPERTIES(${CMAKE_BINARY_DIR}/revision.h
PROPERTIES GENERATED TRUE
HEADER_FILE_ONLY TRUE)
ENDIF(EXISTS ${CMAKE_SOURCE_DIR}/revision.h)
SET(HAVE_REVISION_H ON)
ENDIF(TOOL_FOUND)
IF(HAVE_REVISION_H)
INCLUDE_DIRECTORIES(${CMAKE_BINARY_DIR})
ADD_DEFINITIONS(-DHAVE_REVISION_H)
ENDIF(HAVE_REVISION_H)
ENDIF(EXISTS ${CMAKE_SOURCE_DIR}/revision.h.in)
ENDMACRO(NL_GEN_REVISION_H)
@ -923,6 +946,10 @@ MACRO(SETUP_EXTERNAL)
IF(WIN32)
FIND_PACKAGE(External REQUIRED)
IF(NOT VC_DIR)
SET(VC_DIR $ENV{VC_DIR})
ENDIF(NOT VC_DIR)
IF(MSVC10)
IF(NOT MSVC10_REDIST_DIR)
# If you have VC++ 2010 Express, put x64/Microsoft.VC100.CRT/*.dll in ${EXTERNAL_PATH}/redist

@ -293,6 +293,11 @@ public:
*/
virtual void forceDXTCCompression(bool dxtcComp)=0;
/** if different from 0, enable anisotropic filter on textures. -1 enables max value.
* Default is 0.
*/
virtual void setAnisotropicFilter(sint filter)=0;
/** if !=1, force mostly all the textures (but TextureFonts lightmaps, interfaces etc..)
* to be divided by Divisor (2, 4, 8...)
* Default is 1.

@ -471,6 +471,7 @@ public:
virtual void delete3dMouseListener (U3dMouseListener *listener);
virtual TPolygonMode getPolygonMode ();
virtual void forceDXTCCompression(bool dxtcComp);
virtual void setAnisotropicFilter(sint filter);
virtual void forceTextureResize(uint divisor);
virtual void forceNativeFragmentPrograms(bool nativeOnly);
virtual bool setMonitorColorProperties (const CMonitorColorProperties &properties);

@ -158,7 +158,7 @@ public:
// ***************************************************************************
// Out of CLandscapeGlobals, because myabe used in __asm{}
// Out of CLandscapeGlobals, because maybe used in __asm{}
extern uint NL3D_LandscapeGlobals_PassNTri;
extern void *NL3D_LandscapeGlobals_PassTriCurPtr;
extern CIndexBuffer::TFormat NL3D_LandscapeGlobals_PassTriFormat;

@ -660,6 +660,11 @@ public:
*/
virtual void forceDXTCCompression(bool dxtcComp)=0;
/** if different from 0, enable anisotropic filter on textures. -1 enables max value.
* Default is 0.
*/
virtual void setAnisotropicFilter(sint filter)=0;
/** if !=1, force mostly all the textures (but TextureFonts lightmaps, interfaces etc..)
* to be divided by Divisor (2, 4, 8...)
* Default is 1.

@ -51,12 +51,20 @@
# ifndef _WIN32_WINNT
# define _WIN32_WINNT 0x0500 // Minimal OS = Windows 2000 (NeL is not supported on Windows 95/98)
# endif
# if _MSC_VER >= 1600
# ifdef _MSC_VER
# define NL_COMP_VC
# if _MSC_VER >= 1700
# define NL_COMP_VC11
# define NL_COMP_VC_VERSION 110
# elif _MSC_VER >= 1600
# define NL_COMP_VC10
# define NL_COMP_VC_VERSION 100
# elif _MSC_VER >= 1500
# define NL_COMP_VC9
# define NL_COMP_VC_VERSION 90
# elif _MSC_VER >= 1400
# define NL_COMP_VC8
# define NL_COMP_VC_VERSION 80
# undef nl_time
# define nl_time _time32 // use the old 32 bit time function
# undef nl_mktime
@ -69,12 +77,16 @@
# define nl_difftime _difftime32 // use the old 32 bit time function
# elif _MSC_VER >= 1310
# define NL_COMP_VC71
# define NL_COMP_VC_VERSION 71
# elif _MSC_VER >= 1300
# define NL_COMP_VC7
# define NL_COMP_VC_VERSION 70
# elif _MSC_VER >= 1200
# define NL_COMP_VC6
# define NL_COMP_VC_VERSION 60
# define NL_COMP_NEED_PARAM_ON_METHOD
# endif
# endif
# if defined(_HAS_TR1) && (_HAS_TR1 + 0) // VC9 TR1 feature pack or later
# define NL_ISO_STDTR1_AVAILABLE
# define NL_ISO_STDTR1_HEADER(header) <header>
@ -320,7 +332,7 @@ typedef unsigned int uint; // at least 32bits (depend of processor)
# define CHashMap std::tr1::unordered_map
# define CHashSet std::tr1::unordered_set
# define CHashMultiMap std::tr1::unordered_multimap
#elif defined(NL_COMP_VC7) || defined(NL_COMP_VC71) || defined(NL_COMP_VC8) || defined(NL_COMP_VC9) // VC7 through 9
#elif defined(NL_COMP_VC) && (NL_COMP_VC_VERSION >= 70 && NL_COMP_VC_VERSION <= 90) // VC7 through 9
# include <hash_map>
# include <hash_set>
# define CHashMap stdext::hash_map
@ -366,7 +378,7 @@ typedef uint16 ucchar;
// To define a 64bits constant; ie: UINT64_CONSTANT(0x123456781234)
#ifdef NL_OS_WINDOWS
# if defined(NL_COMP_VC8) || defined(NL_COMP_VC9) || defined(NL_COMP_VC10)
# if defined(NL_COMP_VC) && (NL_COMP_VC_VERSION >= 80)
# define INT64_CONSTANT(c) (c##LL)
# define SINT64_CONSTANT(c) (c##LL)
# define UINT64_CONSTANT(c) (c##LL)

@ -33,7 +33,7 @@ namespace NL3D
{
// ***************************************************************************
const uint32 IDriver::InterfaceVersion = 0x6a; // added cursors methods
const uint32 IDriver::InterfaceVersion = 0x6b; // added anisotropic filter
// ***************************************************************************
IDriver::IDriver() : _SyncTexDrvInfos( "IDriver::_SyncTexDrvInfos" )

@ -292,6 +292,11 @@ CDriverD3D::CDriverD3D()
_CurrIndexBufferFormat = CIndexBuffer::IndicesUnknownFormat;
_IsGeforce = false;
_NonPowerOfTwoTexturesSupported = false;
_MaxAnisotropy = 0;
_AnisotropicMinSupported = false;
_AnisotropicMagSupported = false;
_AnisotropicMinCubeSupported = false;
_AnisotropicMagCubeSupported = false;
_FrustumLeft= -1.f;
_FrustumRight= 1.f;
@ -1493,6 +1498,11 @@ bool CDriverD3D::setDisplay(nlWindow wnd, const GfxMode& mode, bool show, bool r
_MaxVertexIndex = caps.MaxVertexIndex;
_IsGeforce = !(caps.DevCaps & D3DDEVCAPS_NPATCHES) && (caps.PixelShaderVersion >= D3DPS_VERSION(2, 0) || caps.PixelShaderVersion < D3DPS_VERSION(1, 4));
_NonPowerOfTwoTexturesSupported = !(caps.TextureCaps & D3DPTEXTURECAPS_POW2) || (caps.TextureCaps & D3DPTEXTURECAPS_NONPOW2CONDITIONAL);
_MaxAnisotropy = caps.MaxAnisotropy;
_AnisotropicMinSupported = (caps.TextureFilterCaps & D3DPTFILTERCAPS_MINFANISOTROPIC) != 0;
_AnisotropicMagSupported = (caps.TextureFilterCaps & D3DPTFILTERCAPS_MAGFANISOTROPIC) != 0;
_AnisotropicMinCubeSupported = (caps.CubeTextureFilterCaps & D3DPTFILTERCAPS_MINFANISOTROPIC) != 0;
_AnisotropicMagCubeSupported = (caps.CubeTextureFilterCaps & D3DPTFILTERCAPS_MAGFANISOTROPIC) != 0;
}
else
{
@ -1506,6 +1516,11 @@ bool CDriverD3D::setDisplay(nlWindow wnd, const GfxMode& mode, bool show, bool r
_MaxVertexIndex = 0xffff;
_IsGeforce = false;
_NonPowerOfTwoTexturesSupported = false;
_MaxAnisotropy = 0;
_AnisotropicMinSupported = false;
_AnisotropicMagSupported = false;
_AnisotropicMinCubeSupported = false;
_AnisotropicMagCubeSupported = false;
}
// If 16 bits vertices only, build a vb for quads rendering
if (_MaxVertexIndex <= 0xffff)
@ -1607,6 +1622,7 @@ bool CDriverD3D::setDisplay(nlWindow wnd, const GfxMode& mode, bool show, bool r
// Init some variables
_ForceDXTCCompression = false;
_AnisotropicFilter = 0;
_ForceTextureResizePower = 0;
_FogEnabled = false;
@ -2049,6 +2065,25 @@ void CDriverD3D::forceDXTCCompression(bool dxtcComp)
// ***************************************************************************
void CDriverD3D::setAnisotropicFilter(sint filter)
{
H_AUTO_D3D(CDriverD3D_setAnisotropicFilter);
// anisotropic filter not supported
if (_MaxAnisotropy < 2) return;
if (filter < 0 || filter > _MaxAnisotropy)
{
_AnisotropicFilter = _MaxAnisotropy;
}
else
{
_AnisotropicFilter = filter;
}
}
// ***************************************************************************
void CDriverD3D::forceTextureResize(uint divisor)
{
H_AUTO_D3D(CDriverD3D_forceTextureResize);

@ -777,6 +777,7 @@ public:
virtual void disableHardwareVertexArrayAGP();
virtual void disableHardwareTextureShader();
virtual void forceDXTCCompression(bool dxtcComp);
virtual void setAnisotropicFilter(sint filter);
virtual void forceTextureResize(uint divisor);
virtual void forceNativeFragmentPrograms(bool /* nativeOnly */) {} // ignored
@ -1521,6 +1522,7 @@ public:
setSamplerState (stage, D3DSAMP_MAGFILTER, d3dtext->MagFilter);
setSamplerState (stage, D3DSAMP_MINFILTER, d3dtext->MinFilter);
setSamplerState (stage, D3DSAMP_MIPFILTER, d3dtext->MipFilter);
setSamplerState (stage, D3DSAMP_MAXANISOTROPY, _AnisotropicFilter);
// Profile, log the use of this texture
if (_SumTextureMemoryUsed)
@ -2205,6 +2207,11 @@ private:
bool _CubbedMipMapSupported;
bool _IsGeforce;
bool _NonPowerOfTwoTexturesSupported;
uint _MaxAnisotropy;
bool _AnisotropicMinSupported;
bool _AnisotropicMagSupported;
bool _AnisotropicMinCubeSupported;
bool _AnisotropicMagCubeSupported;
uint _NbNeLTextureStages; // Number of texture stage for NeL (max IDRV_MAT_MAXTEXTURES)
uint _MaxVerticesByVertexBufferHard;
uint _MaxLight;
@ -2411,6 +2418,7 @@ private:
bool _MustRestoreLight;
D3DXMATRIX _D3DMatrixIdentity;
DWORD _FogColor;
uint _AnisotropicFilter;
// stencil buffer
bool _CurStencilTest;

@ -454,6 +454,7 @@ bool CDriverD3D::generateD3DTexture (ITexture& tex, bool textureDegradation, D3D
}
else
{
/*
// textures with mipmaps doesn't support not power of two sizes
// only DXTC formats are beginning with a 'D'
if (supportNonPowerOfTwoTextures() && (!isPowerOf2(width) || !isPowerOf2(height)) && levels == 1)
@ -464,6 +465,7 @@ bool CDriverD3D::generateD3DTexture (ITexture& tex, bool textureDegradation, D3D
_DeviceInterface->SetSamplerState(0, D3DSAMP_ADDRESSV, D3DTADDRESS_CLAMP);
_DeviceInterface->SetSamplerState(0, D3DSAMP_ADDRESSW, D3DTADDRESS_CLAMP);
}
*/
HRESULT hr = _DeviceInterface->CreateTexture (width, height, levels, renderTarget?D3DUSAGE_RENDERTARGET:0, destFormat, renderTarget?D3DPOOL_DEFAULT:D3DPOOL_MANAGED, &(d3dtext->Texture2d), NULL);
@ -506,6 +508,19 @@ inline void CDriverD3D::setupTextureWrapMode(ITexture& tex)
d3dtext->MagFilter = RemapMagTextureFilterTypeNeL2D3D[tex.getMagFilter()];
d3dtext->MinFilter = RemapMinTextureFilterTypeNeL2D3D[tex.getMinFilter()];
d3dtext->MipFilter = RemapMipTextureFilterTypeNeL2D3D[tex.getMinFilter()];
// only enable for min filter, because it's never supported for mag filter
if (_AnisotropicFilter > 1 && tex.getMinFilter() > ITexture::NearestMipMapLinear)
{
if (tex.isTextureCube())
{
if (_AnisotropicMinCubeSupported) d3dtext->MinFilter = D3DTEXF_ANISOTROPIC;
}
else
{
if (_AnisotropicMinSupported) d3dtext->MinFilter = D3DTEXF_ANISOTROPIC;
}
}
}

@ -305,6 +305,8 @@ CDriverGL::CDriverGL()
_NVTextureShaderEnabled = false;
_AnisotropicFilter = 0.f;
// Compute the Flag which say if one texture has been changed in CMaterial.
_MaterialAllTextureTouchedFlag= 0;
for(i=0; i < IDRV_MAT_MAXTEXTURES; i++)
@ -1337,11 +1339,7 @@ void CDriverGL::copyFrameBufferToTexture(ITexture *tex,
{
if(_Extensions.ARBTextureCubeMap)
{
#ifdef USE_OPENGLES
glBindTexture(GL_TEXTURE_CUBE_MAP_OES, gltext->ID);
#else
glBindTexture(GL_TEXTURE_CUBE_MAP_ARB, gltext->ID);
#endif
glCopyTexSubImage2D(NLCubeFaceToGLCubeFace[cubeFace], level, offsetx, offsety, x, y, width, height);
}
}
@ -2626,11 +2624,10 @@ void CDriverGL::checkTextureOn() const
GLboolean flagCM;
GLboolean flagTR;
glGetBooleanv(GL_TEXTURE_2D, &flag2D);
glGetBooleanv(GL_TEXTURE_CUBE_MAP_ARB, &flagCM);
#ifdef USE_OPENGLES
glGetBooleanv(GL_TEXTURE_CUBE_MAP_OES, &flagCM);
flagTR = true; // always true in OpenGL ES
#else
glGetBooleanv(GL_TEXTURE_CUBE_MAP_ARB, &flagCM);
glGetBooleanv(GL_TEXTURE_RECTANGLE_NV, &flagTR);
#endif
switch(dgs.getTextureMode())

@ -364,6 +364,7 @@ public:
virtual bool uploadTextureCube (ITexture& tex, NLMISC::CRect& rect, uint8 nNumMipMap, uint8 nNumFace);
virtual void forceDXTCCompression(bool dxtcComp);
virtual void setAnisotropicFilter(sint filter);
virtual void forceTextureResize(uint divisor);
@ -955,6 +956,8 @@ private:
bool _NVTextureShaderEnabled;
// Which stages support EMBM
bool _StageSupportEMBM[IDRV_MAT_MAXTEXTURES];
// Anisotropic filtering value
float _AnisotropicFilter;
// Prec settings for material.
CDriverGLStates _DriverGLStates;

@ -628,7 +628,7 @@ static bool setupARBTextureNonPowerOfTwo(const char *glext)
{
H_AUTO_OGL(setupARBTextureCompression);
#ifndef USE_OPENGL_ES
#ifndef USE_OPENGLES
CHECK_EXT("GL_ARB_texture_non_power_of_two");
#endif
@ -805,20 +805,20 @@ static bool setupARBTextureCubeMap(const char *glext)
#ifdef USE_OPENGLES
CHECK_EXT("OES_texture_cube_map");
CHECK_ADDRESS(NEL_PFNGLTEXGENFOESPROC, glTexGenfOES);
CHECK_ADDRESS(NEL_PFNGLTEXGENFVOESPROC, glTexGenfvOES);
CHECK_ADDRESS(NEL_PFNGLTEXGENIOESPROC, glTexGeniOES);
CHECK_ADDRESS(NEL_PFNGLTEXGENIVOESPROC, glTexGenivOES);
CHECK_ADDRESS(NEL_PFNGLTEXGENXOESPROC, glTexGenxOES);
CHECK_ADDRESS(NEL_PFNGLTEXGENXVOESPROC, glTexGenxvOES);
CHECK_ADDRESS(NEL_PFNGLGETTEXGENFVOESPROC, glGetTexGenfvOES);
CHECK_ADDRESS(NEL_PFNGLGETTEXGENIVOESPROC, glGetTexGenivOES);
CHECK_ADDRESS(NEL_PFNGLGETTEXGENXVOESPROC, glGetTexGenxvOES);
#else
CHECK_EXT("GL_ARB_texture_cube_map");
#endif
// CHECK_ADDRESS(NEL_PFNGLTEXGENFOESPROC, glTexGenfOES);
// CHECK_ADDRESS(NEL_PFNGLTEXGENFVOESPROC, glTexGenfvOES);
// CHECK_ADDRESS(NEL_PFNGLTEXGENIOESPROC, glTexGeniOES);
// CHECK_ADDRESS(NEL_PFNGLTEXGENIVOESPROC, glTexGenivOES);
// CHECK_ADDRESS(NEL_PFNGLTEXGENXOESPROC, glTexGenxOES);
// CHECK_ADDRESS(NEL_PFNGLTEXGENXVOESPROC, glTexGenxvOES);
// CHECK_ADDRESS(NEL_PFNGLGETTEXGENFVOESPROC, glGetTexGenfvOES);
// CHECK_ADDRESS(NEL_PFNGLGETTEXGENIVOESPROC, glGetTexGenivOES);
// CHECK_ADDRESS(NEL_PFNGLGETTEXGENXVOESPROC, glGetTexGenxvOES);
return true;
}
@ -1499,11 +1499,7 @@ void registerGlExtensions(CGlExtensions &ext)
ext.ARBMultiTexture= setupARBMultiTexture(glext);
if(ext.ARBMultiTexture)
{
#ifdef USE_OPENGLES
glGetIntegerv(GL_MAX_TEXTURE_UNITS, &ntext);
#else
glGetIntegerv(GL_MAX_TEXTURE_UNITS_ARB, &ntext);
#endif
// We could have more than IDRV_MAT_MAXTEXTURES but the interface only
// support IDRV_MAT_MAXTEXTURES texture stages so take min
ext.NbTextureStages= (ntext<((GLint)IDRV_MAT_MAXTEXTURES)?ntext:IDRV_MAT_MAXTEXTURES);

@ -157,7 +157,7 @@ public:
NVTextureRectangle = false;
EXTTextureRectangle = false;
EXTTextureFilterAnisotropic = false;
EXTTextureFilterAnisotropicMaximum = 1.f;
EXTTextureFilterAnisotropicMaximum = 0.f;
ARBTextureRectangle = false;
ARBTextureNonPowerOfTwo = false;
ARBMultisample = false;
@ -781,3 +781,4 @@ extern NEL_PFNGLSAMPLECOVERAGEARBPROC nglSampleCoverageARB;
#endif // USE_OPENGLES
#endif // NL_OPENGL_EXTENSION_H

@ -63,6 +63,20 @@ typedef void (APIENTRY * NEL_PFNGLGETTEXGENFVOESPROC) (GLenum coord, GLenum pnam
typedef void (APIENTRY * NEL_PFNGLGETTEXGENIVOESPROC) (GLenum coord, GLenum pname, GLint *params);
typedef void (APIENTRY * NEL_PFNGLGETTEXGENXVOESPROC) (GLenum coord, GLenum pname, GLfixed *params);
#define GL_MULTISAMPLE_ARB GL_MULTISAMPLE
#define GL_TEXTURE_CUBE_MAP_ARB GL_TEXTURE_CUBE_MAP_OES
#define GL_NONE 0
#define GL_MAX_TEXTURE_UNITS_ARB GL_MAX_TEXTURE_UNITS
#define GL_REFLECTION_MAP_ARB GL_REFLECTION_MAP_OES
#define GL_RGB_SCALE_EXT GL_RGB_SCALE
#define GL_REFLECTION_MAP_ARB GL_REFLECTION_MAP_OES
#define GL_PREVIOUS_EXT GL_PREVIOUS
#define GL_PRIMARY_COLOR_EXT GL_PRIMARY_COLOR
#define GL_CONSTANT_EXT GL_CONSTANT
#define GL_ADD_SIGNED_EXT GL_ADD_SIGNED
#define GL_INTERPOLATE_EXT GL_INTERPOLATE
#define GL_BUMP_ENVMAP_ATI GL_INTERPOLATE
#else
// ***************************************************************************

@ -87,10 +87,9 @@ static inline void convTexAddr(ITexture *tex, CMaterial::TTexAddressingMode mode
nlassert(mode < CMaterial::TexAddrCount);
static const GLenum glTex2dAddrModesNV[] =
{
#ifdef USE_OPENGLES
0, GL_TEXTURE_2D
#else
GL_NONE, GL_TEXTURE_2D, GL_PASS_THROUGH_NV, GL_CULL_FRAGMENT_NV,
GL_NONE, GL_TEXTURE_2D,
#ifndef USE_OPENGLES
GL_PASS_THROUGH_NV, GL_CULL_FRAGMENT_NV,
GL_OFFSET_TEXTURE_2D_NV, GL_OFFSET_TEXTURE_2D_SCALE_NV,
GL_DEPENDENT_AR_TEXTURE_2D_NV, GL_DEPENDENT_GB_TEXTURE_2D_NV,
GL_DOT_PRODUCT_NV, GL_DOT_PRODUCT_TEXTURE_2D_NV, GL_DOT_PRODUCT_TEXTURE_CUBE_MAP_NV,
@ -101,10 +100,9 @@ static inline void convTexAddr(ITexture *tex, CMaterial::TTexAddressingMode mode
static const GLenum glTexCubeAddrModesNV[] =
{
#ifdef USE_OPENGLES
0, GL_TEXTURE_CUBE_MAP_OES
#else
GL_NONE, GL_TEXTURE_CUBE_MAP_ARB, GL_PASS_THROUGH_NV, GL_CULL_FRAGMENT_NV,
GL_NONE, GL_TEXTURE_CUBE_MAP_ARB,
#ifndef USE_OPENGLES
GL_PASS_THROUGH_NV, GL_CULL_FRAGMENT_NV,
GL_OFFSET_TEXTURE_2D_NV, GL_OFFSET_TEXTURE_2D_SCALE_NV,
GL_DEPENDENT_AR_TEXTURE_2D_NV, GL_DEPENDENT_GB_TEXTURE_2D_NV,
GL_DOT_PRODUCT_NV, GL_DOT_PRODUCT_TEXTURE_2D_NV, GL_DOT_PRODUCT_TEXTURE_CUBE_MAP_NV,
@ -147,11 +145,7 @@ void CDriverGL::setTextureEnvFunction(uint stage, CMaterial& mat)
{
// Cubic or normal ?
if (text->isTextureCube ())
#ifdef USE_OPENGLES
_DriverGLStates.setTexGenMode (stage, GL_REFLECTION_MAP_OES);
#else
_DriverGLStates.setTexGenMode (stage, GL_REFLECTION_MAP_ARB);
#endif
else
#ifdef USE_OPENGLES
_DriverGLStates.setTexGenMode (stage, GL_TEXTURE_CUBE_MAP_OES);
@ -974,11 +968,7 @@ void CDriverGL::setupLightMapPass(uint pass)
if (mat._LightMapsMulx2)
{
// Multiply x 2
#ifdef USE_OPENGLES
glTexEnvi(GL_TEXTURE_ENV, GL_RGB_SCALE, 2);
#else
glTexEnvi(GL_TEXTURE_ENV, GL_RGB_SCALE_EXT, 2);
#endif
}
}
}
@ -1087,11 +1077,7 @@ void CDriverGL::endLightMapMultiPass()
for (uint32 i = 0; i < (_NLightMapPerPass+1); ++i)
{
_DriverGLStates.activeTextureARB(i);
#ifdef USE_OPENGLES
glTexEnvi(GL_TEXTURE_ENV, GL_RGB_SCALE, 1);
#else
glTexEnvi(GL_TEXTURE_ENV, GL_RGB_SCALE_EXT, 1);
#endif
}
}
}
@ -1165,12 +1151,7 @@ void CDriverGL::setupSpecularBegin()
// todo hulud remove
// _DriverGLStates.setTextureMode(CDriverGLStates::TextureCubeMap);
#ifdef USE_OPENGLES
_DriverGLStates.setTexGenMode (1, GL_REFLECTION_MAP_OES);
#else
_DriverGLStates.setTexGenMode (1, GL_REFLECTION_MAP_ARB);
#endif
// setup the good matrix for stage 1.
glMatrixMode(GL_TEXTURE);

@ -94,6 +94,7 @@ void CDriverGLStates::forceDefaults(uint nbStages)
_CurLighting= false;
_CurZWrite= true;
_CurStencilTest=false;
_CurMultisample= false;
// setup GLStates.
glDisable(GL_FOG);
@ -102,6 +103,7 @@ void CDriverGLStates::forceDefaults(uint nbStages)
glDisable(GL_ALPHA_TEST);
glDisable(GL_LIGHTING);
glDepthMask(GL_TRUE);
glDisable(GL_MULTISAMPLE_ARB);
// Func.
_CurBlendSrc= GL_SRC_ALPHA;
@ -163,11 +165,9 @@ void CDriverGLStates::forceDefaults(uint nbStages)
if(_TextureCubeMapSupported)
{
glDisable(GL_TEXTURE_CUBE_MAP_ARB);
#ifdef USE_OPENGLES
glDisable(GL_TEXTURE_CUBE_MAP_OES);
glDisable(GL_TEXTURE_GEN_STR_OES);
#else
glDisable(GL_TEXTURE_CUBE_MAP_ARB);
#endif
}
@ -379,6 +379,26 @@ void CDriverGLStates::enableStencilTest(bool enable)
}
}
// ***************************************************************************
void CDriverGLStates::enableMultisample(bool enable)
{
H_AUTO_OGL(CDriverGLStates_enableMultisample);
// If different from current setup, update.
#ifndef NL3D_GLSTATE_DISABLE_CACHE
if( enable != _CurMultisample )
#endif
{
// new state.
_CurMultisample= enable;
// Setup GLState.
if(_CurMultisample)
glEnable(GL_MULTISAMPLE_ARB);
else
glDisable(GL_MULTISAMPLE_ARB);
}
}
// ***************************************************************************
void CDriverGLStates::blendFunc(GLenum src, GLenum dst)
@ -665,7 +685,7 @@ void CDriverGLStates::setTexGenMode (uint stage, GLint mode)
else
{
#ifdef USE_OPENGLES
// nglTexGeniOES(GL_TEXTURE_GEN_STR_OES, GL_TEXTURE_GEN_MODE_OES, mode);
nglTexGeniOES(GL_TEXTURE_GEN_STR_OES, GL_TEXTURE_GEN_MODE_OES, mode);
#else
glTexGeni( GL_S, GL_TEXTURE_GEN_MODE, mode);
glTexGeni( GL_T, GL_TEXTURE_GEN_MODE, mode);
@ -681,8 +701,8 @@ void CDriverGLStates::setTexGenMode (uint stage, GLint mode)
#ifdef USE_OPENGLES
// if(mode==GL_OBJECT_LINEAR || mode==GL_EYE_LINEAR)
// {
nglTexGeniOES(GL_TEXTURE_GEN_STR_OES, GL_TEXTURE_GEN_MODE_OES, mode);
glEnable(GL_TEXTURE_GEN_STR_OES);
// nglTexGeniOES(GL_TEXTURE_GEN_STR_OES, GL_TEXTURE_GEN_MODE_OES, mode);
// glEnable(GL_TEXTURE_GEN_STR_OES);
// }
// else
// {
@ -721,11 +741,7 @@ void CDriverGLStates::resetTextureMode()
if (_TextureCubeMapSupported)
{
#ifdef USE_OPENGLES
glDisable(GL_TEXTURE_CUBE_MAP_OES);
#else
glDisable(GL_TEXTURE_CUBE_MAP_ARB);
#endif
}
#ifndef USE_OPENGLES
@ -768,11 +784,7 @@ void CDriverGLStates::setTextureMode(TTextureMode texMode)
{
if(_TextureCubeMapSupported)
{
#ifdef USE_OPENGLES
glDisable(GL_TEXTURE_CUBE_MAP_OES);
#else
glDisable(GL_TEXTURE_CUBE_MAP_ARB);
#endif
}
else
{
@ -802,11 +814,7 @@ void CDriverGLStates::setTextureMode(TTextureMode texMode)
{
if(_TextureCubeMapSupported)
{
#ifdef USE_OPENGLES
glEnable(GL_TEXTURE_CUBE_MAP_OES);
#else
glEnable(GL_TEXTURE_CUBE_MAP_ARB);
#endif
}
else
{
@ -851,11 +859,11 @@ void CDriverGLStates::forceActiveTextureARB(uint stage)
_CurrentActiveTextureARB= stage;
}
// ***************************************************************************
void CDriverGLStates::enableVertexArray(bool enable)
{
H_AUTO_OGL(CDriverGLStates_enableVertexArray)
H_AUTO_OGL(CDriverGLStates_enableVertexArray);
if(_VertexArrayEnabled != enable)
{
if(enable)
@ -1017,7 +1025,7 @@ void CDriverGLStates::enableVertexAttribArrayARB(uint glIndex,bool enable)
// ***************************************************************************
void CDriverGLStates::enableVertexAttribArrayForEXTVertexShader(uint glIndex, bool enable, uint *variants)
{
H_AUTO_OGL(CDriverGLStates_enableVertexAttribArrayForEXTVertexShader)
H_AUTO_OGL(CDriverGLStates_enableVertexAttribArrayForEXTVertexShader);
if(_VertexAttribArrayEnabled[glIndex] != enable)
{

@ -44,6 +44,7 @@ namespace NLDRIVERGL {
- GL_TEXTURE_GEN_S, GL_TEXTURE_GEN_T, GL_TEXTURE_GEN_R
- GL_COLOR_MATERIAL
- GL_FOG
- GL_MULTISAMPLE_ARB
- glActiveTextureARB()
- glClientActiveTextureARB()
- glEnableClientState() glDisableClientState() with:
@ -99,6 +100,9 @@ public:
/// enable/disable stencil test
void enableStencilTest(bool enable);
bool isStencilTestEnabled() const { return _CurStencilTest; }
/// enable/disable multisample
void enableMultisample(bool enable);
bool isMultisampleEnabled() const { return _CurMultisample; }
// @}
/// glBlendFunc.
@ -197,6 +201,7 @@ private:
bool _CurLighting;
bool _CurZWrite;
bool _CurStencilTest;
bool _CurMultisample;
GLenum _CurBlendSrc;
GLenum _CurBlendDst;

@ -781,11 +781,7 @@ void CDriverGL::bindTextureWithMode(ITexture &tex)
{
_DriverGLStates.setTextureMode(CDriverGLStates::TextureCubeMap);
// Bind this texture
#ifdef USE_OPENGLES
glBindTexture(GL_TEXTURE_CUBE_MAP_OES, gltext->ID);
#else
glBindTexture(GL_TEXTURE_CUBE_MAP_ARB, gltext->ID);
#endif
}
}
else
@ -820,19 +816,16 @@ void CDriverGL::setupTextureBasicParameters(ITexture &tex)
{
if (_Extensions.ARBTextureCubeMap)
{
#ifdef USE_OPENGLES
glTexParameteri(GL_TEXTURE_CUBE_MAP_OES,GL_TEXTURE_WRAP_S, translateWrapToGl(ITexture::Clamp, _Extensions));
glTexParameteri(GL_TEXTURE_CUBE_MAP_OES,GL_TEXTURE_WRAP_T, translateWrapToGl(ITexture::Clamp, _Extensions));
// glTexParameteri(GL_TEXTURE_CUBE_MAP_OES,GL_TEXTURE_WRAP_R, translateWrapToGl(ITexture::Clamp, _Extensions));
glTexParameteri(GL_TEXTURE_CUBE_MAP_OES,GL_TEXTURE_MAG_FILTER, translateMagFilterToGl(gltext));
glTexParameteri(GL_TEXTURE_CUBE_MAP_OES,GL_TEXTURE_MIN_FILTER, translateMinFilterToGl(gltext));
#else
glTexParameteri(GL_TEXTURE_CUBE_MAP_ARB,GL_TEXTURE_WRAP_S, translateWrapToGl(ITexture::Clamp, _Extensions));
glTexParameteri(GL_TEXTURE_CUBE_MAP_ARB,GL_TEXTURE_WRAP_T, translateWrapToGl(ITexture::Clamp, _Extensions));
#ifndef USE_OPENGLES
glTexParameteri(GL_TEXTURE_CUBE_MAP_ARB,GL_TEXTURE_WRAP_R, translateWrapToGl(ITexture::Clamp, _Extensions));
#endif
glTexParameteri(GL_TEXTURE_CUBE_MAP_ARB,GL_TEXTURE_MAG_FILTER, translateMagFilterToGl(gltext));
glTexParameteri(GL_TEXTURE_CUBE_MAP_ARB,GL_TEXTURE_MIN_FILTER, translateMinFilterToGl(gltext));
#endif
if (_AnisotropicFilter > 1.f && gltext->MinFilter > ITexture::NearestMipMapLinear)
glTexParameteri(GL_TEXTURE_CUBE_MAP_ARB, GL_TEXTURE_MAX_ANISOTROPY_EXT, _AnisotropicFilter);
}
}
else
@ -841,6 +834,9 @@ void CDriverGL::setupTextureBasicParameters(ITexture &tex)
glTexParameteri(gltext->TextureMode,GL_TEXTURE_WRAP_T, translateWrapToGl(gltext->WrapT, _Extensions));
glTexParameteri(gltext->TextureMode,GL_TEXTURE_MAG_FILTER, translateMagFilterToGl(gltext));
glTexParameteri(gltext->TextureMode,GL_TEXTURE_MIN_FILTER, translateMinFilterToGl(gltext));
if (_AnisotropicFilter > 1.f && gltext->MinFilter > ITexture::NearestMipMapLinear)
glTexParameteri(gltext->TextureMode, GL_TEXTURE_MAX_ANISOTROPY_EXT, _AnisotropicFilter);
}
//
tex.clearFilterOrWrapModeTouched();
@ -1516,31 +1512,19 @@ bool CDriverGL::activateTexture(uint stage, ITexture *tex)
_CurrentTextureInfoGL[stage]= gltext;
// setup this texture
#ifdef USE_OPENGLES
glBindTexture(GL_TEXTURE_CUBE_MAP_OES, gltext->ID);
#else
glBindTexture(GL_TEXTURE_CUBE_MAP_ARB, gltext->ID);
#endif
// Change parameters of texture, if necessary.
//============================================
if(gltext->MagFilter!= tex->getMagFilter())
{
gltext->MagFilter= tex->getMagFilter();
#ifdef USE_OPENGLES
glTexParameteri(GL_TEXTURE_CUBE_MAP_OES,GL_TEXTURE_MAG_FILTER, translateMagFilterToGl(gltext));
#else
glTexParameteri(GL_TEXTURE_CUBE_MAP_ARB,GL_TEXTURE_MAG_FILTER, translateMagFilterToGl(gltext));
#endif
}
if(gltext->MinFilter!= tex->getMinFilter())
{
gltext->MinFilter= tex->getMinFilter();
#ifdef USE_OPENGLES
glTexParameteri(GL_TEXTURE_CUBE_MAP_OES,GL_TEXTURE_MIN_FILTER, translateMinFilterToGl(gltext));
#else
glTexParameteri(GL_TEXTURE_CUBE_MAP_ARB,GL_TEXTURE_MIN_FILTER, translateMinFilterToGl(gltext));
#endif
}
}
}
@ -1617,34 +1601,16 @@ bool CDriverGL::activateTexture(uint stage, ITexture *tex)
// This maps the CMaterial::TTexOperator
static const GLenum OperatorLUT[9]= { GL_REPLACE, GL_MODULATE, GL_ADD,
#ifdef USE_OPENGLES
GL_ADD_SIGNED, GL_INTERPOLATE, GL_INTERPOLATE, GL_INTERPOLATE, GL_INTERPOLATE, GL_INTERPOLATE
#else
GL_ADD_SIGNED_EXT, GL_INTERPOLATE_EXT, GL_INTERPOLATE_EXT, GL_INTERPOLATE_EXT, GL_INTERPOLATE_EXT, GL_BUMP_ENVMAP_ATI
#endif
};
static const GLenum OperatorLUT[9]= { GL_REPLACE, GL_MODULATE, GL_ADD, GL_ADD_SIGNED_EXT, GL_INTERPOLATE_EXT, GL_INTERPOLATE_EXT, GL_INTERPOLATE_EXT, GL_INTERPOLATE_EXT, GL_BUMP_ENVMAP_ATI };
// This maps the CMaterial::TTexSource
static const GLenum SourceLUT[4]= { GL_TEXTURE,
#ifdef USE_OPENGLES
GL_PREVIOUS, GL_PRIMARY_COLOR, GL_CONSTANT
#else
GL_PREVIOUS_EXT, GL_PRIMARY_COLOR_EXT, GL_CONSTANT_EXT
#endif
};
static const GLenum SourceLUT[4]= { GL_TEXTURE, GL_PREVIOUS_EXT, GL_PRIMARY_COLOR_EXT, GL_CONSTANT_EXT };
// This maps the CMaterial::TTexOperand
static const GLenum OperandLUT[4]= { GL_SRC_COLOR, GL_ONE_MINUS_SRC_COLOR, GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA };
// This maps the CMaterial::TTexOperator, used for openGL Arg2 setup.
static const GLenum InterpolateSrcLUT[8]= { GL_TEXTURE, GL_TEXTURE, GL_TEXTURE, GL_TEXTURE, GL_TEXTURE,
#ifdef USE_OPENGLES
GL_PREVIOUS, GL_PRIMARY_COLOR, GL_CONSTANT
#else
GL_PREVIOUS_EXT, GL_PRIMARY_COLOR_EXT, GL_CONSTANT_EXT
#endif
};
static const GLenum InterpolateSrcLUT[8]= { GL_TEXTURE, GL_TEXTURE, GL_TEXTURE, GL_TEXTURE, GL_TEXTURE, GL_PREVIOUS_EXT, GL_PRIMARY_COLOR_EXT, GL_CONSTANT_EXT };
#ifndef USE_OPENGLES
@ -2224,6 +2190,25 @@ void CDriverGL::forceDXTCCompression(bool dxtcComp)
_ForceDXTCCompression= dxtcComp;
}
// ***************************************************************************
void CDriverGL::setAnisotropicFilter(sint filtering)
{
H_AUTO_OGL(CDriverGL_setAnisotropicFiltering);
if (!_Extensions.EXTTextureFilterAnisotropic) return;
if (filtering < 0 || filtering > _Extensions.EXTTextureFilterAnisotropicMaximum)
{
// set maximum value for anisotropic filter
_AnisotropicFilter = _Extensions.EXTTextureFilterAnisotropicMaximum;
}
else
{
// set specified value for anisotropic filter
_AnisotropicFilter = filtering;
}
}
// ***************************************************************************
void CDriverGL::forceTextureResize(uint divisor)
{

@ -1542,7 +1542,7 @@ void CVertexBufferHardARB::unlock()
#ifdef NL_DEBUG
_Unmapping = true;
#endif
GLboolean unmapOk = false;
GLboolean unmapOk = GL_FALSE;
#ifdef USE_OPENGLES
if (_Driver->_Extensions.OESMapBuffer)
@ -1671,3 +1671,4 @@ void CVertexBufferHardARB::invalidate()
#endif
} // NL3D

@ -1469,12 +1469,21 @@ UDriver::TPolygonMode CDriverUser::getPolygonMode ()
return umode;
}
void CDriverUser::forceDXTCCompression(bool dxtcComp)
{
NL3D_HAUTO_UI_DRIVER;
_Driver->forceDXTCCompression(dxtcComp);
}
void CDriverUser::setAnisotropicFilter(sint filter)
{
NL3D_HAUTO_UI_DRIVER;
_Driver->setAnisotropicFilter(filter);
}
void CDriverUser::forceTextureResize(uint divisor)
{
NL3D_HAUTO_UI_DRIVER;

@ -25,7 +25,6 @@
#include "nel/georges/form.h"
#include "nel/georges/form_elm.h"
#include "nel/georges/form_loader.h"
#include "nel/georges/type.h"
using namespace NLMISC;

@ -53,6 +53,8 @@
# include <errno.h>
#endif
#define NL_NO_DEBUG_FILES 1
using namespace std;
// If you don't want to add default displayer, put 0 instead of 1. In this case, you

@ -29,6 +29,8 @@
# include <winuser.h>
#endif // NL_OS_WINDOWS
#define NL_NO_DEBUG_FILES 1
using namespace std;
namespace NLMISC

@ -15,11 +15,11 @@
// along with this program. If not, see <http://www.gnu.org/licenses/>.
#include "stdpacs.h"
#include "build_indoor.h"
#include "nel/pacs/build_indoor.h"
#include "collision_mesh_build.h"
#include "local_retriever.h"
#include "exterior_mesh.h"
#include "nel/pacs/collision_mesh_build.h"
#include "nel/pacs/local_retriever.h"
#include "nel/pacs/exterior_mesh.h"
using namespace std;
using namespace NLMISC;

@ -16,7 +16,7 @@
#include "stdpacs.h"
#include "chain.h"
#include "nel/pacs/chain.h"
using namespace std;
using namespace NLMISC;

@ -16,7 +16,7 @@
#include "stdpacs.h"
#include "chain_quad.h"
#include "nel/pacs/chain_quad.h"
using namespace std;
using namespace NLMISC;

@ -16,7 +16,7 @@
#include "stdpacs.h"
#include "collision_callback.h"
#include "nel/pacs/collision_callback.h"
namespace NLPACS

@ -16,7 +16,7 @@
#include "stdpacs.h"
#include "collision_desc.h"
#include "nel/pacs/collision_desc.h"
namespace NLPACS

@ -16,8 +16,8 @@
#include "stdpacs.h"
#include "collision_ot.h"
#include "move_primitive.h"
#include "nel/pacs/collision_ot.h"
#include "nel/pacs/move_primitive.h"
namespace NLPACS

@ -16,7 +16,7 @@
#include "stdpacs.h"
#include "collision_surface_temp.h"
#include "nel/pacs/collision_surface_temp.h"
namespace NLPACS

@ -16,7 +16,7 @@
#include "stdpacs.h"
#include "edge_collide.h"
#include "nel/pacs/edge_collide.h"
using namespace NLMISC;
using namespace std;

@ -16,8 +16,8 @@
#include "stdpacs.h"
#include "edge_quad.h"
#include "global_retriever.h"
#include "nel/pacs/edge_quad.h"
#include "nel/pacs/global_retriever.h"
using namespace std;
using namespace NLMISC;

@ -16,9 +16,9 @@
#include "stdpacs.h"
#include "exterior_mesh.h"
#include "local_retriever.h"
#include "collision_desc.h"
#include "nel/pacs/exterior_mesh.h"
#include "nel/pacs/local_retriever.h"
#include "nel/pacs/collision_desc.h"
using namespace std;

@ -16,8 +16,8 @@
#include "stdpacs.h"
#include "global_retriever.h"
#include "retriever_bank.h"
#include "nel/pacs/global_retriever.h"
#include "nel/pacs/retriever_bank.h"
#include "nel/misc/async_file_manager.h"
#include "nel/misc/common.h"

@ -18,9 +18,9 @@
#include "nel/misc/plane.h"
#include "local_retriever.h"
#include "collision_desc.h"
#include "retriever_instance.h"
#include "nel/pacs/local_retriever.h"
#include "nel/pacs/collision_desc.h"
#include "nel/pacs/retriever_instance.h"
#include "nel/misc/hierarchical_timer.h"

@ -16,9 +16,9 @@
#include "stdpacs.h"
#include "move_cell.h"
#include "move_element.h"
#include "move_primitive.h"
#include "nel/pacs/move_cell.h"
#include "nel/pacs/move_element.h"
#include "nel/pacs/move_primitive.h"
namespace NLPACS
{

@ -16,9 +16,9 @@
#include "stdpacs.h"
#include "move_primitive.h"
#include "move_element.h"
#include "primitive_block.h"
#include "nel/pacs/move_primitive.h"
#include "nel/pacs/move_element.h"
#include "nel/pacs/primitive_block.h"
#include "nel/misc/hierarchical_timer.h"

@ -16,8 +16,8 @@
#include "stdpacs.h"
#include "move_element.h"
#include "move_element_inline.h"
#include "nel/pacs/move_element.h"
#include "nel/pacs/move_element_inline.h"
// leave not static else this workaround don't work

@ -16,9 +16,9 @@
#include "stdpacs.h"
#include "move_primitive.h"
#include "collision_desc.h"
#include "move_element.h"
#include "nel/pacs/move_primitive.h"
#include "nel/pacs/collision_desc.h"
#include "nel/pacs/move_element.h"
#include "nel/misc/hierarchical_timer.h"
using namespace NLMISC;

@ -16,7 +16,7 @@
#include "stdpacs.h"
#include "nel/misc/i_xml.h"
#include "primitive_block.h"
#include "nel/pacs/primitive_block.h"
namespace NLPACS

@ -18,9 +18,9 @@
#include "nel/misc/hierarchical_timer.h"
#include "primitive_world_image.h"
#include "move_primitive.h"
#include "move_element.h"
#include "nel/pacs/primitive_world_image.h"
#include "nel/pacs/move_primitive.h"
#include "nel/pacs/move_element.h"
using namespace NLMISC;

@ -16,7 +16,7 @@
#include "stdpacs.h"
#include "retrievable_surface.h"
#include "nel/pacs/retrievable_surface.h"
using namespace std;
using namespace NLMISC;

@ -20,7 +20,7 @@
#include "nel/misc/path.h"
#include "nel/misc/progress_callback.h"
#include "retriever_bank.h"
#include "nel/pacs/retriever_bank.h"
using namespace std;
using namespace NLMISC;

@ -16,8 +16,8 @@
#include "stdpacs.h"
#include "retriever_instance.h"
#include "global_retriever.h"
#include "nel/pacs/retriever_instance.h"
#include "nel/pacs/global_retriever.h"
using namespace std;
using namespace NLMISC;

@ -15,7 +15,7 @@
// along with this program. If not, see <http://www.gnu.org/licenses/>.
#include "stdpacs.h"
#include "surface_quad.h"
#include "nel/pacs/surface_quad.h"
#include "nel/misc/file.h"

@ -16,7 +16,7 @@
#include "stdpacs.h"
#include "vector_2s.h"
#include "nel/pacs/vector_2s.h"
namespace NLPACS {

@ -1,4 +1,3 @@
FILE(GLOB SRC *.cpp *.h)
FILE(GLOB HEADERS ../../include/nel/sound/*.h)

@ -35,7 +35,6 @@
#include "nel/sound/driver/buffer.h"
#include "nel/sound/driver/effect.h"
#include "nel/sound/background_sound_manager.h"
#include "nel/sound/background_sound_manager.h"
#include "nel/sound/music_sound_manager.h"
#include "nel/sound/background_source.h"

@ -16,7 +16,6 @@
#include "stdsound.h"
#include "nel/sound/background_sound_manager.h"
#include "nel/sound/background_source.h"
using namespace std;

@ -17,7 +17,7 @@
#ifndef NL_BUFFER_DSOUND_H
#define NL_BUFFER_DSOUND_H
#include <nel/sound/driver/buffer.h>
#include "nel/sound/driver/buffer.h"
namespace NLSOUND {

@ -17,7 +17,7 @@
#ifndef NL_LISTENER_DSOUND_H
#define NL_LISTENER_DSOUND_H
#include <nel/sound/driver/listener.h>
#include "nel/sound/driver/listener.h"
namespace NLSOUND {

@ -17,7 +17,7 @@
#ifndef NL_SOUND_DRIVER_DSOUND_H
#define NL_SOUND_DRIVER_DSOUND_H
#include <nel/sound/driver/sound_driver.h>
#include "nel/sound/driver/sound_driver.h"
#include "source_dsound.h"
#include "buffer_dsound.h"

@ -616,7 +616,6 @@ void CSourceDSound::fadeOut(const TLockedBufferInfo &lbi)
ptr = lbi.Ptr2;
count = lbi.Size2/2;
while (fade && count)
{
alpha = (fade<<16) / _XFadeSize;

@ -17,9 +17,9 @@
#ifndef NL_SOURCE_DSOUND_H
#define NL_SOURCE_DSOUND_H
#include <nel/sound/driver/source.h>
#include <nel/sound/driver/sound_driver.h>
#include <nel/sound/driver/buffer.h>
#include "nel/sound/driver/source.h"
#include "nel/sound/driver/sound_driver.h"
#include "nel/sound/driver/buffer.h"
namespace NLSOUND {

@ -18,7 +18,7 @@
#define NL_BUFFER_FMOD_H
#include <nel/sound/driver/buffer.h>
#include "nel/sound/driver/buffer.h"
namespace NLSOUND {

@ -17,7 +17,7 @@
#ifndef NL_MUSIC_CHANNEL_FMOD_H
#define NL_MUSIC_CHANNEL_FMOD_H
#include <nel/sound/driver/music_channel.h>
#include "nel/sound/driver/music_channel.h"
struct FSOUND_STREAM;

@ -17,7 +17,7 @@
#ifndef NL_SOUND_DRIVER_FMOD_H
#define NL_SOUND_DRIVER_FMOD_H
#include <nel/sound/driver/sound_driver.h>
#include "nel/sound/driver/sound_driver.h"
namespace NLSOUND {
class IListener;

@ -17,9 +17,9 @@
#ifndef NL_SOURCE_FMOD_H
#define NL_SOURCE_FMOD_H
#include <nel/sound/driver/source.h>
#include <nel/sound/driver/sound_driver.h>
#include <nel/sound/driver/buffer.h>
#include "nel/sound/driver/source.h"
#include "nel/sound/driver/sound_driver.h"
#include "nel/sound/driver/buffer.h"
namespace NLSOUND {
class CBufferFMod;

@ -24,22 +24,22 @@
#include <cmath>
#include <limits>
#include <nel/misc/common.h>
#include <nel/misc/time_nl.h>
#include <nel/misc/singleton.h>
#include <nel/misc/fast_mem.h>
#include <nel/misc/debug.h>
#include <nel/misc/vector.h>
#include <nel/misc/path.h>
#include <nel/misc/file.h>
#include <nel/misc/matrix.h>
#include <nel/misc/big_file.h>
#include <nel/misc/hierarchical_timer.h>
#include <nel/misc/dynloadlib.h>
#include "nel/misc/common.h"
#include "nel/misc/time_nl.h"
#include "nel/misc/singleton.h"
#include "nel/misc/fast_mem.h"
#include "nel/misc/debug.h"
#include "nel/misc/vector.h"
#include "nel/misc/path.h"
#include "nel/misc/file.h"
#include "nel/misc/matrix.h"
#include "nel/misc/big_file.h"
#include "nel/misc/hierarchical_timer.h"
#include "nel/misc/dynloadlib.h"
#include <nel/sound/driver/sound_driver.h>
#include <nel/sound/driver/buffer.h>
#include <nel/sound/driver/source.h>
#include <nel/sound/driver/listener.h>
#include "nel/sound/driver/sound_driver.h"
#include "nel/sound/driver/buffer.h"
#include "nel/sound/driver/source.h"
#include "nel/sound/driver/listener.h"
/* end of file */

@ -17,7 +17,7 @@
#ifndef NL_BUFFER_AL_H
#define NL_BUFFER_AL_H
#include <nel/sound/driver/buffer.h>
#include "nel/sound/driver/buffer.h"
namespace NLSOUND
{

@ -17,7 +17,7 @@
#ifndef NL_SOUND_DRIVER_AL_H
#define NL_SOUND_DRIVER_AL_H
#include <nel/sound/driver/sound_driver.h>
#include "nel/sound/driver/sound_driver.h"
namespace NLSOUND {
class CBufferAL;
@ -126,7 +126,7 @@ public:
virtual void startBench();
virtual void endBench();
virtual void displayBench(NLMISC::CLog * /* log */);
virtual void displayBench(NLMISC::CLog *log);
/// Change the rolloff factor and apply to all sources
@ -136,7 +136,7 @@ public:
virtual void commit3DChanges();
/// Write information about the driver to the output stream.
virtual void writeProfile(std::string& /* out */);
virtual void writeProfile(std::string& out);
/// Remove a buffer
void removeBuffer(CBufferAL *buffer);

@ -17,7 +17,7 @@
#ifndef NL_SOURCE_AL_H
#define NL_SOURCE_AL_H
#include <nel/sound/driver/source.h>
#include "nel/sound/driver/source.h"
namespace NLSOUND {
class IBuffer;

@ -17,7 +17,7 @@
#ifndef NLSOUND_ADPCM_XAUDIO2_H
#define NLSOUND_ADPCM_XAUDIO2_H
#include <nel/sound/driver/buffer.h>
#include "nel/sound/driver/buffer.h"
namespace NLSOUND {
class CBufferXAudio2;

@ -17,7 +17,7 @@
#ifndef NLSOUND_BUFFER_XAUDIO2_H
#define NLSOUND_BUFFER_XAUDIO2_H
#include <nel/sound/driver/buffer.h>
#include "nel/sound/driver/buffer.h"
namespace NLSOUND {
class CSoundDriverXAudio2;

@ -17,8 +17,8 @@
#ifndef NLSOUND_LISTENER_XAUDIO2_H
#define NLSOUND_LISTENER_XAUDIO2_H
#include <nel/sound/driver/listener.h>
#include <nel/sound/driver/sound_driver.h>
#include "nel/sound/driver/listener.h"
#include "nel/sound/driver/sound_driver.h"
namespace NLSOUND {
class CSoundDriverXAudio2;

@ -17,9 +17,9 @@
#ifndef NLSOUND_SOURCE_XAUDIO2_H
#define NLSOUND_SOURCE_XAUDIO2_H
#include <nel/sound/driver/source.h>
#include <nel/sound/driver/sound_driver.h>
#include <nel/sound/driver/buffer.h>
#include "nel/sound/driver/source.h"
#include "nel/sound/driver/sound_driver.h"
#include "nel/sound/driver/buffer.h"
namespace NLSOUND {
class CSoundDriverXAudio2;

@ -27,9 +27,9 @@
#include "nel/3d/shape.h"
#include "nel/3d/transform_shape.h"
#include "nel/3d/register_3d.h"
#include "../../../src/pacs/global_retriever.h"
#include "../../../src/pacs/local_retriever.h"
#include "../../../src/pacs/retriever_bank.h"
#include "nel/pacs/global_retriever.h"
#include "nel/pacs/local_retriever.h"
#include "nel/pacs/retriever_bank.h"
#include "../ig_lighter_lib/ig_lighter_lib.h"

@ -16,8 +16,8 @@
#include "ig_lighter_lib.h"
#include "nel/misc/path.h"
#include "nel/../../src/pacs/retriever_bank.h"
#include "nel/../../src/pacs/global_retriever.h"
#include "nel/pacs/retriever_bank.h"
#include "nel/pacs/global_retriever.h"
#include "nel/3d/scene_group.h"

@ -1,4 +1,4 @@
LIBRARY nelligoscapeutility.dlx
;LIBRARY nelligoscapeutility.dlx
EXPORTS
LibDescription @1
LibNumberClasses @2

Some files were not shown because too many files have changed in this diff Show More

Loading…
Cancel
Save