Commit 2c641594 authored by cutealien's avatar cutealien

Merge branch releases/1.8 revisions 5286:5301 into trunk:

 - Deprecate CMatrix4::transformBox
 - Fix CSceneCollisionManager::getPickedNodeBB which could sometimes miss collisions.
 - Get lights and renderTargetTexture tests working again on Windows 10


git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@5302 dfc29bdd-3216-0410-991c-e03cc46cb475
parent 39f9b8fa
...@@ -136,6 +136,9 @@ Changes in 1.9 (not yet released) ...@@ -136,6 +136,9 @@ Changes in 1.9 (not yet released)
-------------------------- --------------------------
Changes in 1.8.4 Changes in 1.8.4
- Update lights and renderTargetTexture tests to work with Windows 10 (can't have so tiny Windows anymore).
- Deprecate CMatrix4::transformBox as the result is no longer a boundingbox. Use CMatrix4::transformBoxEx instead (which has been available for a long time).
- Fix CSceneCollisionManager::getPickedNodeBB which could sometimes miss collisions.
- Add -U__STRICT_ANSI__ option to c::b project files to allow compiling with -std=c++11 and add an error when trying to compile with Irrlicht with __STRICT_ANSI__ - Add -U__STRICT_ANSI__ option to c::b project files to allow compiling with -std=c++11 and add an error when trying to compile with Irrlicht with __STRICT_ANSI__
- Update libpng to 1.6.21 - Update libpng to 1.6.21
- Update zlib to 1.2.8 - Update zlib to 1.2.8
......
...@@ -982,7 +982,7 @@ namespace video ...@@ -982,7 +982,7 @@ namespace video
\param color Color of the pixel to draw. */ \param color Color of the pixel to draw. */
virtual void drawPixel(u32 x, u32 y, const SColor& color) =0; virtual void drawPixel(u32 x, u32 y, const SColor& color) =0;
//! Draws a non filled concyclic regular 2d polyon. //! Draws a non filled concyclic regular 2d polygon.
/** This method can be used to draw circles, but also /** This method can be used to draw circles, but also
triangles, tetragons, pentagons, hexagons, heptagons, octagons, triangles, tetragons, pentagons, hexagons, heptagons, octagons,
enneagons, decagons, hendecagons, dodecagon, triskaidecagons, enneagons, decagons, hendecagons, dodecagon, triskaidecagons,
......
...@@ -1228,9 +1228,11 @@ namespace core ...@@ -1228,9 +1228,11 @@ namespace core
transformPlane( out ); transformPlane( out );
} }
//! Transforms a axis aligned bounding box //! Transforms the edge-points of a bounding box
//! Deprecated as it's usually not what people need (regards only 2 corners, but other corners might be outside the box after transformation)
//! Use transformBoxEx instead.
template <class T> template <class T>
inline void CMatrix4<T>::transformBox(core::aabbox3d<f32>& box) const _IRR_DEPRECATED_ inline void CMatrix4<T>::transformBox(core::aabbox3d<f32>& box) const
{ {
#if defined ( USE_MATRIX_TEST ) #if defined ( USE_MATRIX_TEST )
if (isIdentity()) if (isIdentity())
......
...@@ -937,7 +937,7 @@ void CNullDriver::drawPixel(u32 x, u32 y, const SColor & color) ...@@ -937,7 +937,7 @@ void CNullDriver::drawPixel(u32 x, u32 y, const SColor & color)
} }
//! Draws a non filled concyclic regular 2d polyon. //! Draws a non filled concyclic regular 2d polygon.
void CNullDriver::draw2DPolygon(core::position2d<s32> center, void CNullDriver::draw2DPolygon(core::position2d<s32> center,
f32 radius, video::SColor color, s32 count) f32 radius, video::SColor color, s32 count)
{ {
......
...@@ -219,7 +219,7 @@ namespace video ...@@ -219,7 +219,7 @@ namespace video
//! Draws a pixel //! Draws a pixel
virtual void drawPixel(u32 x, u32 y, const SColor & color) _IRR_OVERRIDE_; virtual void drawPixel(u32 x, u32 y, const SColor & color) _IRR_OVERRIDE_;
//! Draws a non filled concyclic reqular 2d polyon. //! Draws a non filled concyclic reqular 2d polygon.
virtual void draw2DPolygon(core::position2d<s32> center, virtual void draw2DPolygon(core::position2d<s32> center,
f32 radius, video::SColor Color, s32 vertexCount) _IRR_OVERRIDE_; f32 radius, video::SColor Color, s32 vertexCount) _IRR_OVERRIDE_;
...@@ -702,13 +702,13 @@ namespace video ...@@ -702,13 +702,13 @@ namespace video
//! normal map lookup 32 bit version //! normal map lookup 32 bit version
inline f32 nml32(int x, int y, int pitch, int height, s32 *p) const inline f32 nml32(int x, int y, int pitch, int height, s32 *p) const
{ {
if (x < 0) if (x < 0)
x = pitch-1; x = pitch-1;
if (x >= pitch) if (x >= pitch)
x = 0; x = 0;
if (y < 0) if (y < 0)
y = height-1; y = height-1;
if (y >= height) if (y >= height)
y = 0; y = 0;
return (f32)(((p[(y * pitch) + x])>>16) & 0xff); return (f32)(((p[(y * pitch) + x])>>16) & 0xff);
} }
...@@ -716,13 +716,13 @@ namespace video ...@@ -716,13 +716,13 @@ namespace video
//! normal map lookup 16 bit version //! normal map lookup 16 bit version
inline f32 nml16(int x, int y, int pitch, int height, s16 *p) const inline f32 nml16(int x, int y, int pitch, int height, s16 *p) const
{ {
if (x < 0) if (x < 0)
x = pitch-1; x = pitch-1;
if (x >= pitch) if (x >= pitch)
x = 0; x = 0;
if (y < 0) if (y < 0)
y = height-1; y = height-1;
if (y >= height) if (y >= height)
y = 0; y = 0;
return (f32) getAverage ( p[(y * pitch) + x] ); return (f32) getAverage ( p[(y * pitch) + x] );
......
...@@ -134,7 +134,7 @@ void CSceneCollisionManager::getPickedNodeBB(ISceneNode* root, ...@@ -134,7 +134,7 @@ void CSceneCollisionManager::getPickedNodeBB(ISceneNode* root,
// Now transform into world space, since we need to use world space // Now transform into world space, since we need to use world space
// scales and distances. // scales and distances.
core::aabbox3df worldBox(objectBox); core::aabbox3df worldBox(objectBox);
current->getAbsoluteTransformation().transformBox(worldBox); current->getAbsoluteTransformation().transformBoxEx(worldBox);
core::vector3df edges[8]; core::vector3df edges[8];
worldBox.getEdges(edges); worldBox.getEdges(edges);
......
...@@ -7,7 +7,7 @@ using namespace irr; ...@@ -7,7 +7,7 @@ using namespace irr;
static bool testLightTypes(video::E_DRIVER_TYPE driverType) static bool testLightTypes(video::E_DRIVER_TYPE driverType)
{ {
IrrlichtDevice *device = createDevice (driverType, core::dimension2d<u32>(128,128)); IrrlichtDevice *device = createDevice (driverType, core::dimension2d<u32>(256,128));
if (!device) if (!device)
return true; // No error if device does not exist return true; // No error if device does not exist
......
tests/media/Burning's Video-lightType.png

921 Bytes | W: | H:

tests/media/Burning's Video-lightType.png

1.54 KB | W: | H:

tests/media/Burning's Video-lightType.png
tests/media/Burning's Video-lightType.png
tests/media/Burning's Video-lightType.png
tests/media/Burning's Video-lightType.png
  • 2-up
  • Swipe
  • Onion skin
tests/media/Direct3D 9.0-lightType.png

1.81 KB | W: | H:

tests/media/Direct3D 9.0-lightType.png

2.68 KB | W: | H:

tests/media/Direct3D 9.0-lightType.png
tests/media/Direct3D 9.0-lightType.png
tests/media/Direct3D 9.0-lightType.png
tests/media/Direct3D 9.0-lightType.png
  • 2-up
  • Swipe
  • Onion skin
tests/media/OpenGL-lightType.png

3.21 KB | W: | H:

tests/media/OpenGL-lightType.png

5.4 KB | W: | H:

tests/media/OpenGL-lightType.png
tests/media/OpenGL-lightType.png
tests/media/OpenGL-lightType.png
tests/media/OpenGL-lightType.png
  • 2-up
  • Swipe
  • Onion skin
tests/media/OpenGL-rttWith2DImage.png

13.7 KB | W: | H:

tests/media/OpenGL-rttWith2DImage.png

14.2 KB | W: | H:

tests/media/OpenGL-rttWith2DImage.png
tests/media/OpenGL-rttWith2DImage.png
tests/media/OpenGL-rttWith2DImage.png
tests/media/OpenGL-rttWith2DImage.png
  • 2-up
  • Swipe
  • Onion skin
...@@ -9,7 +9,7 @@ using namespace irr; ...@@ -9,7 +9,7 @@ using namespace irr;
/** This test is very special in its setup, problematic situation was found by stefbuet. */ /** This test is very special in its setup, problematic situation was found by stefbuet. */
static bool testWith2DImage(video::E_DRIVER_TYPE driverType) static bool testWith2DImage(video::E_DRIVER_TYPE driverType)
{ {
IrrlichtDevice *device = createDevice(driverType, core::dimension2d<u32> (128, 128)); IrrlichtDevice *device = createDevice(driverType, core::dimension2d<u32> (256, 128));
if (!device) if (!device)
return true; // No error if device does not exist return true; // No error if device does not exist
...@@ -29,7 +29,7 @@ static bool testWith2DImage(video::E_DRIVER_TYPE driverType) ...@@ -29,7 +29,7 @@ static bool testWith2DImage(video::E_DRIVER_TYPE driverType)
logTestString("Testing driver %ls\n", driver->getName()); logTestString("Testing driver %ls\n", driver->getName());
video::ITexture *image = driver->getTexture ("../media/irrlichtlogo2.png"); video::ITexture *image = driver->getTexture ("../media/irrlichtlogo2.png");
video::ITexture *RTT_texture = driver->addRenderTargetTexture (core::dimension2d < u32 > (128, 128)); video::ITexture *RTT_texture = driver->addRenderTargetTexture (core::dimension2d < u32 > (256, 128));
smgr->addCameraSceneNode (0, core::vector3df (100, 100, 100), smgr->addCameraSceneNode (0, core::vector3df (100, 100, 100),
core::vector3df (0, 0, 0)); core::vector3df (0, 0, 0));
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment