Commit Graph

75 Commits

Author SHA1 Message Date
cutealien
bd2b44aa1c Add IGUIEnvironment::addToDeletionQueue to allow save removal of gui elements while iterating over them
Basically same as ISceneManager::addToDeletionQueue.

git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@6164 dfc29bdd-3216-0410-991c-e03cc46cb475
2020-12-09 16:26:25 +00:00
cutealien
0368c5b09d IGUIEnvironment::drawAll has now a parameter to allow disabling the automatic resize to driver screensize.
That makes it easier to use partial screens, while using automatic alignment. 
Default is still automatic resizing as before, thought it got changed a bit as it looked a bit strange.
Before it only set the lower-right corner, but compared to driver screensizes, so it behaved a bit strange
when the leftTop corner of the rootGuiElement was changed (different than when the rightBottom corner was set).
Could be the idea before was that only clipping matters.

git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@6163 dfc29bdd-3216-0410-991c-e03cc46cb475
2020-12-01 13:42:44 +00:00
cutealien
ba8de14e83 Avoid access allocation when CGUIContextMenu::setSubMenu receives a nullptr for menu.
git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@6162 dfc29bdd-3216-0410-991c-e03cc46cb475
2020-11-14 17:09:39 +00:00
cutealien
4cb289fc91 Code cleanup
Prefer static_cast to reinterpret_cast.
Declare variables later with init values to avoid having uninitialized variables around.

git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@6161 dfc29bdd-3216-0410-991c-e03cc46cb475
2020-11-14 16:56:16 +00:00
cutealien
7d679469b1 Avoid const cast
git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@6159 dfc29bdd-3216-0410-991c-e03cc46cb475
2020-11-14 16:00:33 +00:00
engineer_apple
1a19b84384 Burningsvideo 0.52 Linux Warnings
git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@6158 dfc29bdd-3216-0410-991c-e03cc46cb475
2020-11-10 20:42:20 +00:00
engineer_apple
0b4a0b2977 Burningsvideo 0.52 Linux Warnings
git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@6157 dfc29bdd-3216-0410-991c-e03cc46cb475
2020-11-10 20:39:59 +00:00
engineer_apple
1170f08dae Burningsvideo 0.52 Linux Warnings
git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@6156 dfc29bdd-3216-0410-991c-e03cc46cb475
2020-11-10 20:29:55 +00:00
engineer_apple
e21ef3d169 Burningsvideo 0.52 Linux Warnings
git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@6155 dfc29bdd-3216-0410-991c-e03cc46cb475
2020-11-10 19:06:45 +00:00
engineer_apple
5cb28ea357 Burningsvideo 0.52
- scissor for 2D
- downscaled internal rendertargets,interlaced drawing
- supertuxkart gui ok

git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@6154 dfc29bdd-3216-0410-991c-e03cc46cb475
2020-11-10 18:49:39 +00:00
cutealien
6805226b5b Add _IRR_OVERRIDE_ to cursor functions in CIrrDeviceOSX.h
Thx @ Maksym for reporting.


git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@6153 dfc29bdd-3216-0410-991c-e03cc46cb475
2020-11-05 20:22:03 +00:00
cutealien
7c0253dd82 Fixes for OSX compiling. Thanks @Maksym Hamarnyk.
Origin: 421b17f5d6


git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@6144 dfc29bdd-3216-0410-991c-e03cc46cb475
2020-10-28 17:53:24 +00:00
cutealien
6f7578b374 Fix member intialization order to avoid warning on gcc.
git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@6143 dfc29bdd-3216-0410-991c-e03cc46cb475
2020-10-26 19:55:38 +00:00
cutealien
91cb559caa Bugfix: FPS camera animator on X11 no longer tries grabbing mouse events.
Basically behavior about that is back to how it was in Irrlicht 1.8 - not perfect, but useable.
So window still jumps a bit when dragging toolbar, but no longer outside the sreen. And it's possible again to alt+tab to other windows.
The problem was caused by a combination of FPS camera changes and that we stopped doing mouse-coordinate clipping in the Linux device in r5593.
Basically that clipping had the side-effect that the fps-camera never considered a mouse "outside" on Linux.
Now on Linux we only update after we get a mouse-event (which we still get when the mouse is outside the window).
On Windows we still grab the mouse in the camera, thought that's likely _not_ the best way to do that. Windows has some mouse-grabbing support, 
and I suppose we could use that (or camera should check if that is used as it also can be set by users I think). So maybe in future this can be further improved.
Other operating systems (OSX) should behave like in 1.8 I hope, but as usual I can't test.

