This app was mentioned in 9 comments, with an average of 1.56 upvotes
Turn on root in the developer settings and then get a DPI switcher app from the Play Store. I used Le DPI Changer because it claimed to work with Marshmallow, and it worked for me.
I've got a Oneplus X, which defaults at 480. One of the first things I did was run Le DPI Changer to set it down to 380.
Your app says I'm currently at 441 (nope), recommends I use 461 (lolnope), but the "custom" option has 380 ready to go - which I assume is picking up the Le DPI Changer setting.
I went through the build.prop and adb options as well and experienced the same issues (camera and scaling, respectively).
I eventually tried Le DPI Changer, and used the "edit build.prop" option to change my dpi to 400 (the regular "set dpi" option didn't seem to do anything for me).
As far as I can tell, the change it made to the build.prop is exactly the same as what I did manually (the only difference was that I had an extra blank line after ro.expect.recovery_id and another after ro.sf.lcd_density), but I was surprised to find that the camera worked normally afterwards.
Unfortunately, the app I tried (https://play.google.com/store/apps/details?id=me.nisarg.setdpi) on my LG Optimus Fuel didn't work so well, but that could be different for your phone. Each phone is rooted differently, so you will have to find a guide appropriate for yours.
I used Le DPI Changer because it specified that it works on Marshmallow and it worked for me. (requires root)
I should also mention that I used Le DPI Changer because it claimed to work with Marshmallow and it worked for me.
Try this - https://play.google.com/store/apps/details?id=me.nisarg.setdpi
I use it for cm13 and have used it on moto x
https://play.google.com/store/apps/details?id=me.nisarg.setdpi
I use this on CM13 and it should work if you've got root.