What is wrong with you guys Enterprise project HUGE WALLS!

I finally reach that top on my patience, I have been working for a while in project now, but for some reason my current particular project become very tough this time, but not for me or the project it self, because the engine,
This is my history:
I have to create a project (can’t talk about it) with some requirements:
1.- Volume recognition with microphones
2.- Matrix projection offset for some effects
3.- Multiple game pad controllers without split screen

ok, now lets have a long chat, for the first point I am able to do that for 1 microphone looking into the FVoiceModule, which was very easy, but PUM, someone hardcode the microphones for windows just to “1” , my solution, I rewrote the whole module with DirectSound, and now I have multi microphones. take that!!!

Now for projection matrix, I was following this thread: Howto modify the projection matrix - Programming & Scripting - Unreal Engine Forums, some kind guy posted his code, it does not work for 4.14.3., but I fixed and re posted again for the community, BUUUT once again was a pain in the ***, because someone in epic decided do all the matrices private, my solution I modify constant matrices values with the pointer access!, TAKE THATTT!!

but now my current problem, Long time ago a wrote a plugin for raw inputs, with directinput, so apparently this was solved long time ago, but o ****, once again, someone decided hardcore the number of devices to 1 for desktop, I am calling this function inside my custom device plugins: MessageHandler->OnControllerButtonPressed(EKeyArcadePad::getButtonIndex(i).GetFName(),i, false); or also with this: FSlateApplication::Get().OnControllerButtonPressed(EKeyArcadePad::getButtonIndex(i).GetFName(), i, false); in the past this works perfectly, but not now, I now is working UE_LOG(LogTemp, Log, TEXT(“Button Pressed! %s, Controller ID: %i”), *EKeyArcadePad::getButtonIndex(i).ToString(), i); its printing well my interation number through my controllers index, but never reach my custom input even inside my third person character. (player index 0 is always binded to keyboard for eveeer!!)

Seriously guys, I know its because my problems are not necessary for videogames in windows, but I do not understand why you set a whole studio in Montreal for enterprise, if you are building HUGE walls for that kind of development

BTW: I am very happy with the engine, but this kind of violence for the enterprise developer some time make me crazy

Hope somebody appreciate my words, and you guys decided remove that restrictions in a close future

Thank you for the feedback. I have shared this with our Enterprise team.


Good to know, meanwhile one of our blueprinters found a hacky walkaround, skipping the first player controller index 0, and create 2 more player controllers with their own gamepads, and possesing a new pawn manually,

Hi ZkarmaKun,
We are working on building a team in Montreal to help focus on enterprise (non-game) issues. You may not be aware, but we offer support for enterprise users now. I’m not saying that this particular problem is one that needs such support, but there may be other issues you run into where such support is useful to you. Of course, such support is not free, but it does exist and might save future frustration.

We’re looking at many ways to improve the enterprise experience in working with Unreal. We have big plans, but they will take some time to execute. We need a better mechanism for capturing feedback like yours, prioritizing it against all the feedback we get and then getting code changed. This all will happen over time. I hope you can be patient with us as we build it all out.


hi, thanks, glad to help with my feedback, I thing my current boss have that support for the company, he told me one time, something about enterprise, we are on Montreal too

Now related to my problem, It’s not a real problem at all, I can simple create a Interface, bind it into my characters and “Buoala”, but for me as developer it will a shame, because it is a hacky solution, I will do it, if I run it out of time, that is why I posted my complains here in unreal feedback in the first place, furthermore! apparently works if I uncheck the option skip assiggning gamepad to player 1 inside the project settings and use FSlateApplication, my custom plugin is working now, which is enough for me now!


For what it’s worth DirectSound is deprecated, and DirectInput is VERY deprecated. (Not as much deprecated as DirectPlay, but almost!)

You’re supposed to use Core Audio APIs, or perhaps XAudio2, for your sound needs on Windows.
You’re supposed to use XInput, or perhaps Raw Input, for your gamepad input needs on Windows.

hi jwatte, I use DirectSound because it is already implemented in the unreal source for windows (please take a look at into VoiceCaptureWindows.cpp even if you watch the line 128 you will see the horrible true), and I use directInput because I am using very old arcade gamepads, I know what you are talking about, even microsoft page said that it is not recommended now, but like I said before I am not building games, and I need fit special requirements