Also did a few minor cleanups in the camera.
- Back to using animateNode time instead of real-time. That's because that was not causing the problems I thought back then it might cause as time is only used for keyboard input and not mouse input.
- Moved updating CursorPos to the rest of the code checking CursorControl

Note: A future improvement would be to add support for systems without CursorControl object (could still use mouse-events to get it working usually).

git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@6142 dfc29bdd-3216-0410-991c-e03cc46cb475
2020-10-26 19:50:18 +00:00
engineer_apple
08ae93126c BurningVideo: update Test Cases
git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@6141 dfc29bdd-3216-0410-991c-e03cc46cb475
2020-10-25 15:06:10 +00:00
cutealien
bb9b047568 Use same CLANG_CXX_LANGUAGE_STANDARD flags in debug/release for XCode.
git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@6139 dfc29bdd-3216-0410-991c-e03cc46cb475
2020-09-20 15:31:48 +00:00
cutealien
f478272392 No longer try to set WM_QUIT when using an external Window on Win32.
Thx @Marko Mahnič for the patch (https://sourceforge.net/p/irrlicht/bugs/449)

git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@6135 dfc29bdd-3216-0410-991c-e03cc46cb475
2020-08-11 19:17:24 +00:00
cutealien
f0043ebc36 Tiny refactoring in ply mesh loader.
git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@6134 dfc29bdd-3216-0410-991c-e03cc46cb475
2020-07-22 22:30:25 +00:00
cutealien
a1b9e8c2ed ply meshloader now also supports textures with names texture_u/texture_v.
Thx @acy for bugreport and test-model (http://irrlicht.sourceforge.net/forum/viewtopic.php?f=4&t=52646)


git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@6133 dfc29bdd-3216-0410-991c-e03cc46cb475
2020-07-22 22:12:05 +00:00
cutealien
d7a1a35339 Fix MacOS 10.15 only rendering to quarter of window.
Thanks @bridgeco for the patch: http://irrlicht.sourceforge.net/forum/viewtopic.php?f=7&t=52644

git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@6132 dfc29bdd-3216-0410-991c-e03cc46cb475
2020-07-16 17:24:18 +00:00
cutealien
0073ef7cce Update XCode project to XCode 8.
Previously project file was at 3.2 which seems to no longer work with newer XCode versions.
Patch is from Maksym Hamarnyk, no testing from my side for this.


git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@6131 dfc29bdd-3216-0410-991c-e03cc46cb475
2020-06-27 14:51:54 +00:00
cutealien
54f5ac4982 Remove 'register' keyword in all c++ code.
It's never really done much in c++, was deprecated in c++11 and is reserved since c++17.
Thanks @Maksym Hamarnyk for remdinding me about this.
Note: there are few more register commands in third library .c code. It's still a valid keyword there.


git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@6130 dfc29bdd-3216-0410-991c-e03cc46cb475
2020-06-21 11:38:31 +00:00
cutealien
2c593614cb Fix another compile problem in COpenGLExtensionHandler when compiling older GL versions without extensions.
Thanks @Maksym Hamarnyk for reporting.


git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@6129 dfc29bdd-3216-0410-991c-e03cc46cb475
2020-06-21 11:26:40 +00:00
cutealien
340bc7fcbe Add some headers to xcode project file.
Thanks @Maksym Hamarnyk for patch.


git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@6127 dfc29bdd-3216-0410-991c-e03cc46cb475
2020-06-20 14:56:45 +00:00
cutealien
6d4dec4054 Compile fixed for COpenGLExtensionHandler compiled on older GL versions without extensions
Thanks @Maksym Hamarnyk for report and patch proposal.


git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@6126 dfc29bdd-3216-0410-991c-e03cc46cb475
2020-06-20 12:50:38 +00:00
cutealien
137c92779e Avoid compile problems on older OpenGL compiled without ext pointers.
Introduced in r5818. Might be part of the OSX compile troubles.


git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@6125 dfc29bdd-3216-0410-991c-e03cc46cb475
2020-06-19 17:51:23 +00:00
cutealien
ce3e4b0e6e Fix compile problem for older (<3.0) GL versions compiled without extensions.
git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@6124 dfc29bdd-3216-0410-991c-e03cc46cb475
2020-06-19 17:21:10 +00:00
cutealien
49d7850d1e Compile fixed for OSX.
Thanks @Maksym Hamarnyk for sending those.
Note: More patches are needed and I can only apply, not test, this.


git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@6123 dfc29bdd-3216-0410-991c-e03cc46cb475
2020-06-18 19:40:56 +00:00
cutealien
01a4f5d359 Fix CImage::copyToScaling bug introduced in r5994.
The change to the scaling code caused scaling to read outside of original image memory.
Was caused because scaling step factor was based on image-sizes, but has to be based on amount of scaling steps taking (off-by-one error).
Thanks @Maksym Hamarnyk for reporting that there was some problem.


git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@6121 dfc29bdd-3216-0410-991c-e03cc46cb475
2020-06-14 20:42:30 +00:00
cutealien
05fb5bc776 Fix compile-errors when compiling without _IRR_OPENGL_USE_EXTPOINTER_
Thanks @Maksym Hamarnyk for the patch.


git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@6119 dfc29bdd-3216-0410-991c-e03cc46cb475
2020-06-13 14:56:21 +00:00
cutealien
49b39e456d Fix potential reading/writing 1 byte behind it's own buffer in PLY loader.
Thanks @wolfgang for report and patch (http://irrlicht.sourceforge.net/forum/viewtopic.php?f=7&t=52627&p=305573#p305573)


git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@6113 dfc29bdd-3216-0410-991c-e03cc46cb475
2020-06-10 21:21:57 +00:00
engineer_apple
2d67c2d92c Burningvideo: fix "Old HW Compatible blending" TextureLightMap2_Add
git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@6111 dfc29bdd-3216-0410-991c-e03cc46cb475
2020-05-30 13:58:37 +00:00
cutealien
13a232aa9b updateTriangles in CTriangleSelector can handle some broken meshes without crash now.
Before it crashed when index-count wasn't a multiple of 3, now it just doesn't create the last triangle then.

git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@6110 dfc29bdd-3216-0410-991c-e03cc46cb475
2020-05-26 13:01:02 +00:00
cutealien
9062ac91af ICursorControl::isVisible is now always returning the flag that was set in setVisible.
This changes the behaviour on Win32 somewhat when Windows returned a CURSOR_SUPPRESSED state (touch-screen input hiding cursor globally).
Previously we set IsVisible it to false when CURSOR_SUPPRESSED was set.
Also we handle the CURSOR_SUPPRESSED state slightly different now and still try to hide cursors once when requested.
Reason for the change is that the old behaviour made it harder to recover from touch-screens hiding the cursor because Irrlicht didn't
know anymore which state is _should_ have. This also unifies the behaviour on all drivers as the other drivers already returned the visible
flag independent of the system being able to actually show the cursor.


git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@6109 dfc29bdd-3216-0410-991c-e03cc46cb475
2020-05-05 13:19:42 +00:00
cutealien
780eec5363 Improvements to B3D writer for speed, readability and handling of low framerate animations.
Thanks @JLouisB for the patch (For more info, see: http://irrlicht.sourceforge.net/forum/viewtopic.php?f=2&t=50067&start=15)

git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@6108 dfc29bdd-3216-0410-991c-e03cc46cb475
2020-04-27 20:52:21 +00:00
cutealien
a67b616fc9 Add another render pass ESNRP_GUI which is drawn last and is p.E. useful for rendering gui nodes in the scenemanager.
UI and scenenodes are often connected. And while it was possible to work around this already by using custom draw functions
or deriving from gui and scene-nodes at the same time, it did already lead a few times to uglier code for me. 
So I guess adding one more pass to the engine has it's uses.

git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@6107 dfc29bdd-3216-0410-991c-e03cc46cb475
2020-03-30 16:04:53 +00:00
engineer_apple
bca8023261 CSoftwareDriver2: Normalmap like Irrlicht. Lightpos in vertex space
CSoftwareTexture2: Tweaking (guessing linear Image)
CBlit.h: allow mirror image (SuperTuxKart)

git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@6105 dfc29bdd-3216-0410-991c-e03cc46cb475
2020-03-01 22:33:55 +00:00
engineer_apple
f74abf1d2b burning: GL_FOG_COORDINATE_SOURCE ,GL_FRAGMENT_DEPTH -> abs(EyeSpace.vertex.z)
git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@6104 dfc29bdd-3216-0410-991c-e03cc46cb475
2020-03-01 16:19:03 +00:00
cutealien
ae64a8ef22 Fix c::b project file.
Adding the new burnings files.


git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@6103 dfc29bdd-3216-0410-991c-e03cc46cb475
2020-02-29 14:45:18 +00:00
engineer_apple
92f3d266a0 removed OriginalFormat from CSoftwareTexture2, because ITexture has OriginalColorFormat;
git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@6102 dfc29bdd-3216-0410-991c-e03cc46cb475
2020-02-29 01:13:48 +00:00
engineer_apple
704c9eec83 BurningVideo 0.51 - NormalMap
git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@6101 dfc29bdd-3216-0410-991c-e03cc46cb475
2020-02-27 00:17:46 +00:00
cutealien
725391bf50 Fix VS2010 project file.
git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@6100 dfc29bdd-3216-0410-991c-e03cc46cb475
2020-02-27 00:07:39 +00:00
engineer_apple
5bf308139c expf throws floating point underflow exception on every value in VS2017.
switch to IEEE-compatible type double exp

git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@6099 dfc29bdd-3216-0410-991c-e03cc46cb475
2020-02-23 14:15:53 +00:00
engineer_apple
f5362a658d burningvideo: regenerateMipMapLevels, allow mipmap upload
git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@6095 dfc29bdd-3216-0410-991c-e03cc46cb475
2020-02-23 02:23:10 +00:00
engineer_apple
0de51c3c3d removed warning for VisualStudio 2012
git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@6093 dfc29bdd-3216-0410-991c-e03cc46cb475
2020-02-22 22:54:23 +00:00
engineer_apple
a790b163ee remove source warnings
git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@6092 dfc29bdd-3216-0410-991c-e03cc46cb475
2020-02-22 22:09:48 +00:00
engineer_apple
6f8b0cef96 remove source warnings
git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@6091 dfc29bdd-3216-0410-991c-e03cc46cb475
2020-02-22 22:01:57 +00:00
engineer_apple
8554ec93f9 -burningvideo 0.5 revert
git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@6087 dfc29bdd-3216-0410-991c-e03cc46cb475
2020-02-22 20:51:59 +00:00
engineer_apple
86dd0cde26 - BurningVideo: 0.50
- 10 year anniversary update
  - Lighting model reworked. moved to eyespace like openGL. [Specular Highlights, Fog, Sphere/Reflection Map] 
  - increased internal s4DVertex to support 4 Textures and 4 Colors [switchable]
  - Textures are handled as sRGB during Mipmap Generation. More accurate, less visual disruption
  - 2D is drawn as 3D like hardware drivers. [switchable]. enables viewport scaling, material2D
  - Texture Spatial Resolution Limiting working. [lower memory consumption,SOFTWARE_DRIVER_2_TEXTURE_MAXSIZE]
  - SuperTuxKart 8.0.1 playable


git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@6086 dfc29bdd-3216-0410-991c-e03cc46cb475
2020-02-22 20:48:12 +00:00
cutealien
9c837aa41b Add more GlTextureParameter wrapper to COpenGLExtensionHandler
Sorry, just a hack to make it easier to work around Irrlicht :-(
Would be nice to have a general mechanism to load native gl functions in Irrlicht from apps...


git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@6074 dfc29bdd-3216-0410-991c-e03cc46cb475
2020-02-11 14:14:59 +00:00