Pythonの日本語処理というか外部ライブラリの罠?

python-ogreのresourceパス追加時*1に日本語入りのパスを渡すと失敗するという現象が発生した。
最初OGREがマルチバイト対応してないのかと思ったらソースに直接書いた文字列リテラルでは問題なくロードできてしまった。
出力される寸前にoutputに出してみてもまったく同じ*2
 
失敗の原因は分かったのだが
wxWidgetのGenericDirCtrlコントロールが返すファイルパス文字列はUnicodeオブジェクトで
ソースコード直書きのファイルパス文字列はstrオブジェクトでした。
ただPython*3にはむしろここはUnicodeオブジェクトで渡した奴が成功すべきじゃないの?とか思うんだが
どうもpython-ogre*4はファイルパスをマルチバイトで渡してやらないと駄目みたい。
C++版のOGRE3Dの文字列扱いもOGRE_WCHARスイッチ付けてコンパイルすれば
ワイド文字扱いになるみたいだけどインストーラー版はそうでないんだろか。
 
その辺の裏取りしたわけでもなくそのようなOGRE3Dドキュメントを見たわけではないのでただの憶測なんだけど。

*1:Ogre::ResourceGroupManager::addResourceLocation

*2:Unicodeオブジェクトはprint時に暗黙変換かかるので同じように見えてただけだが

*3:チュートリアルでは口すっぱくUnicodeオブジェクト使えと言われる

*4:少なくともWindows版のインストーラーで入れた奴は