Commit Graph

62 Commits

Author SHA1 Message Date
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
cutealien
7b1ee6468d Added 'uint' GLSL uniform support.
Thanks @devsh for the patch.

git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@6073 dfc29bdd-3216-0410-991c-e03cc46cb475
2020-02-10 15:01:11 +00:00
cutealien
dbf03c296c Add support for handling non square matrix uniform types in GLSL
Thanks @devsh for the patch.

git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@6072 dfc29bdd-3216-0410-991c-e03cc46cb475
2020-02-10 14:24:26 +00:00
cutealien
7beeb3d3f8 Fix several OpenGL version checking comparisons and add glGetTexImage.
Thanks @devsh for the patch.


git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@6071 dfc29bdd-3216-0410-991c-e03cc46cb475
2020-02-10 14:08:59 +00:00
cutealien
5451a2a8a0 Switch to 32bit meshes in CPLYMeshFileLoader now at > 65536 vertices.
65536th vertex has index 65535 which is still fine, was going 1 too low in last commit.


git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@6053 dfc29bdd-3216-0410-991c-e03cc46cb475
2020-01-08 11:14:57 +00:00
cutealien
bc41211482 CPLYMeshFileLoader now switching to 32-bit meshbuffers when more than 65535 vertices instead of more than 65565.
Thanks @randomMesh for reporting (http://irrlicht.sourceforge.net/forum/viewtopic.php?f=7&t=52563)

git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@6052 dfc29bdd-3216-0410-991c-e03cc46cb475
2020-01-08 10:34:35 +00:00
cutealien
5db5cbadf5 Add another test for gl errors in debug.
git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@6048 dfc29bdd-3216-0410-991c-e03cc46cb475
2020-01-06 14:27:20 +00:00
cutealien
50f4bdecbe No longer try creating rtt's for compressed image formats
Those are not supported by any graphic card and we just end up with invalid textures.
Returning 0 now instead in addRenderTargetTexture for OpenGL and D3D9.

git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@6047 dfc29bdd-3216-0410-991c-e03cc46cb475
2020-01-06 14:05:26 +00:00
cutealien
83d368cef4 Replace compile-warnings for unsupported image formats in writers with a log message warning.
Having too many warnings makes it harder to see real warnings.
I know the idea to keep those around was to have them as reminder to work on those.
But going over the formats here - it just doesn't make sense in most cases.
And for the rest (like we could add converts from R8 or so) no-one is going to work on it until someone concretely needs it anyway. 


git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@6046 dfc29bdd-3216-0410-991c-e03cc46cb475
2020-01-06 11:54:57 +00:00
cutealien
985997a755 Avoid warning.
git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@6043 dfc29bdd-3216-0410-991c-e03cc46cb475
2020-01-04 18:51:01 +00:00
cutealien
f1a3995965 Add define IRR_CASE_IIMAGE_COMPRESSED_FORMAT to help getting rid of a few more warnings.
Unlikely we ever support conversions with compressed image format.
Define is a bit ugly I guess, but nicest way I could think off.
Can probably be used in some image writers as well, have to check which support/don't support compressed formats first.


git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@6042 dfc29bdd-3216-0410-991c-e03cc46cb475
2020-01-04 18:42:12 +00:00
cutealien
66b24bb745 Avoid some warnings and unnecessary (slow) check in CImage::setPixel/getPixel
git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@6041 dfc29bdd-3216-0410-991c-e03cc46cb475
2020-01-04 18:26:13 +00:00
cutealien
229c827870 Prevent some fallthrough warnings we got since gcc7 in aes
Interestingly those can be suppressed with simple comments.
Note that I didn't suppress those in zlib code yet as I'll check for updates for those libs before releasing (while we are pretty much stuck with this AES version unless we put in a lot more work).


git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@6040 dfc29bdd-3216-0410-991c-e03cc46cb475
2020-01-04 16:22:12 +00:00
cutealien
34d09f7c63 Fix: CMeshSceneNode and CAnimatedMeshSceneNode still used wrong material in OnRegisterSceneNode.
git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@6035 dfc29bdd-3216-0410-991c-e03cc46cb475
2020-01-03 16:22:55 +00:00