All of the major engines are written in C++. I've tried Unreal, Unity and Godot. They all have their flaws. With Unreal and Godot those flaws are mainly the scripting languages BP and GDScript which one can get tired of quite easily, especially BP. You can of course use C++ for all your scripting but both engines strongly encourage you to use their scripting solution for a big chunk of your game. (Unity has a bunch of other issues and isn't source available, although C# is fairly pleasant to work with IMO).
There is definitely need for an OOP engine in Rust just as there is need for an ECS engine in Rust.