Skip to main content

Posts

Showing posts from July, 2015

CodeLite support for UE4 got upstream.

Hi fellows Today the CodeLite support for UE4 got upstream accessible for everyone. Well it is still in it's early implementation stage but it supports definetly the GNU/Linux, MacOSX and Windows platform. It might be still a bit rough on MacOSX and Windows platforms but well :D it can be improved.

New Health Pack for UE4Linux

Hi fellows One reason for the new update was the following issues: Reported Issue 1 Reported Issue 2 That happens when Slate tries to open an additional pop-up window on top of another pop-up window that has to be closed. The current implementation of revert focus to parent was causing the problem. Here a short explanation what was happening. The world of X11with all the variety of WM's ( W indow M anager)'s are not consistent. Usually a WM programmer will/should follow the guides the ICCCM dictates but well yeah, everyone interprets stuff different so as said not all WM's behave the same way. To make UE4 Editor Cross-WM I tried not to trust too much to the WM's behaviour even though it is said: don't mess with the WM and trust it. It's just not possible because Slate (UI System of UE4) is not compatible with the philosophy of the X11/WM world at all. So ignoring some WM stuff means most stuff has to be done manually and that one thing which causes

Relative Mouse Pointer Issue SDL2

Until now UE4 does not use the "real" relative mouse movement which SDL2 provides already in the version 2.0.4. That means SDL2 is calculating internal the rel. mouse movement and provides it via the SDL_MOUSEMOTION  event using xrel and yrel. Here some code fragments: SDL_MouseMotionEvent motionEvent = Event.motion; ... if(bUsingHighPrecisionMouseInput) {     MessageHandler->OnRawMouseMove(motionEvent.xrel, motionEvent.yrel); } else {      MessageHandler->OnMouseMove(); } As mentioned xrel and yrel are not using the XInput2 extension which causes to stop giving values when the cursor reaches the end of the window. Luckily SDL2 provides with 2.0.4 the real rel mouse movement with SDL_SetRelativeMouseMode(Enable ? SDL_TRUE : SDL_FALSE); The relative mouse movement stuff on windows/mac and linux is done in this method: void FLinuxApplication::SetHighPrecisionMouseMode( const bool Enable, const TSharedPtr< FGenericWindow >& InWindow ) {   ... } In tha