Update to rrlicht 1.8 branch r4357.

git-svn-id: svn+ssh://svn.code.sf.net/p/supertuxkart/code/main/trunk@11853 178a84e3-b1eb-0310-8ba1-8eac791a3b58
This commit is contained in:
hikerstk 2012-11-02 01:34:43 +00:00
parent d48cffe06e
commit 7a953dff7d
8 changed files with 33 additions and 24 deletions

View File

@ -1,5 +1,7 @@
Changes in 1.8 (??.11.2012)
- Let sphere mesh use full opaque color, just as all the other ones do
- Gcc on Win32 (MinGW) now also works with the _w file access functions when compiled with _IRR_WCHAR_FILESYSTEM. (thx @ alexzk for reporting compile troubles)
- Fix a bunch of off-by one errors in irr::core::string in functions equals_substring_ignore_case, findFirst, findFirstChar, findNext, findLast, findLastChar, replace, remove and removeChars.

View File

@ -1 +1 @@
4350
4357

View File

@ -11,8 +11,8 @@
#define IRRLICHT_VERSION_REVISION 0
// This flag will be defined only in SVN, the official release code will have
// it undefined
#define IRRLICHT_VERSION_SVN -alpha
#define IRRLICHT_SDK_VERSION "1.8.0-alpha"
//#define IRRLICHT_VERSION_SVN -alpha
#define IRRLICHT_SDK_VERSION "1.8.0"
#include <stdio.h> // TODO: Although included elsewhere this is required at least for mingw

View File

@ -187,7 +187,7 @@
#include "vector2d.h"
#include "vector3d.h"
/*! \mainpage Irrlicht Engine 1.7 API documentation
/*! \mainpage Irrlicht Engine 1.8 API documentation
*
* <div align="center"><img src="logobig.png" ></div>
*

View File

@ -363,7 +363,7 @@ IMesh* CGeometryCreator::createSphereMesh(f32 radius, u32 polyCountX, u32 polyCo
buffer->Indices.reallocate((polyCountX * polyCountY) * 6);
const video::SColor clr(100, 255,255,255);
const video::SColor clr(255, 255,255,255);
u32 level = 0;

View File

@ -854,23 +854,21 @@ LRESULT CALLBACK WndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam)
case WM_ACTIVATE:
// we need to take care for screen changes, e.g. Alt-Tab
dev = getDeviceFromHWnd(hWnd);
if (dev)
if (dev && dev->isFullscreen())
{
if ((wParam&0xFF)==WA_INACTIVE)
{
if (dev->isFullscreen())
// If losing focus we minimize the app to show other one
ShowWindow(hWnd,SW_MINIMIZE);
// and switch back to default resolution
dev->switchToFullScreen(true);
}
else
{
if (dev->isFullscreen())
{
// Otherwise we retore the fullscreen Irrlicht app
SetForegroundWindow(hWnd);
ShowWindow(hWnd, SW_RESTORE);
}
// and set the fullscreen resolution again
dev->switchToFullScreen();
}
}
@ -928,6 +926,13 @@ CIrrDeviceWin32::CIrrDeviceWin32(const SIrrlichtCreationParameters& params)
// get handle to exe file
HINSTANCE hInstance = GetModuleHandle(0);
// Store original desktop mode.
memset(&DesktopMode, 0, sizeof(DesktopMode));
DesktopMode.dmSize = sizeof(DesktopMode);
EnumDisplaySettings(NULL, ENUM_CURRENT_SETTINGS, &DesktopMode);
// create the window if we need to and we do not use the null device
if (!CreationParams.WindowId && CreationParams.DriverType != video::EDT_NULL)
{
@ -1342,22 +1347,23 @@ bool CIrrDeviceWin32::switchToFullScreen(bool reset)
if (!CreationParams.Fullscreen)
return true;
DEVMODE dm;
memset(&dm, 0, sizeof(dm));
dm.dmSize = sizeof(dm);
// use default values from current setting
EnumDisplaySettings(NULL, ENUM_CURRENT_SETTINGS, &dm);
if (reset)
{
if (ChangedToFullScreen)
{
return (ChangeDisplaySettings(&dm,0)==DISP_CHANGE_SUCCESSFUL);
return (ChangeDisplaySettings(&DesktopMode,0)==DISP_CHANGE_SUCCESSFUL);
}
else
return true;
}
// use default values from current setting
DEVMODE dm;
memset(&dm, 0, sizeof(dm));
dm.dmSize = sizeof(dm);
EnumDisplaySettings(NULL, ENUM_CURRENT_SETTINGS, &dm);
dm.dmPelsWidth = CreationParams.WindowSize.Width;
dm.dmPelsHeight = CreationParams.WindowSize.Height;
dm.dmBitsPerPel = CreationParams.Bits;

View File

@ -395,6 +395,7 @@ namespace irr
bool Resized;
bool ExternalWindow;
CCursorControl* Win32CursorControl;
DEVMODE DesktopMode;
SJoystickWin32Control* JoyControl;
};

View File

@ -1,7 +1,7 @@
VERSION_MAJOR = 1
VERSION_MINOR = 8
VERSION_RELEASE = 0-SVN
# Irrlicht Engine 1.8.0-SVN
VERSION_RELEASE = 0
# Irrlicht Engine 1.8.0
# Makefile for Linux
#
# To use, just run: